This is a learning webserver application for a user blogging platform. It will be built with fastApi, SQL-Alchemeny(SQLlite), Redis and graphene. It will have three layers. The storage layer that will store\cache all the platform data, service layer that will allow us to implement the system requirements\logic, and API layer that will allow external programs to commincate with the system.
# Python version: 3.9.0
"MINGW64 - bash terminal"
# Run command in directory you will be working from.
$ : git clone https://github.com/Skhendle/Blogger-Block.git
$ : cd Blogger-Block
To create virtual environment.
$ Blogger-Block : python -m venv env
# To activate virtual environment
# Windows
$ Blogger-Block : source ".\env\Scripts\activate"
# Ubuntu
$ Blogger-Block : source ./env/bin/activate
# To install the requirements run
$ Blogger-Block : pip install -r requirements.txt
# To update requirements.txt after installing new package
$ Blogger-Block\app : pip freeze > requirements.txt
# To run the application use the following command
$ Blogger-Block : uvicorn app.main:app --reload
# To run a service of the application use the following command
$ Blogger-Block : uvicorn app.'service name'.main:app --reload
# E.g
$ Blogger-Block : uvicorn app.b_register.main:app --reload
# To deactivate virtual enviroment
$ Blogger-Block : deactivate
- {server url}/docs
- {server url}/redoc
- Describes how to setup a package that implements a system requirement for the application. Specifies the file name, what the file contains and how it is used
[x] input.py - Contains pyndatic classes, that are used as parameters for API functions and services class.
[x] route.py - Contains the API function with the url describing its service path, states its Protocol( POST, GET, DELETE or UPDATE) and calls for the service to be executed
[x] service.py - Where the logic for a system requirement is executed
[x] main.py - Allows us to run a service independently independently