Skip to content

Repository files navigation

Aura Logo

The Intelligent Wellness Companion for Developers

Version Rust Tauri SvelteKit Python TypeScript License

Focus Better · Hydrate Smarter · Work Healthier

Quick Start · Features · Architecture · FAQ


📊 Enterprise Analytics  •  ⚡ Auto-Updates  •  👁️ Smart Eye Care  •  💧 Hydration Tracking  •  🧘 Stretch Reminders


🎯 What's New

Aura is constantly improving! Check out our latest updates:

  • v1.5.6 - Visual Fix: Activity Intensity Heatmap data range
  • v1.5.6 - Visual Fix: Activity Intensity Heatmap data range
  • v1.5.5 - Rich Markdown Changelog integration in Update Dialog
  • v1.5.4 - Smart App Detection & Interactive Dashboard Tooltips
  • v1.5.3 - Critical Fixes: Break Notification Loop & Duplicate Sounds
  • v1.5.2 - Bug fixes for version display across all app entry points
  • v1.5.1 - Auto-update on startup, Skip Version feature, Update preferences
  • v1.5.0 - Seamless auto-update system with one-click updates

📋 See all changelogs for complete release history.


✨ Key Features

👁️ Smart Break Reminders

Personalized break notifications based on your actual work patterns — not arbitrary timers.

  • 20-20-20 Rule: Eye rest reminders every 20 minutes
  • Stretch Breaks: Movement prompts every 45-60 minutes (customizable duration)
  • Wall Clock Mode: Consistent break reminders based on real time (default)
  • Immersive Mode Detection: Auto-suppresses breaks during fullscreen apps (gaming, presentations)

💧 Intelligent Hydration

Aura doesn't just nag you to drink water — it knows when you've had enough.

  • Goal Tracking: Logs intake against your daily goal (customizable, default: 2000ml)
  • Auto-Silence: Hydration reminders pause automatically once you hit your goal
  • Quick Logging: One-click buttons for common amounts (100ml, 250ml, 500ml)
  • Weekly Trends: Visualize your hydration patterns over time

📅 Pro Scheduler

Flexible scheduling that adapts to your life, not the other way around.

  • 3 Scheduling Modes: "Same Every Day", "Weekdays vs. Weekends", or fully "Custom"
  • Automated Actions: Pause, Resume, Reset, Start, or End sessions at specific times
  • Smart Warnings: Get a gentle 1-minute heads-up before any schedule rule triggers
  • Cross-Restart Persistence: Your schedule rules survive app restarts

🔔 Premium Notifications

Beautiful, non-intrusive overlay notifications that respect your workflow.

  • Custom Overlay Window: Transparent, floating glassmorphism notifications
  • Enhanced Visual Design: Stronger backdrop blur, multi-layer shadows, refined borders
  • Theme-Matched: Color-coded by break type (green/orange/blue) with smooth animations
  • No Focus Stealing: Never interrupts your active typing or workflow

📸 Screenshots

Session Hub
Your command center for work sessions

Analytics Dashboard
Enterprise-level wellness insights

Smart Overlay
Beautiful break notifications

Settings Interface
Powerful schedule management


🏗️ Architecture

Aura uses a hybrid Sidecar Pattern combining the best of three languages:

Layer Technology Responsibility
Core Rust (Tauri v2) System Tray, Window Management, OS Integration
UI SvelteKit 5 + TypeScript Reactive Interface, DaisyUI, Glassmorphism Effects
Brain Python 3.11 SQLite Database, Activity Monitoring, Scheduling Logic
graph TB
    subgraph "Frontend Layer"
        UI[Svelte 5 UI]
        Store[Analytics Store]
    end
    
    subgraph "Core Layer (Rust/Tauri)"
        Core[IPC Bridge]
        Tray[System Tray]
        Windows[Window Manager]
    end
    
    subgraph "Backend Layer (Python)"
        Engine[Aura Engine]
        Monitor[Activity Monitor]
        Scheduler[Break Scheduler]
        WorkSched[Work Schedule Manager]
        DB[(SQLite Database)]
    end
    
    UI <-->|IPC Commands| Core
    Core <-->|Stdio JSON| Engine
    Engine --> Monitor
    Engine --> Scheduler
    Engine --> WorkSched
    Monitor --> DB
    Scheduler --> DB
    WorkSched --> DB
    Core --> Tray
    Core --> Windows
    Store -.->|Analytics Data| UI
