In development Foundation shipped · task manager in progress

Simple when you need simple.
Spatial when it gets complicated.

Khalst is a local-first productivity app for the web and Android. A reminder takes three seconds to make. When it grows into checklists, photos and links, it becomes a canvas you can lay out in space, without ever becoming a different task.

Works fully offline No account required Cloud sync is optional

The idea

Most apps make you predict how complicated something will get.

You start a reminder. It grows a checklist, then a photo of the broken tap, then a link to the plumber. Now you are fighting a linear editor, or copying everything into a second app that has its own idea of what a task is.

Khalst removes the prediction. Any reminder opens as a canvas, in place, keeping the same identity. Tick it on the canvas and it ticks in Today, in the calendar, and on your home screen, because it was never copied. It is one row, seen from different angles.

Four pillars

Four modules. Use one, use all of them.

Every module is independently useful, and the ones you ignore leave no residue: no empty headers, no placeholder cards, no clutter in a calendar you never asked to fill.

Quick capture

Title, optional checklist, a photo, a time. Saved and gone in seconds, at the speed of a phone reminder app and with none of its ceiling.

Building now

Freeform canvas

Checklists, notes, images and link previews as movable blocks in a shared space. Spatial organisation, deliberately not a drawing tool.

Next up

Unified calendar

A live view over your real tasks, shifts and time off. There is no event table behind it, so nothing can drift out of sync.

Planned

Time tracker

One engine for work shifts, focus blocks, sitting and standing, and game-night turn rotations. Build the timer you actually need, then see the honest number.

Planned

Tasks & reminders

A home screen that answers one question

Today is the first thing you see, and it shows only what is relevant today. Sections that have nothing in them do not exist. No empty Reminders header staring at you, no placeholder for the tasks you never scheduled.

  • Smart lists. Inbox, Today, Upcoming, Anytime and Logbook, in a fixed, learnable order.
  • Overdue stays put. Late tasks turn red where they live and also surface in Today. They are never silently moved to a date you did not choose.
  • Quick Find. One shortcut to search every task and list.
  • Quick add from anywhere. You never have to navigate somewhere to write something down.

Canvas

Open as canvas: same task, more room

One item in the overflow menu turns any reminder into a canvas: the checklist you already wrote, the photos you already attached, the tasks you already have. Nothing is duplicated. It is a single database transaction that gives your existing data a place to spread out.

  • Blocks that reference, never copy. A checklist block is the checklist. Tick an item here, it is ticked everywhere.
  • Link blocks with previews. Put the restaurant's page next to the restaurant, the plumber next to the broken tap.
  • Four separate gestures. Tap to edit, drag the handle to move, drag a row to reorder, drag a corner to resize. You will never move a block while trying to type in it.
  • Your layout syncs; your viewport does not. Where a block sits is shared across devices, where you are looking stays personal to the device.

Calendar

A calendar with nothing stored in it

Khalst's calendar has no event table. It is computed live from your tasks, shifts and time off, which means it cannot fall out of step with them. There is no second copy to drift. Reschedule a task and the calendar has already changed.

  • Undated stays invisible. A task with no date never appears. The calendar shows commitments, not your entire backlog.
  • Nothing you did not create. Never tracked a minute of time? The calendar shows zero sessions. Settings alone never conjure records.
  • Month and agenda. A month grid with per-day markers that never rely on colour alone, and a day view that reads like a summary of what actually happened.
  • Live checkboxes. Tick something in the day view and it is done everywhere at once.

Time tracking

The time you actually spent

A work shift, a focus block, a study session. They are all the same object: a bounded span of time with a record at the end. Khalst tracks them with one engine. Start it, stop it, and the real timestamps, with the timezone you were in, do the rest. No ticking counter is saved anywhere, so closing the app, rebooting, or losing signal cannot lose your time.

  • Never clamped. 8h 48m against an 8h target reads 110%, not "complete". A measurement, not a grade.
  • Shifts and focus timers, one engine. A Pomodoro is the same session as a work day, just with different intervals. Adding a new kind is configuration, not a new app.
  • Offline start. In a basement with no signal, it starts instantly and syncs later.
  • Overnight and DST safe. Sessions are stored as real instants plus a timezone, so a clock change never eats an hour.
  • Stays out of the way. Never start one and the module simply does not appear.

Game night

Whose turn it is, without a phone in the middle of the table

A tabletop night is the same shape as a work shift: a bounded span of time, made of intervals, with a record at the end. So Khalst treats it as one: a session with a turn rotation, one step per player, cycling for as long as you play.

  • It suggests, it never seizes. A turn ends when someone says it ends. The timer is a target, so a player who runs long sees the overrun instead of losing the floor mid-sentence.
  • A phone call does not cost you your turn. Pause the session and the turn clock pauses with it.
  • Endless by default. The rotation just cycles. No one has to guess how many rounds the night will run.
  • It is a session, not a new app. The same engine behind work shifts and focus timers, so a game night lands in the calendar and counts toward no worked-hour total.

