Database application to manage and view movie viewings at theaters, created as the result of a semester-long group project for CS 4400: Intro to Database Systems with Dr. Mark Moss. The application is composed of a PostgreSQL persistence layer, a Python Flask application layer, and a React-powered dashboard.
To run and develop the backend services locally, first make sure Docker Compose is installed and then run:
docker-compose up --build
To run and develop the frontend services locally, first ensure that both Node.js and a package manager of your choice (either Yarn or npm) are installed. Then, simply run:
cd app
yarn install
to download the neccessary dependencies (make sure to run npm install
if you are using npm).
Because the web application is built with create-react-app at its core, there are two options to preview the app while developing: a hot reload-enabled development server (recommended) and a minified app bundle.
yarn start
yarn build
yarn serve
- Netlify - Used to automatically deploy & generate previews for branches and pull requests. Deploy status is available at the Deploy page
- ESLint / Prettier - Used to enforce consistent code style across the frontend codebase & to catch errors
- Flake8 - Used to enforce consistent code style across the backend codebase & to catch errors
- UptimeRobot - Used to track uptime and notify upon outage for the website and the API
- DockerHub - Used to host both the application layer image and the persistence layer image
- Github Actions - Used to automatically build & lint both the front and back ends, as well as to push the backend containers to DockerHub
Our team for CS 4400 consisted of the following members:
- Joseph Azevedo (jazevedo620)
- Jonathan Buchanan (johnyburd)
- Bhanu Garg (unahb)
- Lucas Zhang (LucasZhang58)