Repository navigation
Release v0.1.0
Breaking Changes
- Removed the
--db/-dCLI parameter - Database location is now managed through configuration system
- Migration options (in order of precedence):
- Environment variable:
FSPULSE_DATABASE_PATH=/path/to/db.sqlite - Config file:
[database].path = "/path/to/db.sqlite"in~/.config/fspulse/config.toml - Default location if neither is specified
- Environment variable:
- Hash default is now "hash all" - all items will be hashed by default
- Validate new/changed is now the default validation mode
- Override options:
--no-hash,--hash-new,--no-validate,--validate-all
Added
🚀 Web UI and Server Mode
- New
servecommand launches FsPulse as a web server with full-featured UI - Real-time scan monitoring with WebSocket updates
- Interactive data exploration with dynamic filtering and column management
- Alert management interface with context-aware filtering
- Query builder with support for all FsPulse query syntax
- Configurable via environment variables or
[server]section in config:FSPULSE_SERVER_HOST/[server].host(default: 127.0.0.1)FSPULSE_SERVER_PORT/[server].port(default: 8080)
🐳 Docker Support
- Official Docker images now available at
gtunesdev/fspulse - Multi-architecture support (linux/amd64, linux/arm64)
- Automated builds triggered by version tags
- Tagged releases:
latest,0.1.0,0.1
📊 Alerts System
- New top-level data type for tracking integrity issues
- Automatically generated during scan analysis phase
- Two alert types: Suspicious Hash changes, Invalid Items
- Alert status management (Open, Flagged, Dismissed)
- Exposed in query model as
alertsdomain - Alerts tab in Explore view with automatic filtering
🎨 Enhanced Explorer UI
- Collapsible filter frame (Ctrl+F to toggle)
- Views system: Press 'V' for pre-configured view templates
- View persistence per data type
- Improved column ordering and management
📝 Query Enhancements
- Added
@timestampformat modifier for dates (UTC Unix timestamps) - Enables client-side timezone conversion in web applications
- All schema fields now available for querying (e.g.,
is_undelete,last_hash_scan_old,hash_old,hash_new,last_val_scan_old)
⚙️ Environment Variable Configuration
- All configuration options now support environment variable overrides
- Environment variables take precedence over config file values
- Naming pattern:
FSPULSE_<SECTION>_<KEY>(e.g.,FSPULSE_DATABASE_PATH,FSPULSE_SERVER_PORT) - Enables easier Docker and CI/CD configuration
Changed
- Moved all input boxes from tui-input to tui-textarea for better cursor display and text box behaviors
- Improved navigation architecture in web UI with consistent flexbox layout
- Updated responsive breakpoint from 768px to 480px for better tablet support
- Consolidated overflow handling to single source of truth
Fixed
- Windows: Filtered out key release events that caused double-press behavior
- Navigation sidebar expansion now works consistently across all web UI pages
- Status dropdown display issues resolved with proper column constraints
- Alert status updates now persist with correct UTC timestamps