Skip to content

BANSAFAn/timiGS-

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

174 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

⏱️ TimiGS β€” Intelligent Activity Tracker

Release License Stars CI

A modern, privacy-first activity tracker for Desktop.
Track your app usage, visualize productivity, manage tasks, and stay focused β€” all with your data stored safely and locally.

πŸ“₯ Download Releases Β· πŸ› Report Bug Β· πŸ’¬ Join Discord


πŸ“± Platforms

TimiGS runs natively on all major desktop operating systems, built on a unified high-performance stack:

Platform Architecture Stack Status
Windows πŸ¦€ Rust (Tauri v2) + Vue 3 βœ… Passing
macOS πŸ¦€ Rust (Tauri v2) + Vue 3 βœ… Passing
Linux πŸ¦€ Rust (Tauri v2) + Vue 3 βœ… Passing

πŸš€ Features

πŸ“Š Tracking & Analytics

  • Real-time Activity Tracking β€” Automatically detects active windows and captured applications with absolute precision.
  • Analytics Dashboard β€” Dynamic, interactive Donut, Pie, and Bar charts powered by Chart.js displaying productivity metrics.
  • Timeline Logbook β€” Review a granular chronological breakdown of your daily footprint, minute-by-minute.
  • Compare Mode β€” Evaluate and contrast activity levels between different days or weeks to optimize your schedule.
  • Coding Tracker β€” Autodetects major IDEs and text editors (VS Code, JetBrains) with precise language and project capture.

🎯 Core Productivity

  • Focus Mode β€” Programmatically locks your PC to a single designated application, aggressively minimizing distracting apps.
  • Time OUT Rest Loops β€” Pomodoro-style screen lock overlays that play ambient lofi music to guarantee you rest.
  • Doctor Mode β€” A smart health assistant reminding you to rest your eyes (20-20-20 rule) and stand up.
  • Tasks & Daily Goals β€” Set custom app usage caps/goals and track progress with interactive status cards.
  • Shutdown Timer β€” Schedule system shutdowns to enforce a hard stop to your workday.

☁️ Sync & Transfer

  • P2P Transfer & Sync β€” Direct, high-speed Peer-to-Peer database syncing between devices via WebRTC (PeerJS).
  • Team Accountability β€” Join secure peer-to-peer study rooms to sync online states and compete in friendly focus leaderboards.
  • Flexible Data Exporter β€” Export data to CSV, JSON, HTML, or Markdown; easily import/export databases for total control.

🌍 Localization & Themes

  • 9 Languages Supported β€” English, Ukrainian, German, French, Spanish, Portuguese, Polish, Arabic, Chinese.
  • Harmonious Dark & Light Themes β€” Gorgeous custom HSL color palettes that look stunning on modern displays.
  • System Tray Widget β€” Minimizes perfectly to the tray with a lightweight interactive popup.

πŸ› οΈ Technology Stack

TimiGS leverages a cutting-edge, high-performance tech stack designed for speed, safety, and a minimal memory footprint.

πŸ¦€ Backend Engine (Rust)

Housed inside src-tauri/src/, our native layer connects directly with operating system APIs for zero-overhead window capturing and focus enforcement.

Technology Category Purpose
Tauri v2 Desktop Framework System IPC, native window bindings, and shell control
Tokio Async Runtime Blazing-fast asynchronous execution
Rusqlite Database Bundled, high-performance SQLite engine
Windows-rs System API Deep integration with Win32 APIs for tracking & focus control
Rodio Audio Playback Native audio playing for ambient rest noises
Tiny-HTTP Networking Local lightweight HTTP server for Peer-to-Peer handshakes
Reqwest HTTP Client API calls and network communication
Serde Serialization Zero-cost JSON data parsing
Chrono Time Management Extremely precise date/time math

⚑ Frontend Interface (Vue 3)

Our reactive user interface is built using modern paradigms, delivering fluid transitions and gorgeous micro-animations.

Technology Category Purpose
Vue 3 UI Framework Declarative component architecture
Vite Bundler & Dev Server Blazing-fast development loops and optimized production builds
TypeScript Programming Language Core structural type safety across the client codebase
Pinia State Management Highly reactive, unified settings and tracking stores
Chart.js Data Visualization Renders high-fidelity analytics graphs and charts
PeerJS WebRTC Protocol Direct peer-to-peer file transfer and team syncing
Vue I18n Localization Dynamic multi-language translation injection
Marked Text Rendering Fast local markdown document formatting

