Files
panel/ROADMAP.md

19 KiB

eProjektant Wastpol - Development Roadmap

Last Updated: January 16, 2026
Version: 0.1.1
Status: Production-Ready Foundation


📊 Current Application Status

eProjektant Wastpol is a comprehensive, enterprise-grade project management system for construction and design projects. The application has evolved significantly and now includes production-ready features across all core areas.


Completed Features (v0.1.1)

Core Business Logic

  • Project Management - Full CRUD with lifecycle tracking (registered → in_progress → fulfilled)
  • Contract Management - Customer contracts with multi-project support
  • Task System - Template-based tasks, task sets, custom tasks per project
  • Task Sets - Pre-configured task groups for quick project setup
  • Contact Management - Full contact database with project relationships
  • Notes System - Project and task notes with markdown support, system-generated notes
  • File Attachments - Generic file system for contracts, projects, and tasks (10MB limit)

Advanced Features

  • Document Generation - DOCX template system with variable substitution
  • GIS Integration - Leaflet maps with 8 base layers and 6 overlay layers (Polish geoportal)
  • CardDAV Sync - Bi-directional contact sync with Radicale
  • Route Planning - Route optimization for project locations
  • Notification System - In-app notifications (6 types, 4 priority levels)
  • Field History Tracking - Audit trail for critical field changes
  • Automated Backups - Daily database backups (keeps last 30)
  • Due Date Reminders - Automated notifications 3 days and 1 day before deadlines
  • Excel Export - Projects export grouped by status
  • Cron Job Management - Admin interface for scheduled tasks

Security & Authentication

  • NextAuth.js v5 - Modern authentication with credentials provider
  • 5-Role System - Admin, Project Manager, Team Lead, User, Read Only
  • Account Security - Account lockout after 5 failed attempts (15-min lock)
  • Password Hashing - bcryptjs with salt
  • Session Management - Secure SQLite session store
  • Route Protection - Middleware-based authentication
  • API Authorization - Per-route auth middleware (withReadAuth, withUserAuth, withAdminAuth)
  • Password Reset Tokens - Database table ready (UI pending)
  • Audit Logging - Comprehensive tracking of all user actions
  • Input Validation - Zod schemas for all inputs
  • Failed Login Tracking - IP address and user agent logging

UI/UX

  • Dark/Light Theme - User-selectable with system preference detection
  • Responsive Design - Mobile-first, optimized for all screen sizes
  • 40+ Components - Reusable component library
  • Internationalization - Polish and English (1200+ translation keys)
  • Advanced Search - Real-time search with filters (status, type, customer, assigned user)
  • Loading States - Skeletons, spinners, progress indicators
  • Toast Notifications - Non-intrusive user feedback
  • Badge System - Color-coded status indicators
  • Modal Dialogs - Clean form interfaces
  • Drag & Drop - File upload with drag-and-drop

Infrastructure

  • Docker Deployment - Multi-stage builds with git-based deployment
  • SQLite Database - Auto-initializing with migration system
  • 60+ API Endpoints - RESTful API with consistent structure
  • Database Indexes - Performance optimization for common queries
  • Error Handling - Try-catch blocks with user-friendly messages
  • Environment Config - .env support for all configurations
  • Cron Integration - Linux cron for scheduled tasks
  • Volume Persistence - Data, uploads, templates, backups

Testing & Documentation

  • Testing Framework - Jest, Playwright, Testing Library configured
  • E2E Tests - Project workflow tests implemented
  • Comprehensive README - Full documentation with examples
  • API Documentation - Inline documentation in README
  • Code Structure Docs - Detailed project structure documentation

🎯 High Priority Features (Next 3 Months)

🔐 1. Enhanced Security (Weeks 1-2)

Status: Security foundations complete, need additional hardening
Completed: Authentication, Authorization, Audit Logging, Input Validation
Remaining:

  • CSRF protection middleware
  • Rate limiting for API endpoints (rate-limiter-flexible)
  • Security headers (helmet.js or custom middleware)
  • Sanitization for user-generated content (DOMPurify)
  • API key authentication for external integrations
  • Two-factor authentication (2FA) support

Estimated Time: 2 weeks
Impact: HIGH - Critical for production security


📊 2. Advanced Reporting & Analytics (Weeks 3-6)

