Skip to content

๐ŸŽฎ Pulse โ€“ A sleek tap timing game built with React, FastAPI, and Supabase. Features global leaderboards, achievements, dark/light mode, PWA support, and real-time analytics. Test your reflexes and climb the ranks!

Notifications You must be signed in to change notification settings

RonJo07/pulsezone

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

7 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŽฎ Pulse - A Tap Timing Game

A modern, engaging tap timing game built with React and FastAPI. Test your reflexes and timing skills in this addictive game!

React FastAPI Supabase Tailwind CSS

๐ŸŒŸ Features

  • ๐ŸŽฏ Precise tap timing gameplay
  • ๐Ÿ† Global leaderboard system
  • ๐Ÿ… Achievement system
  • ๐ŸŒ™ Dark/Light mode
  • ๐Ÿ“ฑ Progressive Web App (PWA) support
  • ๐ŸŽต Immersive sound effects
  • ๐Ÿ“Š Performance analytics
  • ๐Ÿ”’ Secure user authentication

๐Ÿš€ Live Demo

Play the game at: Pulse Game

๐Ÿ‘จโ€ Developer

Created by Ron

๐Ÿ› ๏ธ Tech Stack

Frontend

  • React 18.2.0
  • Tailwind CSS 3.3.3
  • Progressive Web App (PWA)
  • Service Workers for offline support

Backend

  • FastAPI 0.104.1
  • Python 3.11
  • Supabase for database
  • RESTful API architecture

๐Ÿ“‹ Prerequisites

  • Node.js (v14 or higher)
  • Python 3.11
  • npm or yarn
  • Git

๐Ÿš€ Installation

  1. Clone the repository:
git clone [pulse-game](https://github.com/yourusername/pulse-game.git)
cd pulse-game
  1. Set up the frontend:
cd frontend
npm install
# or
yarn install
  1. Set up the backend:
cd backend
python -m venv venv
# On Windows
venv\Scripts\activate
# On Unix or MacOS
source venv/bin/activate
pip install -r requirements.txt
  1. Configure environment variables:

Frontend (.env):

REACT_APP_SUPABASE_URL=your_supabase_project_url
REACT_APP_SUPABASE_ANON_KEY=your_supabase_anon_key
REACT_APP_API_URL=http://localhost:8000/api

Backend (.env):

SUPABASE_URL=your_supabase_project_url
SUPABASE_KEY=your_supabase_anon_key

๐ŸŽฎ Running the Application

  1. Start the backend server:
cd backend
uvicorn server:app --reload
  1. Start the frontend development server:
cd frontend
npm start
# or
yarn start

The application will be available at:

๐ŸŽฏ Game Features

Core Gameplay

  • Tap targets as they appear
  • Score points based on timing accuracy
  • Combo multiplier system
  • Lives system with visual feedback

User Features

  • Anonymous user tracking
  • High score tracking
  • Achievement system
  • Dark/Light mode toggle

Social Features

  • Global leaderboard
  • Achievement sharing
  • Performance statistics

๐ŸŽฏ API Endpoints

User Management

  • POST /api/users - Create new user
  • GET /api/users/{user_id} - Get user details

Game Sessions

  • POST /api/sessions - Create game session
  • GET /api/sessions/{user_id} - Get user sessions

Leaderboard

  • GET /api/leaderboard - Get global leaderboard
  • POST /api/leaderboard - Submit new score

๐Ÿ”’ Security Features

  • Secure API endpoints
  • Environment variable protection
  • Supabase authentication
  • Rate limiting
  • CORS protection

๐Ÿ› ๏ธ Development Features

  • Hot reloading
  • Error boundaries
  • Performance monitoring
  • Service worker for offline support
  • Responsive design

๐Ÿ“ฑ PWA Features

  • Offline support
  • Installable on devices
  • Push notifications
  • Background sync
  • App-like experience

๐Ÿค Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

๐Ÿ“ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐Ÿ™ Acknowledgments

  • React team for the amazing framework
  • FastAPI team for the powerful backend framework
  • Supabase team for the database solution
  • All contributors and supporters

๐Ÿ“ž Contact

For any queries or support, please reach out:


Made with โค๏ธ by Ron

About

๐ŸŽฎ Pulse โ€“ A sleek tap timing game built with React, FastAPI, and Supabase. Features global leaderboards, achievements, dark/light mode, PWA support, and real-time analytics. Test your reflexes and climb the ranks!

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published