Local-first

Your device is the app. The cloud is a convenience.

You can install Khalst, refuse every cloud login, and still have the whole product: tasks, checklists, canvases, images, calendar, search, settings. Sync is something you switch on because you own a second device, not a licence to run the software.

01

Local writes win

Every action commits to the database on your device first, and the interface updates immediately. Nothing waits on a network round-trip, ever.

02

Offline is not a mode

There is no degraded state to fall into. Aeroplane, basement, dead Wi-Fi: you create, edit, tick and check in exactly as always.

03

Cloud is opt-in

Sync exists for cross-device work, attachment replication and backup. Decline it and nothing about the product breaks or nags.

04

Portable by design

Your data is structured to be exported and moved out, not held hostage. Backup and export are requirements, not a someday feature.

Scope

What Khalst is not trying to be

A product stays good by knowing what it is for. Khalst is built to be fast at capture and calm to look at, and it will not trade that away to become an everything-app.

Not the direction

  • A wiki
  • A team collaboration suite
  • A database builder
  • A project management tool
  • An AI productivity platform
  • Multi-user editing

Not in the first releases, but possible later if it earns its place

  • Arrows and connectors
  • Freehand drawing
  • Diagrams and flowcharts
  • Kanban boards
  • Spreadsheets
  • An infinite canvas

Does Khalst read your calendar and mail? No, and that one is a promise. It asks for the narrowest possible access, and the core of the product (capture, scheduling, search) never depends on a server to think for it.

Status

Built in the open order, one phase at a time

Khalst is being built by one person, specified before it is coded, and shipped in phases with real exit criteria. Here is exactly where it stands. No phase is announced as finished before it is.

Shipped

Foundation

Data model, local database, the schema every later phase builds on, and verified web and Android builds.

In progress

Task manager

Smart lists, user lists, quick capture, reminders, overdue handling and Quick Find. Currently in a bug-fixing freeze rather than taking new features.

Next

Canvas

Movable blocks, link previews, images, and "Open as canvas" from any reminder.

Then

Internal calendar

Month and agenda views projected live from tasks, shifts and time off.

Then

Accounts & optional sync

Sign-in, cross-device sync, attachment replication and backup, all of it opt-in.

Later

Calendar export, Android widgets, sessions

One-way push to Google Calendar, home-screen widgets and notification hardening, then the sessions engine (work shifts, focus timers, game-night turn rotations) and its statistics.

Questions

Straight answers

Can I use it without an account?

Yes, that is the whole point. Install it, decline every login, and you have the complete application. An account exists only to sync between your own devices and to back your data up.

Where does my data live?

On your device, in a local database, as the authoritative copy. If you turn sync on, a copy also lives in your cloud storage so a second device can catch up. Turning sync off does not take anything away from you.

Which platforms?

The web app and Android, from one codebase. On a desktop browser the layout is width-constrained rather than stretched, so it reads like a desktop app instead of an inflated phone screen.

Is the canvas like Miro or Obsidian Canvas?

Not as it first ships. Khalst's canvas is spatial organisation for things you already have: a checklist, a photo and a link sitting near each other, rather than a general drawing surface. Connector lines between blocks are already on the list as a later enhancement, and the canvas will keep growing. What it will not do is chase whiteboard parity at the cost of staying fast for a three-second reminder.

Can I make my own timers, or only work shifts?

Your own. A timer is a template you fill in: a name, an icon, a target, whether it counts toward worked hours, and the list of intervals it runs through. A Pomodoro is 25 minutes of work and 5 of break, four times over, then a longer one. A work day is open-ended. A game night is one step per player, cycling. Adding a new kind of timer is configuration you type in, not a release you wait for.

Can I track sitting and standing?

Yes, on any timer you switch it on for. Posture is a state you mark, not a goal you chase: press when you stand, press when you sit, and Khalst records how much of the session went each way. It will tell you that you have been standing 45 minutes. It will never tell you to keep going. The label is yours to rename too, so if standing is not how your body works, the setting still is.

What about lunch, or a smoke break?

Make as many as you like. A break is just a named stretch of a session, and you decide how each one counts: paid, unpaid, or ordinary working time. Lunch, a smoke break, the school run, a colleague stopping by your desk. Same shape, your labels. Only the stretches you mark unpaid come off the total, so the number at the end of the day is the one you would actually defend.

Does it read my email or my Google Calendar?

Never your email. Google Calendar is one-way and optional: Khalst can push your items out to a calendar you nominate, and does not read events back in.

When can I actually use it?

The foundation is built and the task manager is in progress. Join the early access list and you will get a note when there is a build worth your time. Not a countdown, and not a launch announcement for something half-finished.

What will it cost?

Pricing is not settled yet. What is settled: the local, offline app will not be the thing held behind a subscription wall.

Early access

Be there for the first honest build

One list, used sparingly. You will hear when a phase lands and there is something real to try, and nothing in between.