This is a set up so that we can easily create apps that use Django on the backend (and take advantage of the amazing admin UI) and React (set up with create-react-app
) for the front end application.
- Make your edits in
backend/
orfrontend/
make dev
- There should now be two servers running:
- http://127.0.0.1:8000 is the Django backend app
- http://127.0.0.1:3000 is the React frontend app
make test
- This will build testing images and run
manage.py test ...
against a list of test targets
docker-compose pull
docker-compose up
- There should now be two servers running:
- http://127.0.0.1:8000 is the Django backend app
- http://127.0.0.1:3000 is the React frontend app
For some people (namely frontend team and people with older laptops), you may wish to use an external dev site for the backend. To do this, follow these steps:
cd
intoismp/frontend
echo 'REACT_APP_API_HOST="http://###.###.###.###:####/'" > .env
, where###.###.###.###:####
are the host and port to the backend dev sitedocker-compose up frontend
- Open your browser to
localhost:3000
to view your checkout of the frontend
If you run into any issues with missing packages while the frontend
container is running, you may need to clear the node_modules
volume and re-pull or re-deploy the environment:
- docker-compose down
- docker volume prune -f
- docker-compose pull richyen/ismp-frontend
- docker-compose up frontend
If you want to run a one-off command, like installing dependencies, you can use the docker-compose run <service_name> <cmd>
.
For example, to install a Javascript dependency and save that information to package.json
we could run:
docker-compose run --rm frontend npm install --save axios
If you want to be on a shell for one of the Docker services, you can do something like:
docker-compose run --rm frontend bash
- We will work with a fork-PR model. Please fork this repo and make your local edits, then submit a PR to get the changes merged
- Please try to write tests for your work. Be sure to run
make test
to confirm that your contributions are functional