Status: Libraries installed, basic stats done, need full UI
Completed: Recharts, jsPDF, ExcelJS, basic dashboard, Excel export
Remaining:

  • Interactive Gantt charts for project timelines
  • Budget vs. actual spend tracking and reports
  • Task completion analytics dashboard
  • Project performance metrics (on-time %, cost overruns)
  • Custom report builder with filters
  • PDF report generation with charts
  • Financial reports by contract/project
  • Resource utilization reports
  • Export to multiple formats (PDF, Excel, CSV)

Estimated Time: 3-4 weeks
Impact: HIGH - Core business need


📧 3. Email Integration (Weeks 7-8)

Status: Password reset table exists, no email sending
Completed: Password reset token schema
Remaining:

  • SMTP configuration (Nodemailer)
  • Email templates (HTML/Text)
  • Password reset flow UI
  • Email verification for new users
  • Project deadline reminders via email
  • Task assignment notifications via email
  • Daily/weekly digest emails
  • Email preferences per user
  • Email queue for bulk sending

Estimated Time: 2 weeks
Impact: HIGH - Essential for user management and notifications


📱 4. Progressive Web App (PWA) (Weeks 9-10)

Status: Responsive design complete, no PWA features
Completed: Responsive UI, mobile-optimized
Remaining:

  • Service worker implementation
  • App manifest (manifest.json)
  • Offline functionality for viewing data
  • Install prompt for mobile devices
  • Push notification support (optional)
  • Offline data sync strategy
  • App icons for different platforms

Estimated Time: 2 weeks
Impact: MEDIUM - Enhances mobile experience


🚀 Medium Priority Features (Months 4-6)

🔗 5. External Integrations & API

Status: Internal API complete, no external integrations
Remaining:

  • REST API documentation (Swagger/OpenAPI)
  • API versioning (/api/v1/)
  • Webhook system for external notifications
  • Integration with accounting software (optional)
  • Integration with CRM systems (optional)
  • OAuth2 provider for third-party apps
  • API rate limiting per client
  • API key management UI

Estimated Time: 3-4 weeks
Impact: MEDIUM - Expands system capabilities


📋 6. Enhanced Project Management

Status: Basic tracking complete, missing advanced features
Completed: Basic project CRUD, task tracking, status management
Remaining:

  • Gantt chart visualization (react-gantt-timeline or similar)
  • Project dependencies and critical path
  • Milestone tracking with visual timeline
  • Resource allocation and workload management
  • Project templates (save project as template)
  • Budget tracking per project with variance analysis
  • Time tracking for tasks
  • Project cloning functionality
  • Bulk operations (status updates, assignments)

Estimated Time: 4-5 weeks
Impact: MEDIUM - Professional project management features


7. Performance & Scalability

Status: Good for current load, optimization needed for scale
Completed: Database indexes on key fields
Remaining:

  • Redis caching layer for sessions and frequent queries
  • Image optimization and lazy loading
  • Virtual scrolling for large lists
  • Pagination for all list views
  • Database query optimization analysis
  • Background job processing (Bull/BullMQ)
  • CDN integration for static assets
  • Database connection pooling
  • Response compression (gzip)
  • Client-side caching strategy

Estimated Time: 3 weeks
Impact: MEDIUM - Needed as data grows


🧪 8. Comprehensive Testing

Status: Framework set up, minimal test coverage
Completed: Jest, Playwright, Testing Library configured, basic E2E tests
Remaining:

  • Unit tests for all lib functions (target: 80% coverage)
  • Integration tests for all API endpoints
  • Component tests for all React components
  • E2E tests for critical user flows (login, create project, assign task)
  • Performance testing (load testing)
  • Accessibility testing (axe-core, WCAG compliance)
  • Visual regression testing (Percy/Chromatic)
  • CI/CD pipeline integration
  • Automated test runs on PR

Estimated Time: 4-5 weeks
Impact: MEDIUM - Quality assurance


📌 Low Priority / Nice-to-Have (Months 6+)

🎨 9. Advanced UI/UX

Status: Functional and clean, room for polish
Completed: Dark/light theme, responsive design, component library
Remaining:

  • Customizable color themes per user
  • Keyboard shortcuts and navigation
  • Accessibility improvements (ARIA labels, focus management)
  • Animation and micro-interactions
  • Better empty states with illustrations
  • Improved error messages with helpful actions
  • Onboarding tour for new users
  • Customizable dashboard widgets

Estimated Time: 3-4 weeks
Impact: LOW - Polish and user experience