🌐 Marketing & Web Docs (Astro)

The public documentation and landing site (in site/) are built for maximum SEO and performance.

  • Astro β€” Highly optimized static site framework.
  • React β€” Interactive elements and responsive components.

πŸ’» Getting Started

Prerequisites

  • Node.js v18+ β€” Download
  • Rust (latest stable) β€” Download
  • C++ Build Tools β€” Visual Studio Build Tools (Windows) or build-essential (Linux)
  • Linux only: libgtk-3-dev libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf libasound2-dev

Install & Run

git clone https://github.com/BANSAFAn/timiGS-.git
cd timiGS-
npm install
npm run tauri dev

To build a production package:

npm run tauri build

Build output is saved to: src-tauri/target/release/bundle/


πŸ“‚ Project Structure

timiGS-/
β”œβ”€β”€ src/                        # Frontend (Vue 3 + TypeScript)
β”‚   β”œβ”€β”€ components/             # FocusMode, TimeOut, DoctorMode, ShutdownTimer, CodingTracker...
β”‚   β”œβ”€β”€ views/                  # Dashboard, Analytics, Timeline, Compare, Tools, Weather, Team, Transfer...
β”‚   β”œβ”€β”€ locales/                # Multi-language files (en, uk, de, fr, es, pt, pl, ar, zh)
β”‚   β”œβ”€β”€ stores/                 # Pinia state stores
β”‚   β”œβ”€β”€ composables/            # Vue composables
β”‚   β”œβ”€β”€ utils/                  # Utility functions
β”‚   └── router.ts               # Vue Router config
β”‚
β”œβ”€β”€ src-tauri/                  # Backend (Rust)
β”‚   └── src/
β”‚       β”œβ”€β”€ lib.rs              # App entry & plugin setup
β”‚       β”œβ”€β”€ commands.rs         # Tauri IPC commands
β”‚       β”œβ”€β”€ db.rs               # SQLite database
β”‚       β”œβ”€β”€ tracker.rs          # Active window tracking (Win32 API / Linux)
β”‚       β”œβ”€β”€ focus.rs            # Focus Mode (app blocking)
β”‚       β”œβ”€β”€ timeout.rs          # Time OUT (break enforcement)
β”‚       β”œβ”€β”€ p2p.rs              # P2P file transfer server
β”‚       β”œβ”€β”€ music.rs            # Audio playback (rodio)
β”‚       β”œβ”€β”€ notifications.rs    # System notifications
β”‚       β”œβ”€β”€ timer.rs            # Shutdown timer
β”‚       β”œβ”€β”€ tasks.rs            # Task/goal management
β”‚       β”œβ”€β”€ icons.rs            # App icon extraction
β”‚       β”œβ”€β”€ tray.rs             # System tray icon & menu
β”‚       └── picker.rs           # Screen share picker
β”‚
β”œβ”€β”€ site/                       # Marketing Website (Astro + React)
β”œβ”€β”€ .github/workflows/          # CI/CD (release.yml, legacy-builds.yml)
β”œβ”€β”€ legacy-builds/              # Win32 / WinXP legacy build scripts
└── package.json                # v1.6.0

🌍 Localization

TimiGS supports 9 languages: English, Ukrainian, German, French, Spanish, Portuguese, Polish, Arabic, Chinese.

Adding a New Language

  1. Create src/locales/{lang}.json based on en.json
  2. Register in src/i18n.ts
  3. Add selector option in src/views/Settings.vue

πŸ”’ Privacy

Important

All your data stays completely private and local. TimiGS stores activity data in a local SQLite database at %APPDATA%\TimiGS\activity.db. No data is transmitted to external servers.


πŸ“œ License

Licensed under the TimiGS Public License (TPL) v1.0.

  • βœ… Free to use, modify, and distribute
  • βœ… Must include attribution to BANSAFAn
  • ❌ Cannot rename/rebrand the software for redistribution

🀝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feat/your-feature)
  3. Commit your changes
  4. Open a Pull Request

For issues and feature requests, use GitHub Issues.


Made with ❀️ by BANSAFAn

About

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors