This is a simple web application built with Flask that allows you to test and improve your typing speed. It provides you with random sentences to type, calculates your typing speed (words per minute - WPM),
Are you looking to improve your typing skills or test your typing speed? This project is a fun way to do just that. It helps you practice typing with randomly generated sentences and provides instant feedback on your performance. Whether you're a student, a writer, or anyone who uses a keyboard, enhancing your typing speed is always beneficial.
Python
Flask
HTML/CSS
JavaScript
Jinja2
- Clone the repository to your local machine.
- Install Flask if you haven't already by running
pip install Flask
in your terminal. - Run the application by executing
python app.py
in your terminal. - Open your web browser and navigate to
http://localhost:5000
. - Start typing the sentence displayed on the screen as fast and accurately as possible.
- Once you've finished typing, your typing speed in WPM will be calculated and displayed.
- Randomly generated sentences for typing practice.
- Real-time calculation of your typing speed (WPM).
- User-friendly and responsive web interface.
Author: Shreya Malogi
This project is licensed under the MIT License - see the LICENSE file for details.
MIT License
Copyright (c) 2023 Shreya Malogi
Found a bug or have a feature request? Open an issue or fork the project and submit a pull request. Your contributions are always welcome!
If you find this project useful, please consider giving it a star on GitHub to show your support. Thank you!
To deploy a Flask application on AWS Elastic Beanstalk, you will need to configure your project properly. Here's a general outline of the steps to set up your Flask application for deployment on Elastic Beanstalk:
-
Create a Flask Application: Ensure you have a Flask application that is working correctly on your local machine.
-
Project Structure: Make sure your project structure is organized. A basic structure might look like this:
your_project/ ├── application.py # Your Flask app's entry point ├── requirements.txt # List of required packages ├── .ebextensions/ # Optional: Elastic Beanstalk configuration files ├── static/ # Folder for static files (CSS, JavaScript, images) ├── templates/ # Folder for HTML templates └── ...
-
requirements.txt
: Create or update yourrequirements.txt
file to include all the dependencies needed for your Flask application, including Flask itself. You can generate this file usingpip freeze
:pip freeze > requirements.txt
-
AWS Elastic Beanstalk Configuration: Elastic Beanstalk uses a
config.yml
or.ebextensions/
folder to define its configuration. You can use these to specify various settings for your application, like environment variables, database connections, and more.Here's a sample
.ebextensions
configuration for a basic Flask app:option_settings: aws:elasticbeanstalk:container:python: WSGIPath: application:app
In this example,
application
is the name of your Flask application file, andapp
is the Flask instance within it. -
Create an Elastic Beanstalk Application: Create an Elastic Beanstalk application using the AWS Management Console or AWS CLI.
-
Upload Your Code: Upload your project code (including the
requirements.txt
file) to Elastic Beanstalk either via the AWS Management Console or the AWS CLI. -
Environment Configuration: Configure your environment settings using the AWS Management Console or the AWS CLI. This includes setting environment variables, instance type, scaling, and other options.
-
Deploy Your Application: Deploy your application to Elastic Beanstalk using the AWS Management Console or the AWS CLI.
-
Access Your Application: Once the deployment is complete, you can access your Flask application via the Elastic Beanstalk URL provided.
-
Monitoring and Scaling: Monitor your application's performance and set up auto-scaling and other AWS services as needed.