This template is used for web development project that uses Django and React + Vite.js
Create a virtual environment first and make sure cookiecutter is installed
pip install cookiecutterRun cookiecutter against this repo's url:
cookiecutter https://github.com/UCL-ARC/django-react-cookiecutterThis will prompt the following configurations for your project:
Default values (applied when inputting enter):
"project_name": "My Django React App",
"project_slug": "my_django_react_app",
"author_name": "Your Name",
"email": "[email protected]",
"description": "Django + React template",
"use_docker": "y",
"frontend_package_manager": "npm",communication between backend and frontend is done via api routing.
# your_project_slug/urls.py
router = routers.DefaultRouter()
router.register(r'logins', views.LoginDetailView, 'logins')
urlpatterns = [
path('admin/', admin.site.urls),
path('api/', include(router.urls)),
]this will allow react to fetch information from api
WIP
To create and run the docker stack, you would first need to run npm install on the frontend, otherwise npm run dev would fail in the Dockerfiles:
$ cd <project_slug/frontend>
$ npm installYou can proceed to build and run the docker stack with:
$ docker compose up -d --builddocker compose up: Runs the services defined in docker-compose.yml--build: Forces a rebuild of the images before starting the containers, ensures any changes to the Dockerfiles or dependencies are applied.--detach(or-d): Runs the containers in the background (detached mode), so the terminal is not blocked by logs and you can continue using it.
WIP