A web application for managing water treatment projects and weekly reports.
- React
- Next.js
- TypeScript
- TailwindCSS
- shadcn/ui
- Firebase (Hosting, Firestore, Authentication)
- Clone the repository:
git clone https://github.com/mattybj69/scidev-webapp.git
cd scidev-webapp- Install dependencies:
npm install- Create a
.env.localfile with your Firebase configuration:
NEXT_PUBLIC_FIREBASE_API_KEY=your_api_key
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_auth_domain
NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_project_id
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your_storage_bucket
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_messaging_sender_id
NEXT_PUBLIC_FIREBASE_APP_ID=your_app_id- Run the development server:
npm run dev- Open http://localhost:3000 in your browser.
npm run dev- Start development servernpm run build- Build for productionnpm run start- Start production servernpm run lint- Run ESLintnpm run type-check- Run TypeScript type checking
The application is automatically deployed to Firebase Hosting when changes are pushed to the main branch.
If you need to deploy manually:
firebase deployThe repository is set up with GitHub Actions to automatically deploy to Firebase Hosting:
- Pushes to
mainbranch trigger a deployment - Pull requests create preview deployments
- Environment variables are securely stored in GitHub Secrets
To set up automated deployments in a new environment:
- Generate a Firebase Service Account key from Firebase Console
- Add the required secrets to GitHub repository settings
- Push to main branch to trigger deployment
MIT