Python Assignment.
Python Assignment.
Objective:
Develop Flask-based APIs to handle user signup and sign-in functionalities. Create endpoints
for user registration, storing user data in a MySQL database, and authenticating users during
the sign-in process.
Requirements:
Signup API Endpoint:
● Implement an API endpoint (/signup) to receive username, email, and password
as input for user registration.
● Validate the input data received.
● Store user information securely in a MySQL database.
Sign In API Endpoint:
● Implement an API endpoint (/signin) to handle user login authentication.
● Receive username or email and password as input.
● Validate the user credentials against the stored data in the MySQL database.
● Return appropriate responses based on successful or failed login attempts.
MySQL Database Integration:
● Create a MySQL database to store user information (username, email, hashed
password).
● Establish a connection between the Flask application and the MySQL database.
● Ensure proper table structure for user data storage.
Postman Test and Documentation:
● Record a video showcasing the functionality of the developed APIs using
Postman. Include testing of signup and sign-in functionalities.
● Provide clear and detailed documentation on how to:
● Set up the Flask application locally.
● Configure and set up the MySQL database.
● Run and test the APIs using Postman or any similar tool.
Security Measures:
● Hash user passwords before storing them in the database.
● Implement secure communication for API endpoints.
Submission Guidelines:
● Submit the Flask project files with clear instructions on how to run the application locally.
● Include SQL scripts or instructions for setting up the MySQL database.
● Provide a video demonstrating the API functionality using Postman.
● Document the setup process and API usage in detail for easy understanding.
Note: Emphasize Flask, MySQL integration, security practices, and clear documentation of the
setup and usage of the APIs. The video demonstration in Postman will help showcase the
functionality of the developed endpoints
:
Develop Flask-based APIs to handle user signup and sign-in functionalities. Create endpoints
for user registration, storing user data in a MySQL database, and authenticating users during
the sign-in process.
Requirements:
Signup API Endpoint:
● Implement an API endpoint (/signup) to receive username, email, and password
as input for user registration.
● Validate the input data received.
● Store user information securely in a MySQL database.
Sign In API Endpoint:
● Implement an API endpoint (/signin) to handle user login authentication.
● Receive username or email and password as input.
● Validate the user credentials against the stored data in the MySQL database.
● Return appropriate responses based on successful or failed login attempts.
MySQL Database Integration:
● Create a MySQL database to store user information (username, email, hashed
password).
● Establish a connection between the Flask application and the MySQL database.
● Ensure proper table structure for user data storage.
Postman Test and Documentation:
● Record a video showcasing the functionality of the developed APIs using
Postman. Include testing of signup and sign-in functionalities.
● Provide clear and detailed documentation on how to:
● Set up the Flask application locally.
● Configure and set up the MySQL database.
● Run and test the APIs using Postman or any similar tool.
Security Measures:
● Hash user passwords before storing them in the database.
● Implement secure communication for API endpoints.
Submission Guidelines:
● Submit the Flask project files with clear instructions on how to run the application locally.
● Include SQL scripts or instructions for setting up the MySQL database.
● Provide a video demonstrating the API functionality using Postman.
● Document the setup process and API usage in detail for easy understanding.
Note: Emphasize Flask, MySQL integration, security practices, and clear documentation of the
setup and usage of the APIs. The video demonstration in Postman will help showcase the
functionality of the developed endpoints