Status: Basic search working, can be enhanced
Completed: Real-time search with filters
Remaining:

  • Full-text search across all entities (FTS5 in SQLite)
  • Saved search queries per user
  • Search autocomplete with suggestions
  • Global search (Cmd+K interface)
  • Search history
  • Advanced filters (date ranges, custom fields)
  • Search results highlighting

Estimated Time: 2-3 weeks
Impact: LOW - User convenience


📝 11. Documentation & Help

Status: README complete, no in-app help
Completed: Comprehensive README, API documentation, project structure docs
Remaining:

  • In-app help system with tooltips
  • User manual (PDF/Web)
  • Video tutorials for common tasks
  • FAQ section
  • Changelog page
  • Developer documentation
  • API usage examples
  • Troubleshooting guide

Estimated Time: 3 weeks
Impact: LOW - User support


🚀 12. DevOps & Monitoring

Status: Docker deployed, basic logging
Completed: Docker multi-stage builds, docker-compose, git-based deployment
Remaining:

  • CI/CD pipeline (GitHub Actions/GitLab CI)
  • Automated deployment to staging/production
  • Health check endpoints
  • Application monitoring (Prometheus/Grafana)
  • Error tracking (Sentry)
  • Log aggregation (ELK/Loki)
  • Uptime monitoring
  • Performance monitoring (APM)
  • Automated database migrations on deploy
  • Blue-green deployment strategy

Estimated Time: 4 weeks
Impact: LOW - Operations maturity


📅 Implementation Roadmap

Phase 1: Security & Critical Features (Months 1-2)

Week 1-2: Security Hardening

  • CSRF protection middleware
  • Rate limiting implementation
  • Security headers
  • Content sanitization

Week 3-6: Reporting & Analytics

  • Gantt chart component
  • Budget tracking UI
  • Task analytics dashboard
  • PDF report generation
  • Custom report builder

Week 7-8: Email System

  • SMTP setup and configuration
  • Email templates (password reset, notifications)
  • Password reset flow UI
  • Email notification preferences

Deliverable: Production-secure system with comprehensive reporting


Phase 2: User Experience & Performance (Months 3-4)

Week 9-10: Progressive Web App

  • Service worker setup
  • App manifest
  • Offline caching strategy
  • Install prompts

Week 11-13: Performance Optimization

  • Redis caching layer
  • Pagination implementation
  • Image optimization
  • Query optimization
  • Background job processing

Week 14-16: Testing Coverage

  • Unit tests for lib functions
  • API endpoint tests
  • Component tests
  • E2E test expansion
  • CI/CD integration

Deliverable: Fast, mobile-ready app with solid test coverage


Phase 3: Professional Features (Months 5-6)

Week 17-20: Advanced Project Management

  • Gantt chart timeline view
  • Project templates
  • Resource allocation
  • Milestone tracking
  • Project dependencies

Week 21-23: External Integrations

  • API documentation (Swagger)
  • Webhook system
  • API versioning
  • Third-party integration framework

Week 24-26: Polish & Documentation

  • UI/UX improvements
  • In-app help system
  • User manual
  • Video tutorials

Deliverable: Enterprise-ready system with external integration capabilities


🎯 Immediate Next Steps (This Month)

Week 1-2: Security Hardening

  1. CSRF Protection

    • Install csurf or implement custom CSRF middleware
    • Add CSRF tokens to all forms
    • Configure CSRF validation for POST/PUT/DELETE
  2. Rate Limiting

    • Install express-rate-limit or rate-limiter-flexible
    • Apply to login endpoints (prevent brute force)
    • Apply to API routes (prevent abuse)
    • Configure different limits for authenticated vs. unauthenticated
  3. Security Headers

    • Install helmet or implement custom headers
    • Configure CSP (Content Security Policy)
    • Add X-Frame-Options, X-Content-Type-Options
    • HSTS for HTTPS
  4. Content Sanitization

    • Install DOMPurify for client-side
    • Sanitize user input in notes and descriptions
    • Prevent XSS in markdown rendering

📊 Feature Completion Status

Category Completion Priority Next Steps
Core Business Logic 95% - Minor enhancements
Authentication & Security 80% 🟨 HIGH CSRF, rate limiting, headers
Notifications 90% MEDIUM Email integration
File Management 100% - Complete
GIS/Mapping 100% - Complete
Reporting 40% 🟥 HIGH Advanced reports, Gantt charts
Testing 30% 🟥 MEDIUM Expand test coverage
Documentation 90% LOW In-app help
Performance 70% 🟨 MEDIUM Caching, optimization
Mobile/PWA 60% 🟨 MEDIUM Service workers, offline
Integrations 20% 🟥 LOW API docs, webhooks