Loading

Technology Stack

Frontend
  • Framework: SvelteKit 2 with Svelte 5 (Runes API)
  • Language: TypeScript 5.6
  • Styling: Tailwind CSS 4.1 + DaisyUI 5.5
  • Build Tool: Vite 6
Backend
  • Runtime: Tauri 2.0 (Rust-based)
  • Engine: Python 3.11 (PyInstaller for distribution)
  • Database: SQLite 3
  • IPC: JSON over stdio
Key Features
  • Thread-safe state management with Rust mutex
  • Real-time activity monitoring (keyboard/mouse)
  • Persistent session state across restarts
  • Time-based automation with WorkScheduleManager
  • ML-ready data collection for future adaptive AI

🚀 Quick Start

Prerequisites

Required Software
Software Version Link
Node.js 18+ nodejs.org
Rust Latest rust-lang.org
Python 3.11 python.org

Installation

1. Clone the repository

git clone https://github.com/hei1sme/aura-app.git
cd aura-app

2. Install dependencies

npm install

3. Build Python sidecar (First time only)

./rebuild_sidecar.sh    # Git Bash / Linux / macOS
# or
./rebuild_sidecar.ps1   # PowerShell

4. Run in development mode

npm run tauri dev

📦 Build for Production

We include robust build scripts that compile the Python engine into a standalone executable.

Windows (Git Bash)
./build_release.sh
Windows (PowerShell)
.\build_release.ps1

Output: src-tauri/target/release/bundle/nsis/Aura_1.5.4_x64-setup.exe


💎 Advanced Features

Work Session States

Aura implements a proper finite state machine:

IDLE → start_session() → ACTIVE
ACTIVE → pause_session() → PAUSED
PAUSED → resume_session() → ACTIVE
ACTIVE/PAUSED → end_session() → IDLE

Each transition is thread-safe and persisted to disk.

Schedule Automation

Create time-based rules to automate your workflow:

// Example: Auto-pause for lunch at 12:00 PM
{
  time: "12:00",
  action: "pause",
  days: ["mon", "tue", "wed", "thu", "fri"],
  enabled: true
}

❓ FAQ

How does the break timer work?

Aura uses wall-clock mode by default — you get consistent break reminders at regular intervals regardless of activity. This ensures predictable, reliable wellness prompts throughout your workday.

Can I customize break intervals?

Yes! Go to Settings to adjust:

  • Eye rest interval (default: 20 min)
  • Stretch break interval (default: 45 min)
  • Hydration reminder interval (default: 30 min)
  • Daily hydration goal (default: 2000ml)
Does Aura run in the background?

Yes. When you close the main window, Aura minimizes to the system tray. Right-click the tray icon to access pause, resume, analytics, settings, or quit options.

What data does Aura collect?

All data stays local on your machine:

  • Break logs (completed/skipped/snoozed timestamps)
  • Hydration intake records
  • Keyboard/mouse activity metrics (for ML training)
  • Work session state

No data is sent to any server. Your privacy is paramount.

Can I use Aura offline?

Absolutely! Aura is 100% offline. No internet connection required.


🤝 Contributing

We welcome contributions! Please check the Issues page for open tasks.

Development Setup

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📋 Changelog

See CHANGELOG_v1.5.6.md for the latest release notes.


⭐ Star this repo · 🐛 Report a bug · 💬 Discussions


This project is licensed under the MIT License.

✨ Designed for Peace of Mind. 🌿

Made with ❤️ using Tauri + SvelteKit + Python


About

Your Intelligent Wellness Companion.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Contributors

Languages