WSU-Software-Development-Club / WSU-Software-Development-Club/self-hosting

Add hot reload for frontend and backend

Open Beginner friendly
#2 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

good first issue
Dominant language
JavaScript
Stars
2
Forks
2
PR merge metrics
No merged PRs in 30d

Description

Why

Right now every code change requires rebuilding the containers. Mounting the source directories into the containers means edits show up in the browser immediately, which you'll want dozens of times a day.

Files to touch

  • docker-compose.yml
  • backend/Dockerfile (or the api service command)

Definition of done

  • ./backend is bind-mounted into the api container
  • ./frontend is bind-mounted into the web container (excluding node_modules)
  • uvicorn runs with --reload
  • Editing main.py or App.jsx shows up in the browser without restarting compose

Hints

Look at the volumes: key on a service. For the frontend, mount an anonymous volume over node_modules so the host copy doesn't shadow the container's.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in docker-compose.yml by inspecting the api and web services and their existing volumes and commands; check backend/Dockerfile if the api command is defined there. Add the requested source mounts, preserve the frontend node_modules volume, and enable uvicorn reload. Verify by editing backend/main.py and frontend/App.jsx while compose is running and confirming the browser updates without a restart.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, docker-compose, javascript, python
Domain
devops, full-stack
Issue type
Feature
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Active
Clarity
Clearly specified
Newbie friendliness
84/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.