A web application designed to help users learn foreign words through a fun and engaging quiz game. The game identifies the words users are unfamiliar with and helps them improve their vocabulary over time.
- Interactive Quiz Game: Test your knowledge of foreign words and track your progress.
- Personalized Learning: The system identifies and highlights words the user does not know.
- User-friendly Interface: Powered by Bootstrap for a modern and responsive design.
- RESTful API: Built with Django Rest Framework (DRF) for seamless integration and scalability.
- Backend: Python, Django, Django Rest Framework (DRF)
- Frontend: Bootstrap
- Database: PostgreSQL
- Deployment: Railway.app
- Python 3.10 or later
- PostgreSQL
- Railway account (optional, for deployment)
-
Clone the Repository:
git clone https://github.com/grenkoff/guess-wrong.git cd guess-wrong -
Set Up Virtual Environment:
python -m venv .venv source .venv/bin/activate # On Windows: venv\Scripts\activate
-
Install Dependencies:
pip install -r requirements.txt
-
Configure Environment Variables: Create a
.envfile in the project root with the following variables:SECRET_KEY=your_secret_key DEBUG=True DATABASE_URL=postgres://user:password@localhost:5432/yourdatabase
-
Apply Migrations:
python manage.py migrate
-
Run the Server:
python manage.py runserver
The application will be available at
http://127.0.0.1:8000.
-
Sign Up/Log In: Create an account or log in to Railway.app.
-
Create a New Project:
- Link your GitHub repository.
- Add environment variables in the Railway dashboard (e.g.,
SECRET_KEY,DATABASE_URL).
-
Deploy: Railway will automatically build and deploy your project.
- Visit the homepage to start the quiz.
- Answer the questions to test your vocabulary.
- View your progress and focus on improving the words you struggle with.
- Fork the repository.
- Create a new branch:
git checkout -b feature-name
- Make your changes and commit them:
git commit -m "Add feature-name" - Push the changes:
git push origin feature-name
- Open a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.