Skip to content

RoooyHe/tamarix

Repository files navigation

Tamarix

Matrix-native task management -- One Task = One Matrix Room

License: MIT SvelteKit Svelte 5 Matrix TypeScript Bun

English | 中文


Tamarix maps Matrix's decentralized Room/Space model onto task management. Every task becomes a Matrix room, every project a Matrix space. Because data lives on the Matrix federation -- not a proprietary backend -- you get real-time collaboration, cross-server federation, and end-to-end encryption for free.

Features

  • Real-time -- Built on the Matrix sync protocol; every change is pushed instantly
  • Federated -- Users on different homeservers collaborate on the same tasks
  • End-to-end encrypted -- Task content is protected by Matrix's E2EE (Olm/Megolm)
  • Open protocol -- Any Matrix client can participate; no vendor lock-in
  • Internationalized -- Multi-language support (i18n) out of the box
  • Workflow validation -- Customizable task status transitions with matrix-powered enforcement

How It Works

  Matrix Space   <----->   Tamarix Project
  Matrix Room    <----->   Tamarix Task
  State Event    <----->   Task Attribute (status / priority / tags ...)
  Timeline Msg   <----->   Task Comment
  Power Levels   <----->   Permission Control
Custom State Events -- the com.tamarix.* namespace
Event Type Purpose
com.tamarix.task_status Status (todo / in_progress / review / done / closed)
com.tamarix.priority Priority (critical / high / medium / low)
com.tamarix.task_type Type (bug / feature / task / improvement / epic)
com.tamarix.due_date Due date
com.tamarix.estimate Time estimate / Story points
com.tamarix.tags Tags
com.tamarix.ticket_id Ticket ID (e.g. TAM-42)
com.tamarix.assignee Assignee
com.tamarix.relation Task relation (blocks / duplicates / subtask_of)
com.tamarix.task_archived Archive flag

Tech Stack

SvelteKit Svelte 5 TypeScript Tailwind CSS shadcn-svelte matrix-js-sdk Bun

Quick Start

# Install dependencies
bun install

# Start dev server
bun run dev

# Type checking
bun run check

# Production build
bun run build && bun run preview

Project Structure

src/
  lib/
    components/       # UI components (board, task, project, dashboard, ...)
    stores/           # Svelte 5 rune-based stores ($state / $derived)
    matrix/           # Matrix SDK integration (auth, client, search, workflow, ...)
    i18n/             # Internationalization
  routes/             # SvelteKit file-based routing
    dashboard/        # Main task board
    project/[id]/     # Project views & settings
    search/           # Full-text search
    settings/         # App settings

Roadmap

Phase Status Highlights
P0 -- MVP Done Login / Project list / Task CRUD / Detail / Comments
P1 -- Board View Done Kanban DnD / Command Palette / Filter & Sort / Data Table / Archive / Upload / Theme
P2 -- Intelligence Done i18n / Ticket ID / Workflow / Search / Change History / Relations / E2EE Infrastructure
P3 -- Enterprise Planned Charts / Reminder Bot / Git Bridge / Custom Fields
P4 -- Advanced In Progress Chart Reports / Custom Field Renderer / Approval / Sort Order / Keyboard Shortcuts / External Links

Contributing

Issues and pull requests are welcome. Please open an issue first to discuss what you would like to change.

License

This project is licensed under the MIT License.

About

Matrix-native task management

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Packages

 
 
 

Contributors