Ziit is a free, open source time & task management project written in TypeScript and released under AGPL-3.0. It has 254 GitHub stars, 12 forks and 11 open issues, and was last pushed 27 days ago. On this registry it ranks #12 of 13 tracked projects in Time & Task Management, with 5 head-to-head comparisons available. It gained 2 stars over the last 6 tracked days.

What is Ziit?

What it is

Ziit is an open-source, self-hostable code time tracker written in TypeScript and released under the AGPL-3.0 license. It lives in the developer-productivity ecosystem as a drop-in alternative to WakaTime, and its own documentation describes it as "the Swiss army knife of code time tracking." A hosted instance is offered at ziit.app, but the project is designed so that a developer or a team can run the whole service on their own infrastructure instead, keeping coding data on a server they control. The dashboard is deliberately minimal and is inspired by Plausible Analytics, which is to say it favors a small number of clearly readable charts over a dense reporting suite.

The concrete problem it solves is ownership of activity data. Hosted time-tracking services require shipping editor telemetry to a third party, and that data reveals what a developer works on, in which repository, on which branch, and for how long. Ziit accepts the same kind of measurements — projects, languages, editors, files, branches, operating systems, and time spent coding — and stores them in a database the operator runs. It also avoids lock-in on the way in: existing history can be imported from WakaTime or from a WakAPI instance, so a migration does not start the record from zero.

Key capabilities

  • Tracks coding time sent directly from VS Code to the Ziit instance of the operator's choice.
  • Records the current project, operating system, editor, file, language, and git branch alongside elapsed time.
  • Filters statistics by different time ranges.
  • Supports login with GitHub or with an email address and password.
  • Imports existing data from WakaTime or from a WakAPI instance.
  • Generates badges that embed coding time for a project into a README.
  • Publishes a public stats page for the whole instance and a public leaderboard ranking the most coding hours.

Who uses it and how

  • Individual developers who want WakaTime-style statistics without sending activity to a hosted service, and who therefore deploy their own instance and point the extension at it.
  • Developers migrating off WakaTime or WakAPI, who import their historical records and continue tracking on Ziit without losing prior data.
  • Teams or communities running a shared instance, where the public stats page and the public leaderboard make aggregate coding hours visible to members.
  • Maintainers who want a live coding-time badge in a project README, generated from their own instance rather than a third-party badge endpoint.
  • Users of VS Code and its forks, or of JetBrains IDEs, who install the Ziit extension or plugin and sign in with GitHub or email.

Getting started

Setup starts either by deploying a self-hosted instance following the deployment documentation or by signing up on the public instance, after which the Ziit extension is installed from the IDE marketplace — the extension supports VS Code including all forks, and JetBrains, where it is listed as plugin 27391. Development requires Bun and TimescaleDB, plus a .env file created from .env.example; dependencies are installed with bun i, schema changes applied with bunx prisma migrate dev, and the server started with bun dev on http://localhost:3000.

When to use it — and when not to

Ziit

project readme (upstream, from github) — read inline

The Swiss army knife of code time tracking.

Docs
Stats
Leaderboard
Discord


Better Stack Badge ziit

[!IMPORTANT] Upvote Ziit on AlternativeTo, ProductHunt, PeerPush to help me promote it.

Star History

What is Ziit?

Ziit (pronounced 'tseet') is an open-source, self-hostable alternative to WakaTime. It provides a clean, minimal, and fast dashboard for displaying coding statistics, while ensuring privacy by keeping all data on your own server. Ziit tracks coding activity such as projects, languages, editors, files, branches, operating systems, and time spent coding all presented in a familiar interface inspired by Plausible Analytics.

Ziit

Features

  • Time tracking directly from VS Code to your Ziit instance of choice.
  • Filtering using different time ranges.
  • Clean & Minimal dashboard showing only the information needed.
  • Login with GitHub or Email and Password.
  • Import Data from Wakatime or a WakAPI Instance.
  • Saves data about your current project, OS, editor, file, language and git branch.
  • Badges to embed coding time for a project into a README.
  • Public stats page to see information from the whole Ziit instance.
  • Public leaderboard to see who has the most coding hours.
  • More to come...

How to use Ziit

First setup an instance or sign up on the public one then install the extension by searching for "Ziit" in your favorite IDE.

Supported IDE's:

For more details on how to setup the IDE extensions checkout the docs.

Development

Prerequisites

Setup

  1. Install dependencies:

    bun i
    
  2. Database Migrations: Apply database schema changes.

    bunx prisma migrate dev
    
  3. Set the environment variables: It is imporatnt that you make a .env using the .env.example as a template and set the correct values. All the instructions needed are in the example file.

  4. Run the development server: The server will start on http://localhost:3000.

    bun dev
    

Frequently asked questions

Is Ziit free to use?

Ziit is open source under the AGPL-3.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does Ziit do?

Track coding time and boost developer productivity

What is Ziit written in?

Ziit is primarily written in TypeScript. Its source is publicly available at https://github.com/0pandadev/ziit, and it has 254 GitHub stars.