Skip to main content

Respect your time boundaries in git workflows

Project description

gitlater

Respect your time boundaries in git workflows.

What is this?

gitlater is a small CLI tool that helps you commit at the right time.

It doesn’t optimize productivity. It protects your boundaries.

Why?

Sometimes the problem is not:

  • writing code
  • committing code

But when you do it.

gitlater helps you define:

“This is the time I work on this project. Not now.”

Features (v0.1.0)

  • simple time-based commit guard
  • two modes:
    • personal → allow outside working hours
    • work → allow during working hours
  • weekend & holiday awareness
  • project-level configuration
  • zero external dependencies

Installation

Using uv:

uv tool install gitlater

Or locally:

uv sync
uv run gitlater status

Setup

Initialize in your project:

gitlater init

This creates:

.gitlater/
  config.toml
  holidays.txt

Configuration

.gitlater/config.toml

mode = "personal"

[work_hours]
start = 9
end = 18

.gitlater/holidays.txt

2026-01-01 # New Year
2026-08-17 # Independence Day

Pre-commit integration

Add to your local pre-commit config:

- repo: local
  hooks:
    - id: gitlater
      name: git later
      entry: gitlater check
      language: system
      stages: [pre-commit]

Usage

gitlater status

Example:

🌙 Not now — this time is yours.

🗓 Friday • 10:08
⏳ Next window: 18:00

Philosophy

gitlater is intentionally simple.

  • no remote API
  • no auto-detection
  • no global config

It doesn’t decide your schedule.

You define your boundaries.

Roadmap

Keep it boring.

Future improvements (if needed):

  • better status output
  • small UX refinements
  • optional helpers (init, holidays)

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gitlater-0.1.1.tar.gz (20.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gitlater-0.1.1-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file gitlater-0.1.1.tar.gz.

File metadata

  • Download URL: gitlater-0.1.1.tar.gz
  • Upload date:
  • Size: 20.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for gitlater-0.1.1.tar.gz
Algorithm Hash digest
SHA256 b4030c8f1025b1b4e89136d31b3c58081a9a204e0ee840502a8f56b4631b60c3
MD5 e4914b92d6c1be154e9a28fd4855ea03
BLAKE2b-256 a50319003a4461dd9435151e0e3f370d1daa4ac1177f7806e82ad9952cff32ec

See more details on using hashes here.

File details

Details for the file gitlater-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: gitlater-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 5.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.12 {"installer":{"name":"uv","version":"0.10.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for gitlater-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9d4bcd32f466e817d829597070f64dcdc73b9bb8f14accec1523e77ed6681257
MD5 4f1679161cfad3f42d142c328e24d69f
BLAKE2b-256 c3b48eaed09499d815ef7aded12917964845cd45a568f7bb9baddbdf4905b4a6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page