Skip to content

kosyachniy/web

Repository files navigation

Template full stack application

.github/workflows/deploy.yml

Description

Web-app on JS with Python JSON-RPC API

Form Side Stack Language Path
API Back-end FastAPI Python api/
Web app Front-end React JavaScript web/
Telegram bot Back-end AIOGram Python tg/
iOS Front-end React Native JavaScript planned
Android Front-end React Native JavaScript planned

Stack

Side Logo Technology Version
DevOps Docker Docker 20.10.21
NGINX NGINX 1.23
Let's Encrypt Let's Encrypt
Grafana Grafana 9.2.5
Prometheus 2.40.1
Back-end Python Python 3.10
FastAPI FastAPI 0.87
MongoDB MongoDB 6.0
Redis Redis 7.0
Socket.IO Socket.IO
Front-end JavaScript node 19.1
ReactJS ReactJS 18.2
Next.js 13.0.3
Redux Redux 4.2
Bootstrap Bootstrap 5.2.1
CKEditor CKEditor 5

Run

Before starting, you can learn how to configure the server →

local prod
1. Configure .env from base.env and add:
# Type
# LOCAL / TEST / DEV / PRE / PROD
MODE=LOCAL

# Links PROTOCOL=http EXTERNAL_HOST=localhost EXTERNAL_PORT=80 DATA_PATH=./data

1. Configure .env from base.env and add:
# Type
# LOCAL / TEST / DEV / PRE / PROD
MODE=PROD

# Links PROTOCOL=https EXTERNAL_HOST=web.kosyachniy.com WEB_PORT=8201 API_PORT=8202 JOBS_PORT=8203 TG_PORT=8204 DB_PORT=8205 REDIS_PORT=8206 PROMETHEUS_PORT=8207 GRAFANA_PORT=8208 DATA_PATH=~/web/data # or change to global path, for example: ~/data/web

2. make dev 2. make base
make run
3. Open http://localhost/ 3. Open https://web.kosyachniy.com/ (your link)