We welcome contributions! Here's how to get started:
- Fork the Repository
- Create a Feature Branch:
git checkout -b feature/amazing-feature - Make Your Changes: Follow the existing code style
- Test Thoroughly: Ensure both light/dark themes work
- Submit a Pull Request: Describe your changes clearly
- Follow existing patterns for consistency
- Test on multiple screen sizes (mobile, tablet, desktop)
- Verify theme compatibility (light/dark modes)
- Update documentation for new features
- Add error handling for robust operation
You can use docker compose like building from source, or you can run the app directly with npm.
For local development with hot reloading:
# Backend
cd server
npm install
# Frontend
cd ../client
npm installCreate server/.env:
PORT=5000Create client/.env:
VITE_REACT_APP_API_URL=http://localhost:5000
VITE_OPENWEATHER_API_KEY=your_openweather_api_key_here# Terminal 1 - Backend
cd server
npm start
# Terminal 2 - Frontend
cd client
npm run devYou'll want to edit the env variable PORT and set it to 5001 since the client on port 3001 will look for a server existing on port 5001