A Restful API for managing an online store, built using the FastAPI framework.
- β Sign-up & Sign-in
- β Create and Customize your profile
- β Create, Update, Delete your own products
- β Create, Read, Delete your own orders
- β Update your own orders until it's paid
- β Search and filter products
- β Make and track your orders
- β Rate and review products
- β Get notifications about your orders
To know more about the project structure, check the structure.md file.
- Clone the repository
git clone https://github.com/wesleybertipaglia/store-api.git
- Initialize and Activate the virtual environment
Make init
source venv/bin/activate
- Install the dependencies and init the alembic
Make setup
- Run the application
Make run
π Open your browser and go to http://localhost:8000 to see the api in action.
All commands are run from the root of the project, from a terminal:
Command | Action |
---|---|
make init |
Initialize the virtual enviroment |
source venv/bin/activate |
Activate the virtual enviroment |
make setup |
Install dependencies and init the alembic |
make freeze |
Update the dependencies |
make run |
Starts the application |
make alembic-migrate |
Make an alembic migration |
make alembic-upgrade |
Make an alembic upgrade |
make alembic-downgrade |
Make an alembic downgrade |
To know more about the commands, check the commands.md file.
The API has the following endpoints:
/auth
: Sign-up and Sign-in/profile
: Read, Update, Delete/users
: Read/products
: Create, Read, Update, Delete/orders
: Create, Read, Update, Delete
To know more about the endpoints, check the endpoints.md file, or access the API documentation in the following URL: localhost:8000/docs
To know more about the tech stack, check the stack.md file.
The following checklist can be used to track the project progress:
- Authentication
- Authorization
- Documentation
- Tests
- Docker
- CI/CD
- Deploy
- Monitoring
This repository is licensed under the [MIT]. See the LICENSE file for details.