Releases: logward-dev/logward
v0.3.1
🎨 Light Mode & Theme System
This release introduces comprehensive light/dark mode support with improved accessibility and dynamic theming across all UI components.
✨ What's New
Light Mode Support (#41)
- Theme Toggle: New toggle in the header allowing users to switch between light and dark modes
- Persistent Preference: Theme choice is saved and applied before page render (no flash of unstyled content)
- High Contrast Mode: Automatic support for prefers-contrast: more accessibility setting
- Smooth Transitions: Animated theme changes for a polished experience
Dynamic Chart Theming
- All ECharts components (LogsChart, ServiceMap, SIEM widgets) now adapt to theme changes in real-time
- Updated colors, axes, tooltips, and legends for optimal readability in both modes
Code Block Theming
- Documentation code blocks use Shiki with light/dark themes
- Syntax highlighting automatically updates with the UI theme
Improved Color Contrast
- Overhauled CSS variables for both light and dark modes
- Better accessibility and readability across all components
🐳 Deployment Documentation
- Added instructions for Docker log collection with Fluent Bit
- Expanded Kubernetes/Helm deployment section
- New logging profile in docker-compose for optional Fluent Bit setup
Full Changelog: v0.3.0...v0.3.1
v0.3.0
🛡️ SIEM Dashboard & ⚡ Horizontal Scaling
This release introduces a complete Security Information and Event Management (SIEM) dashboard, C# SDK support, and horizontal scaling infrastructure.
✨ What's New
SIEM Dashboard & Incident Management (#5)
- New Security Dashboard at /dashboard/security with 6 real-time widgets:
- Summary stats (detections, incidents, open, critical)
- Top threats chart (Sigma rules by detection count)
- Detection timeline (time-series visualization)
- Affected services list
- Severity distribution pie chart
- MITRE ATT&CK heatmap
- Complete incident lifecycle: open → investigating → resolved → false_positive
- Automatic incident grouping by trace ID and time window
- Comments thread and activity history
- PDF report export for incident documentation
C# / .NET SDK (#9)
- Official C# SDK for LogWard integration
- Configure via URL, port, and API key without modifying existing logging calls
Horizontal Scaling Support (#20)
- Stateless backend architecture (all state in Redis/PostgreSQL)
- Multiple backend instances can run simultaneously
- BullMQ worker scaling with concurrent job processing
- Updated docker-compose.yml to support multiple replicas
- Health check endpoint for load balancer integration
🐛 Bug Fixes
- Fix Docker build on Alpine 3.23 (postgresql16-client package naming)
- Fix time window boundary race conditions in incident auto-grouping
- Fix SSE endpoint test timeouts
Full Changelog: v0.2.4...v0.3.0
v0.2.4
📚 Documentation & 🔧 Onboarding Fixes
This release adds new SDK documentation, integration guides, and fixes critical issues with the onboarding skip flow.
✨ What's New
Go SDK Documentation
- New documentation page at /docs/sdks/go
- Complete guide for integrating LogWard with Go applications
Syslog Integration Guide
- New guide at /docs/syslog for receiving logs from:
- Proxmox VE
- VMware ESXi
- UniFi Network
- Any RFC 5424 syslog source
- Step-by-step rsyslog configuration examples
Documentation Structure
- New "Integrations" section in docs sidebar
- OpenTelemetry moved from SDKs to Integrations
- Go SDK added to README and SDK overview
🐛 Bug Fixes
Onboarding Flow
- Fix "Skip tutorial" redirect loop keeping users stuck on /onboarding
- Skip button now correctly checks if user has an organization before redirecting
- Users who create an org then skip are now properly sent to dashboard
Docker & Infrastructure
- Fix worker/backend race condition for database migrations
- Fix Redis healthcheck with authentication support
- Set default values for database and Redis passwords
Frontend
- Fix PUBLIC_API_URL build-time vs runtime configuration issue
- Fix "Sign Up Free" link pointing to /signup instead of /register
- Fix curl command syntax in README for API log ingestion
Closes: #33
Full Changelog: v0.2.3...v0.2.4
v0.2.3
🐳 Docker Image Publishing & Self-Hosting Improvements
This release makes self-hosting LogWard easier than ever with pre-built Docker images - no build required!
Closes #30
✨ What's New
Docker Images
- Docker Hub: https://hub.docker.com/r/logward/backend, https://hub.docker.com/r/logward/frontend
- GitHub Container Registry: ghcr.io/logward-dev/logward-backend, ghcr.io/logward-dev/logward-frontend
- Multi-platform support: linux/amd64, linux/arm64
- Semantic versioning: 0.2.3, 0.2, 0, latest
Self-Hosting (2 minutes setup)
Create docker-compose.yml and .env, then:
docker compose up -d
No git clone, no build tools - just Docker!
📝 Changes
- docker-compose.yml now uses pre-built images by default
- Updated documentation with inline docker-compose examples
- Removed install.sh references from all docs
📚 Documentation
Full Changelog: v0.2.2...v0.2.3
v0.2.2
What's Changed
- build(deps): Bump the npm_and_yarn group across 2 directories with 2 updates by @dependabot[bot] in #28
- V0.2.2 by @Polliog in #29
New Contributors
- @dependabot[bot] made their first contribution in #28
Full Changelog: v0.2.1...0.2.2
v0.2.1
🚀 New Features
Redis Caching Layer
- Comprehensive caching system to minimize database load and improve response times
- Type-safe CacheManager utility with configurable TTLs per cache type
- Session validation caching (30 min TTL) - ~30x faster on cache hit
- API key verification caching (60 sec TTL) - ~20x faster on cache hit
- Query result caching with deterministic keys (60 sec TTL) - ~10x faster on cache hit
- Trace and aggregation caching (5 min TTL) - ~50x faster on cache hit
- Automatic cache invalidation on log ingestion
- New admin API endpoints for cache management:
- GET /api/v1/admin/cache/stats - View cache hit/miss statistics
- POST /api/v1/admin/cache/clear - Clear all caches
- POST /api/v1/admin/cache/invalidate/:projectId - Invalidate project-specific cache
- Configurable via CACHE_ENABLED and CACHE_TTL environment variables
Landing Page
- New public index page for the application
⚡ Performance Improvements
Database Optimization
- New composite indexes for common query patterns:
- idx_logs_project_level_time (project + level filtering)
- idx_logs_project_service_time (project + service filtering)
- idx_logs_project_service_level_time (combined filtering)
- idx_logs_project_errors (partial index for error logs)
- TimescaleDB Continuous Aggregates:
- logs_hourly_stats for dashboard timeseries (10-50x faster)
- logs_daily_stats for historical analytics
- Compression policy optimized: 7 days → 1 day (90% storage reduction for old data)
- PostgreSQL tuning (parallel queries, shared_buffers, work_mem, WAL settings)
- Connection pooling with environment-based sizing (5/10/20 connections)
- Statement timeout protection (30s production, 60s development)
- Admin health endpoint now includes pool statistics
Verified Performance
- Ingestion: 722,890 logs @ 7.40ms P95, 0% error rate
- Query: Sub-10ms P95 latency with new indexes
🐛 Bug Fixes
- Admin Panel: Fixed double sidebar and footer issue caused by nested layout inheritance
- Admin Routes: Fixed incorrect navigation paths (missing /dashboard prefix)
- User Management links now correctly navigate to user details
- Organization Management links now correctly navigate to organization details
- Project Management links now correctly navigate to project details
🧪 Testing
- Added 38 new tests (859 → 897 total)
- New test file: tests/utils/cache.test.ts (~40 tests for CacheManager)
- New test file: tests/modules/admin/routes.test.ts (~25 tests for admin API)
- Extended admin-service.test.ts with additional coverage
- All 897 tests passing ✅
Full Changelog: v0.2.0...v0.2.1
v0.2.0
v0.1.0
Full Changelog: https://github.com/logward-dev/logward/commits/v0.1.0