Welcome to the shopDEV-python repository. This is a backend service for an e-commerce platform, designed with best practices in mind to provide a robust and scalable service.
These instructions will get your copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
Before you begin, ensure you have the following installed:
- Python 3.8+
- pip (Python package installer)
- MongoDB
A step-by-step series of examples that tell you how to get a development environment running.
- Install requirements.txt
Navigate to the project directory and run:
pip install -r requirements.txt
This command will install all the necessary Python packages listed in requirements.txt
.
- Setup MongoDB on Linux
Ensure that MongoDB is installed and running on your system. If not, follow the official MongoDB documentation to set it up: MongoDB Installation Guide.
- Environment Variables
Create a .env
file in the root directory of the project and add the following line:
MONGO_CONNECTION_STRING=mongodb://localhost:27017/shopDEV
Adjust the connection string if you have a different configuration.
- Run the Application
To start the server, navigate to the project directory and run: (I'm using Python 3.10.12)
python3 server.py
The server should start, and you'll be able to access the API at http://localhost:3055
.
find ./ -type d -name "pycache" -exec rm -r {} ;
Explain how to run the automated tests for this system (if available).
Add additional notes about how to deploy this on a live system.
- FastAPI - The web framework used
- Motor - The asynchronous MongoDB driver for Python
- Pydantic - Data validation and settings management using Python type annotations
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
We use SemVer for versioning. For the versions available, see the tags on this repository.
- Le Thanh Son - Initial work - lethanhson9901
See also the list of contributors who participated in this project.
This project is licensed under the MIT License - see the LICENSE.md file for details
- Hat tip to anyone whose code was used
- Inspiration
- etc