Development Setup¶
Prerequisites¶
Before you begin, ensure you have the following installed:
- Node.js 20+ and npm
- Python 3.11+
- Git
- Docker Desktop (optional, for containerized development)
- uv (Python package manager)
Installation¶
1. Clone the Repository¶
2. Install Dependencies¶
Frontend Dependencies¶
Backend Dependencies¶
bash
Documentation Dependencies¶
bash
3. Environment Configuration¶
Create a .env file in the project root:
Edit .env with your configuration:
env
4. Pre-commit Hooks¶
Install pre-commit hooks for code quality:
Running the Application¶
Development Mode¶
Start all services:
This starts:
- Frontend: http://localhost:5173
- Backend: http://localhost:8000
Individual Services¶
Frontend Only¶
Backend Only¶
Documentation¶
Access at: http://127.0.0.1:8001
Docker Development¶
bash
Code Quality¶
Run Pre-commit Checks¶
bash
Format Code¶
Lint Code¶
Building for Production¶
Frontend¶
Backend¶
bash
Documentation Build¶
Docker Images¶
bash
Troubleshooting¶
Port Already in Use¶
Email Not Sending¶
- Verify Gmail App Password is correct
- Check
EMAIL_ADDRESSandEMAIL_PASSWORDin.env - Ensure 2FA is enabled on Gmail account
- Check backend logs for errors
Module Not Found¶
bash
Docker Issues¶
bash
IDE Setup¶
VS Code¶
Recommended extensions:
- ESLint
- Prettier
- Python
- Docker
- GitLens
Settings (.vscode/settings.json):
json
Next Steps¶
- Testing — unit tests, Playwright E2E, pytest, pre-commit hooks
- Architecture Overview — how frontend, backend, and Azure fit together
- API Endpoints — health check, contact form, CV download
Page history
| Field | Value |
|---|---|
| Last updated | 2026-03-20 |
Changelog
| Date | PRs | Summary |
|---|---|---|
| 2026-03-20 | #81 | Removed inline Testing section; added link to new testing.md page |
| 2026-03-10 | #66 | Initial local setup page created |