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:
@@ -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
|
||||
```
|
||||
Reference in New Issue
Block a user