Legend: Complete (80%+) | 🟨 In Progress (50-79%) | 🟥 Needs Work (<50%)


🔧 Technology Stack & Recommendations

Currently Implemented

  • Next.js 15.1 - App Router, React 19
  • SQLite - better-sqlite3 with auto-migrations
  • NextAuth.js v5 - Authentication with 5 roles
  • Tailwind CSS - Styling with dark/light themes
  • Zod - Input validation
  • bcryptjs - Password hashing
  • Leaflet - Maps with Proj4
  • Recharts - Charts (underutilized)
  • jsPDF - PDF generation (underutilized)
  • ExcelJS - Excel export
  • Docxtemplater - DOCX generation
  • date-fns - Date handling
  • Jest + Playwright - Testing frameworks
  • helmet or custom middleware - Security headers
  • rate-limiter-flexible - API rate limiting
  • DOMPurify - XSS prevention
  • Nodemailer - Email sending
  • Redis - Caching layer (optional, for scale)
  • Bull/BullMQ - Background job processing (optional)
  • Swagger/OpenAPI - API documentation
  • Sentry - Error tracking (production)
  • MSW - API mocking for tests
  • Storybook - Component documentation (optional)
  • Prisma - Current SQLite + migrations work well
  • TypeScript - JSDoc provides type hints, migration not urgent
  • GraphQL - REST API sufficient for current needs
  • Microservices - Monolith appropriate for current scale

💡 Current Strengths

  1. Production-Ready Foundation - Core features complete and tested
  2. Comprehensive Security - Authentication, authorization, audit logging
  3. Well-Structured Codebase - Clear separation of concerns, modular
  4. Modern Tech Stack - Latest Next.js, React 19, Tailwind CSS
  5. Enterprise Features - Multi-role system, notifications, file management
  6. Polish Localization - Full i18n with 1200+ translations
  7. GIS Integration - Advanced mapping with Polish cadastral data
  8. Automated Workflows - Cron jobs, backups, reminders
  9. Docker Deployment - Production-ready containerization
  10. Extensible Architecture - Easy to add features
  11. Comprehensive Documentation - README, API docs, project structure
  12. Professional UI - Clean, responsive, accessible

📈 Estimated Development Timeline

Minimum Production Deployment (Current State)

Status: READY NOW

  • All core features implemented
  • Security foundations in place
  • Docker deployment ready
  • Recommended: Add CSRF + rate limiting before production

Enhanced Security & Reporting

Timeline: 6-8 weeks
Features: CSRF, rate limiting, Gantt charts, advanced reports, email

Full Professional System

Timeline: 12-16 weeks
Features: + PWA, performance optimization, testing, integrations

Enterprise-Grade Application

Timeline: 20-26 weeks
Features: + Advanced project management, monitoring, comprehensive tests

Timelines based on 1 full-time developer. Team development reduces by 40-60%.


🎯 Success Metrics

Current Metrics (v0.1.1)

  • 60+ API endpoints
  • 40+ React components
  • 5 user roles with granular permissions
  • 1200+ i18n translation keys
  • 14 database tables with relationships
  • 8 map base layers + 6 overlays
  • 6 notification types
  • 100% database migration coverage
  • ⚠️ ~15% test coverage (needs improvement)

Target Metrics (v0.2.0)

  • 80%+ test coverage
  • <2s average page load
  • <100ms API response time
  • 100% API documentation coverage
  • A+ security grade (Mozilla Observatory)
  • WCAG 2.1 AA compliance
  • PWA installability

📞 Questions & Decisions Needed

  1. Email Provider: Which SMTP service? (SendGrid, AWS SES, self-hosted?)
  2. Error Tracking: Implement Sentry or similar?
  3. Caching Strategy: Add Redis or stick with in-memory?
  4. CI/CD Platform: GitHub Actions, GitLab CI, or other?
  5. Monitoring: Self-hosted (Prometheus) or SaaS (DataDog)?
  6. Database: Stick with SQLite or migrate to PostgreSQL for scale?
  7. TypeScript: Migrate from JSDoc or keep as-is?

Version 0.1.1 Status: Production-ready foundation with room for enhancement
Next Major Version (0.2.0): Security hardening + Advanced reporting
Version 1.0.0 Target: Q2 2026 - Full professional system