chesm.xyz
This project is loosely based on the Zoopla website - with ability for users to
search for and view properties and agents, register an account to save properties,
and for agents to upload properties.
The project uses an Express API connected
to a MongoDB database containing property data, and a MySQL database
containing user data, a React frontend, an AWS S3 bucket to store uploaded
photos and provide custom URLs for viewing photos, and Mapbox to display
maps. The project uses Nginx both to serve static React files and as a reverse
proxy in order to connect to the API from the frontend. The project runs
inside docker containers and stores JWT tokens as cookies when users log
in and certbot to enable HTTPS.