Bars And Grills Save

A TypeScript/React web app to review restaurants along with a Python/Django REST API and React-Admin panel, hosted on AWS ECS (Fargate) as isolated docker containers, utilizing Route53, RDS (postgres), CodePipeline, and VPC design.

Project README

Bars and Grills (Restaurant App)

A sample web solution which allows users to review restaurants, featuring:

  • A multi-project React app for a responsive mobile-first frontend ("webapp"), and an admin-panel (React-Admin)
  • A Python/Django RESTful API running using a postgres database (on AWS RDS)
  • Amazon Web Services hosting components on Elastic Container Service
  • Continuous Integration (CI) using CircleCI and Continous Deployment (CD) using AWS CodePipeline

Project homepage: bng.damodar.dev
Frontend: app.bng.damodar.dev
Admin-Panel: admin.bng.damodar.dev (username: admin, password: i_like_bars_and_i_cannot_lie)
Django API: api.bng.damodar.dev (Swagger specs)
Source Code: on GitHub

React projects

  • A multi-project create-react-app for mobile-first frontend ("webapp"), and an admin-panel (React-Admin)
  • Responsive Material UI with pixel-perfect designs
  • Strong typing using TypeScript and eslint
  • React Hooks
  • The two projects hosted as isolated docker containers in ECS, both running using nginx

Django backend

  • Role based authentication using JWT for stateless paginated RESTful API calls
  • Hosted as isolated docker container in ECS with auto-scaling
  • Postgres database
  • Swagger specifications
  • Postman routes

AWS Cloud Architecture

BNG AWS Cloud Architecture diagram

  • Partially set up using Terraform (intending to migrate all config to Terraform)
  • CodePipeline to:
    • Automatically trigger build on pushing source code in CodeCommit
    • Build docker containers for webapp, admin-panel and api and push them to ECR
  • Elastic Container Service cluster (like Kubernetes)
  • All resources running on a private cloud (VPC) located in us-west-2 (Oregon)
  • Route53 domain zone for bng.damodar.dev
  • Certificates managed through ACM

License

Free and open source software (FOSS) licensed using the MIT License.

Contributors

This project was created by Damodar Dahal [email protected]. All pull requests and issues are welcome.

Open Source Agenda is not affiliated with "Bars And Grills" Project. README Source: damo-da/bars-and-grills
Stars
45
Open Issues
0
Last Commit
3 years ago
License
MIT

Open Source Agenda Badge

Open Source Agenda Rating