feat: Update README.md with authentication, user management, and audit logging details

This commit is contained in:
2025-10-02 19:35:31 +02:00
parent 79238dd643
commit f4b30c0faf

View File

@@ -32,13 +32,37 @@ A comprehensive project management system built with Next.js for managing constr
- Task completion tracking
- Quick access to pending items
### 🔐 Authentication & Authorization
- Complete user authentication system with NextAuth.js
- Role-based access control (Admin, User, Guest roles)
- Secure session management
- Password-based authentication
- User registration and management
### 👥 User Management
- Admin interface for user administration
- Create, edit, and delete user accounts
- Role assignment and permission management
- User activity monitoring
### 📋 Audit Logging
- Comprehensive logging of all user actions
- Security event tracking
- System activity monitoring
- Audit trail for compliance and debugging
## Tech Stack
- **Framework**: Next.js 15.1.8
- **Database**: SQLite with better-sqlite3
- **Authentication**: NextAuth.js
- **Styling**: Tailwind CSS
- **Date Handling**: date-fns
- **Frontend**: React 19
- **Mapping**: Leaflet with React-Leaflet
- **Container**: Docker & Docker Compose
## Getting Started
@@ -95,6 +119,16 @@ docker-compose up
The application uses SQLite database which will be automatically initialized on first run. The database file is located at `data/database.sqlite`.
### Admin Setup
To create an initial admin user:
```bash
npm run create-admin
```
This will create an admin user account. Access the admin panel at `/admin/users` to manage users and roles.
## Project Structure
```
@@ -219,12 +253,25 @@ The application uses the following main tables:
## Advanced Map Features
This project includes a powerful map system for project locations, supporting multiple dynamic base layers:
This project includes a powerful map system for project locations, supporting multiple dynamic base layers and transparent overlays:
### Base Layers (8 total)
- **OpenStreetMap** (default street map)
- **Polish Geoportal Orthophoto** (aerial imagery via WMTS)
- **Polish Land Records** (WMS cadastral data)
- **Satellite (Esri)** and **Topographic** layers
- **🇵🇱 Polish Orthophoto (Standard Resolution)** - WMTS aerial imagery
- **🇵🇱 Polish Orthophoto (High Resolution)** - WMTS high-res aerial imagery
- **🌍 Google Satellite** - Global satellite imagery
- **🌍 Google Hybrid** - Satellite imagery with road overlays
- **🌍 Google Roads** - Google Maps road view
- **Satellite (Esri)** - Alternative satellite imagery
- **Topographic** - CartoDB topographic maps
### Overlay Layers (6 total with transparency)
- **📋 Polish Cadastral Data** (WMS, property boundaries - 80% opacity)
- **🏗️ Polish Spatial Planning** (WMS, zoning data - 70% opacity)
- **🛣️ LP-Portal Roads** (WMS, road network - 90% opacity)
- **🏷️ LP-Portal Street Names** (WMS, street labels - 100% opacity)
- **📐 LP-Portal Parcels** (WMS, property parcels - 60% opacity)
- **📍 LP-Portal Survey Markers** (WMS, survey points - 80% opacity)
Users can switch layers using the map control (📚 icon). WMTS/WMS layers are configured dynamically using OGC GetCapabilities, making it easy to add new sources. See [`docs/MAP_LAYERS.md`](docs/MAP_LAYERS.md) for details on adding and configuring map layers.