Skip to content

chlee1001/kabin

Repository files navigation

Kabin

Kabin

Your cozy, offline Kanban board.

A fast desktop app where your tasks stay on your machine — no account, no internet, no compromise.

License Built with Tauri React Latest release

English | 한국어

Kabin board view

Download

Grab the installer for your platform from the latest release:

Platform File
macOS (Apple Silicon + Intel) Kabin_*_universal.dmg
Windows Kabin_*_x64-setup.exe
Linux .AppImage, .deb, or .rpm

macOS first launch. Kabin is not notarized by Apple, so Gatekeeper blocks it on first open. Remove the quarantine flag once per install:

xattr -dr com.apple.quarantine /Applications/Kabin.app

Or open System Settings → Privacy & Security and click Open Anyway. See Building from source for details.

Features

Multiple Views — Work the way you prefer.

  • Board view with drag-and-drop columns and cards
  • Table view with multi-field filtering and sorting
  • Unified view across all projects by status category
  • Dashboard with project summaries and deadline focus

Rich Card Editing — More than sticky notes.

  • Tiptap rich text editor with code blocks, links, and task lists
  • Subtasks with progress tracking
  • Tags, color labels, and deadline badges
  • File and image attachments
  • Move cards across boards and projects

Keyboard-First Workflow

  • Cmd+K command palette with full-text search
  • Cmd+N new card, Cmd+S backup, Cmd+\ toggle sidebar
  • Customizable keyboard shortcuts

Customization

  • Light / Dark / System theme
  • 10 accent colors with app-wide tinting
  • Board backgrounds: 8 gradient presets or custom image upload
  • Card templates for repeated workflows

Data Ownership

  • Local SQLite database — nothing leaves your machine
  • Auto-backup on an interval you choose
  • Manual backup, export, and restore

Internationalization

  • English and Korean included
  • Namespace-by-feature translation structure for easy extension

Screenshots

Dashboard Table view
Dashboard Table view
Card editor Drag and drop
Card editor Drag and drop

Tech Stack

Layer Technology
Desktop Tauri 2 (Rust)
Frontend React 19, TypeScript 5.7 (strict)
Routing TanStack Router
Data Fetching TanStack React Query
State Zustand
UI Radix UI + shadcn/ui + Tailwind CSS 4
Editor Tiptap 2
Drag & Drop Atlassian Pragmatic DnD
Virtualization TanStack Virtual
i18n i18next
Database SQLite (rusqlite, bundled)
Build Vite 6

Building from Source

For contributors and anyone who prefers to build their own binary.

Prerequisites

Development

# Install dependencies
npm install

# Run in development mode (opens desktop window)
npm run tauri dev

# Frontend-only dev server (port 1420)
npm run dev

Build

# Production build
npm run tauri build

The built app lands in src-tauri/target/release/bundle/.

Release builds are ad-hoc signed (signingIdentity: "-"), which gives a stable local signature but does not remove the macOS Gatekeeper prompt. Only Developer ID signing plus notarization would.

Project Structure

kanban/
├── src/                    # React frontend
│   ├── components/
│   │   ├── board/          # Kanban board views
│   │   ├── card-detail/    # Card editor modal
│   │   ├── dashboard/      # Project overview
│   │   ├── layout/         # App shell, sidebar, command palette
│   │   ├── settings/       # App settings
│   │   ├── shared/         # Reusable components
│   │   ├── table/          # Table view
│   │   ├── ui/             # shadcn/ui primitives
│   │   └── unified/        # Cross-project kanban
│   ├── hooks/              # React Query hooks for Tauri API
│   ├── lib/                # Tauri API bridge, utilities
│   ├── locales/            # i18n translations (en, ko)
│   ├── stores/             # Zustand state
│   └── styles/             # Global CSS, Tailwind theme
├── src-tauri/              # Rust backend
│   ├── src/
│   │   ├── commands/       # Tauri IPC handlers
│   │   └── db/             # SQLite connection, migrations
│   └── tests/              # Integration tests
└── AGENTS.md               # AI agent documentation (hierarchical)

Data Model

Projects → Boards → Columns → Cards → Subtasks
                                 ├──→ Tags (many-to-many)
                                 └──→ Attachments

Columns have status categories (todo, in_progress, done, other) that power the unified view and dashboard aggregations.

Contributing

Contributions are welcome. Please keep changes focused and test before submitting.

# Run Rust tests
cd src-tauri && cargo test

# Type check frontend
npm run build

License

MIT © Chaehyeon Lee


Made with care for people who prefer their tools offline. Welcome to your Kabin.

About

Offline-first kanban board desktop app built with Tauri 2, React 19, and SQLite

Topics

Resources

License

Stars

3 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors