API with high performance to create a simple blog and Auth using OAuth2 ⛏
API with high performance built with FastAPI & SQLAlchemy, help to improve connection with your Backend Side to create a simple blog and Cruds with OAuth2PasswordBearer ⛏
# clone the repo
$ git clone https://github.com/yezz123/DogeAPI
# move to the project folder
$ cd DogeAPI
# creating virtual environment
$ virtualenv venv
# activate virtual environment
$ source venv/bin/activate
# install all dependencies
$ pip install -r requirements.txt
# Running the application using uvicorn
$ uvicorn main:app --reload
SECRET_KEY
: A secret key for signing Json Web Token.DATABASE_URL
: The database url to connect to the database.ACCESS_TOKEN_EXPIRE_MINUTES
: The access token expire minutes.change all the environment variables in the
.env.sample
and don't forget to rename it to.env
.
blogs
and users
Makefile
tor run the Docker Compose:# Pull the latest image
$ make pull
# Build the image
$ make build
# Run the container
$ make start
Includes preconfigured packages to kick start DogeAPI by just setting appropriate configuration.
Package | Usage |
---|---|
uvicorn | a lightning-fast ASGI server implementation, using uvloop and httptools. |
Python-Jose | a JavaScript Object Signing and Encryption implementation in Python. |
SQLAlchemy | is the Python SQL toolkit and Object Relational Mapper that gives application developers the full power and flexibility of SQL. |
starlette | a lightweight ASGI framework/toolkit, which is ideal for building high performance asyncio services. |
passlib | a password hashing library for Python 2 & 3, which provides cross-platform implementations of over 30 password hashing algorithms |
bcrypt | Good password hashing for your software and your servers. |
python-multipart | streaming multipart parser for Python. |
yapf
packages for linting and formatting
This project is licensed under the terms of the MIT license.