Expand description
Core library modules for the kasl application.
Serves as the main entry point for all kasl library components, providing a centralized access point to the application’s core functionality.
§Usage
use kasl::libs::task::Task;
use kasl::db::tasks::Tasks;
let task = Task::new("Implement feature", "Add user authentication", Some(75));
let mut tasks_db = Tasks::new()?;
tasks_db.insert(&task)?;Modules§
- alias
- The short
kaalias, as a link rather than a second binary. - autostart
- System boot integration and automatic startup management.
- config
- Application configuration: the data model, disk IO, and PATH setup.
The interactive setup wizard lives in [
wizard] (reached viaConfig::init). - daemon
- Background process management for
kasl watch: spawn detached, track by PID file, stop, and the daemon’s own signal-handled entry point. - data_
storage - Resolves where application files live on each platform.
- day_
delivery - Getting days to kasl-server, including the ones that did not go the first time.
- day_
upload - Assembling a local day into what kasl-server accepts.
- export
- Exports reports, tasks and summaries to CSV, JSON and Excel, including the hourly (SiServer-style) Excel layout.
- formatter
- Time duration formatting utilities for user-friendly display.
- jira_
inbox - Jira inbox sync and desktop toast helpers.
- locale
- Built-in localization for hourly (SiServer-style) daily reports.
- messages
- All user-facing text, one enum away from the code that prints it.
- monitor
- The activity monitor: input events in, workdays and pauses out.
- pause
- The pause model shared by the monitor, the database layer and the views.
- pick
- Interactive fallbacks for arguments the user did not pass.
- productivity
- Productivity calculation utilities for work time analysis.
- prompt
- Interactive prompts that refuse to run without a terminal.
- report
- Work-interval math for the daily report: the day sliced at its pauses, short-interval filtering, and the end-time fallbacks.
- report_
template - Declarative, JSON-based design templates for the hourly daily report.
- secret
- Credential storage backed by the operating system keyring.
- stdin_
drain - Detect and drain leftover stdin after a multi-line paste.
- summary
- Monthly summary math: fold in rest days, total and average, format.
- task
- The task model, its query filters, and name normalization.
- update
- Self-update from GitHub releases.
- view
- Console display and table formatting system.