The front end service for My Dev Space, an open source developer community to promote local hackathons, conferences, and meetups, mentoring, calls for speakers, and collaboration.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
What things you need to install the software (latest versions) and how to install them
- Docker - Used to build, ship, and run all services
- Node - Used to create a UI via React, manage frontend dependencies
The majority of code for this project is located in the src
folder. From there, the pages
folder contains React components which are responsible for rendering out full pages. The components
folder contains more React components, these are consumed by the Page components. The reducers
, selectors
and store
directories contain code responsible for state management. This app relies on Redux for state management. Finally, the utils
directory contains useful helper functions.
The following steps are required for first time setup. These steps will check out the repository, install the project dependencies, and the client dependencies needed for the React frontend and run the service on http://localhost
. Note http://localhost
will show a gateway error until the client has completed building (typically 1 minute for first time setup).
If you are using https://muxer.co.uk for loading events, you will need to install a CORS Chrome extension
git clone https://github.com/muxer-dev/muxer-client
cd muxer-client
npm install react-scripts -g
npm install react-app-rewired -g
npm install
docker-compose -f docker-compose-dev.yml up
And to tear down the local development stack, simply run:
docker-compose -f docker-compose-dev.yml down
Before you can work on this service, you will need to ensure that you have Docker installed on your machine.
docker-compose -f docker-compose-dev.yml run client npm install
docker-compose -f docker-compose-dev.yml run client npm start
docker-compose -f docker-compose-dev.yml run client npm run build
docker-compose -f docker-compose-dev.yml run client npm run test
docker-compose -f docker-compose-dev.yml run client npm run lint
Deployments to the staging and production environments require a PR to be opened against the staging/production branches; Upon successfully merging a PR into either branch; Travis CI will build, run, test, and deploy the changes to AWS ECS.
- React - Javascript client framework
- Flask - Python web framework
- Postgres - Relational Database Management System
- Docker - Build, run, and deploy services
- Swagger - Generate API documentation
- Nginx - high-performance HTTP server, reverse proxy
This project is licensed under the MIT License - see the LICENSE.md file for details
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.