Skip to content

Latest commit

Β 

History

History
124 lines (82 loc) Β· 2.78 KB

File metadata and controls

124 lines (82 loc) Β· 2.78 KB

πŸ† TypeCup

TypeCup is an open-source typing speed game and web application designed to help users improve their typing skills in a competitive, fun, and interactive environment.

🌐 Live Demo: http://typecup.ir
πŸ“¦ Repository: https://github.com/Ari23yan/typecup-app


✨ Key Features

  • ⚑ Real-time Typing Race – Measure WPM (Words Per Minute) and accuracy instantly.
  • 🎨 Modern UI/UX – Clean, responsive interface built with React.
  • πŸ› οΈ Full-Stack Architecture – Backend with Express.js and frontend with React + Vite.
  • πŸ”“ Open Source – Anyone can contribute, fork, and improve the project.
  • πŸ“Š Performance Metrics – Track typing speed and progress.

🧱 Tech Stack

Role Technology
Frontend React, Vite, JavaScript
Backend API Node.js, Express.js
Development ESLint, npm, Git
Environment .env configuration

πŸ“‚ Project Structure

typecup-app/

β”œβ”€β”€ backend/ # Express.js server and API routes

β”œβ”€β”€ src/ # React frontend source code

β”‚ β”œβ”€β”€ components/ # Reusable UI components

β”‚ β”œβ”€β”€ pages/ # Page-level components

β”‚ β”œβ”€β”€ styles/ # CSS modules or global styles

β”‚ └── utils/ # Helper functions

β”œβ”€β”€ public/ # Static assets (images, favicon, etc.)

β”œβ”€β”€ .env # Environment variables (not committed)

β”œβ”€β”€ .gitignore # Git ignored files

β”œβ”€β”€ eslint.config.js # ESLint configuration

β”œβ”€β”€ index.html # Main HTML entry

β”œβ”€β”€ package.json # Dependencies and scripts

β”œβ”€β”€ vite.config.js # Vite configuration

└── README.md # Project documentation


πŸš€ Getting Started (Local Development)

Follow these steps to run the project locally.

1. Clone the repository

git clone https://github.com/YOUR_USERNAME/typecup-app.git
cd typecup-app

2. Install dependencies

npm install

3. Configure environment variables

Create a .env file in the root directory:

VITE_API_URL=http://localhost:5000
PORT=5000

4. Run the development server

npm run dev

By default the app will be available at: http://localhost:5173

🀝 Contributing Contributions, issues, and feature requests are welcome.

How to contribute Fork the repository.

Create a new branch:

git checkout -b feature/amazing-feature

Commit your changes:

git commit -m "Add some amazing feature"

Push to the branch:

git push origin feature/amazing-feature

You are free to use, modify, and distribute it with proper credit.

πŸ™ Acknowledgements Inspired by classic typing games and the open-source community.

πŸ“¬ Contact If you have questions or suggestions, open an issue on GitHub.

Built with ❀️ using React, Node.js, Express, and Vite.

Happy Typing! 🎯