A modern, engaging tap timing game built with React and FastAPI. Test your reflexes and timing skills in this addictive game!
- ๐ฏ 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
Play the game at: Pulse Game
Created by Ron
- Portfolio: techwithron.co.in
- GitHub: [https://github.com/RonJo07]
- React 18.2.0
- Tailwind CSS 3.3.3
- Progressive Web App (PWA)
- Service Workers for offline support
- FastAPI 0.104.1
- Python 3.11
- Supabase for database
- RESTful API architecture
- Node.js (v14 or higher)
- Python 3.11
- npm or yarn
- Git
- Clone the repository:
git clone [pulse-game](https://github.com/yourusername/pulse-game.git)
cd pulse-game- Set up the frontend:
cd frontend
npm install
# or
yarn install- 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- 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
- Start the backend server:
cd backend
uvicorn server:app --reload- Start the frontend development server:
cd frontend
npm start
# or
yarn startThe application will be available at:
- Frontend: http://localhost:3000
- Backend API: http://localhost:8000
- Tap targets as they appear
- Score points based on timing accuracy
- Combo multiplier system
- Lives system with visual feedback
- Anonymous user tracking
- High score tracking
- Achievement system
- Dark/Light mode toggle
- Global leaderboard
- Achievement sharing
- Performance statistics
POST /api/users- Create new userGET /api/users/{user_id}- Get user details
POST /api/sessions- Create game sessionGET /api/sessions/{user_id}- Get user sessions
GET /api/leaderboard- Get global leaderboardPOST /api/leaderboard- Submit new score
- Secure API endpoints
- Environment variable protection
- Supabase authentication
- Rate limiting
- CORS protection
- Hot reloading
- Error boundaries
- Performance monitoring
- Service worker for offline support
- Responsive design
- Offline support
- Installable on devices
- Push notifications
- Background sync
- App-like experience
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- React team for the amazing framework
- FastAPI team for the powerful backend framework
- Supabase team for the database solution
- All contributors and supporters
For any queries or support, please reach out:
- Website: techwithron.co.in
- Email: [ronjomarch2024@gmail.com]
- LinkedIn: [https://www.linkedin.com/in/ron-jo-linkme]
Made with โค๏ธ by Ron