14a32bdc0d
- Unified monorepo with backend (Express), frontend (Next.js), and devops - Backend: ESLint, Prettier, Jest tests (3 passing), health endpoint, .env.example - Frontend: Fixed build errors, fixed all lint errors (0 remaining), tests passing - DevOps: Docker Compose with PostgreSQL, backend, frontend + healthchecks - CI/CD: 3 GitHub Actions workflows (backend, frontend, docker integration) - DX: Husky pre-commit hooks with smart change detection - Docs: Root README with architecture, CONTRIBUTING.md, PR template Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
53 lines
1.3 KiB
Markdown
53 lines
1.3 KiB
Markdown
# Website Monitoring Platform
|
|
|
|
This project is a modern website monitoring platform built with Next.js (App Router) for the frontend and a Dockerized Express-based Lighthouse scan worker for performance, SEO, and accessibility analysis.
|
|
|
|
## Features
|
|
|
|
- Add and manage websites in a dashboard
|
|
- Trigger Lighthouse scans for any website via a button in the dashboard
|
|
- View scan results directly in the frontend
|
|
- Local development with Docker for the scan worker (Chromium included)
|
|
- Modular architecture for future automation, cron jobs, and database integration
|
|
|
|
---
|
|
|
|
## Getting Started
|
|
|
|
### Prerequisites
|
|
|
|
- [Node.js](https://nodejs.org/) (for the frontend)
|
|
- [Docker](https://www.docker.com/) (for the scan worker)
|
|
- [npm](https://www.npmjs.com/) or [pnpm](https://pnpm.io/) (for dependency management)
|
|
|
|
---
|
|
|
|
### 1. Install Dependencies
|
|
|
|
```bash
|
|
cd website-monitoring-frontend
|
|
npm install
|
|
```
|
|
|
|
### 2. Start the Lighthouse Scan Worker (Docker)
|
|
|
|
Build and run the scan worker container (from the project root):
|
|
|
|
```bash
|
|
docker-compose up --build scan-worker
|
|
```
|
|
|
|
This will:
|
|
|
|
- Build the worker image (installs Node.js dependencies and Chromium)
|
|
- Start the Express server on port 5001 inside the container
|
|
|
|
### 3. Start the Next.js Frontend
|
|
|
|
In a separate terminal:
|
|
|
|
```bash
|
|
cd website-monitoring-frontend
|
|
npm run dev
|
|
```
|