Skip to content
This repository was archived by the owner on Feb 26, 2023. It is now read-only.

raed667/demo-project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

7163df4 · Jun 10, 2022

History

38 Commits
Jan 2, 2021
Jan 2, 2021
Mar 6, 2022
Mar 6, 2022
Mar 6, 2022
Jan 2, 2021
Jan 2, 2021
Jan 2, 2021
Jan 2, 2021
Jan 2, 2021
Mar 6, 2022
Jun 10, 2022
Jan 2, 2021
Jan 2, 2021
Mar 6, 2022

Repository files navigation

Demo-Project: Full-stack TypeScript Application

Status: On hold until refactor using Nest

backend backend-realtime frontend

chart

A demo project to showcase different technologies and how they work together. The ultimate goal is to have a full-stack, production-ready application.

ui

You can use the setup.sh script to run it locally.

asciicast

The goal for this project is to be a "domain driven" starter that will help you bootstrap a new application in seconds and just work your business logic instead of all the bootstrapping.

Inspired by ts-app, this project aims to be a little lighter version of that project, with clearer separation of frontend and backend code. And a bigger focus and metrics and monitoring.

Where do I start

You can start by running:

sh ./setup.sh

You can also start the project locally:

yarn dev

After you finish you can clean your setup with:

sh ./clean.sh

Status

Work in progress.

System Requirements

Technologies Used

Todo

A high-level list of

  • SQLite in dev
  • PG in docker
  • Redis for cache
  • Setup script
  • Setup initial DB data in a migration
  • Prometheus for metrics
  • Grafana for monitoring
  • Frontend: CRA for client
  • Frontend: validation using Yup, mui-rff
  • Cache redis on get /users query
  • Kafka producer for real-time events
  • Nginx for web-server
  • Kafka consumer for real-time events
  • Web-Socket
  • Start-up script
  • Refactor backend to use Nest
  • Refactor frontend to use Next (or remix)
  • Secure Nginx
  • Generate client from swagger.json
  • Deploy on a production environment (OVH, GCP, AWS..)

FOSSA Status