refactor: flatten monorepo structure to backend/ frontend/ devops/

Rename subdirectories for a cleaner single-repo layout:
- website-monitoring-backend/  → backend/
- website-monitoring-frontend/ → frontend/
- website-monitoring-devops/   → devops/

Update all references in package.json scripts, CI workflows,
docker-compose, pre-commit hooks, and documentation.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
Dennis
2026-03-07 00:25:29 +01:00
parent 4607af8def
commit 50e25e3ee8
253 changed files with 54 additions and 51 deletions
+57
View File
@@ -0,0 +1,57 @@
# Website Monitoring Backend
Express.js API server that runs Google Lighthouse audits on websites and streams real-time progress via Server-Sent Events.
## Tech Stack
- **Runtime**: Node.js 18+
- **Framework**: Express.js
- **Language**: TypeScript
- **Auditing**: Google Lighthouse + Chrome Headless
- **Database**: PostgreSQL (via `pg`)
## Quick Start
```bash
cp .env.example .env
npm install
npm run build
npm start
```
## Scripts
| Script | Description |
|--------|-------------|
| `npm run build` | Compile TypeScript to `dist/` |
| `npm start` | Run the production server |
| `npm run dev` | Watch mode for development |
| `npm test` | Run Jest tests |
| `npm run test:coverage` | Run tests with coverage report |
| `npm run lint` | Run ESLint |
| `npm run format` | Format code with Prettier |
## API Endpoints
| Method | Path | Description |
|--------|------|-------------|
| `GET` | `/` | API info |
| `GET` | `/health` | Health check |
| `POST` | `/api/lighthouse` | Start Lighthouse audit (body: `{ "url": "https://example.com" }`) |
| `GET` | `/api/lighthouse/status/:id` | SSE stream for audit progress |
## Environment Variables
| Variable | Default | Description |
|----------|---------|-------------|
| `PORT` | `5000` | Server port |
| `DATABASE_URL` | — | PostgreSQL connection string |
| `CORS_ORIGIN` | `*` | Allowed CORS origin |
| `CHROME_PATH` | — | Path to Chrome binary (Docker) |
## Docker
```bash
docker build -t website-monitoring-backend .
docker run -p 5000:5000 website-monitoring-backend
```