Skip to content

karanbalani/shiplog

Repository files navigation

shiplog

Daily GitHub activity snapshots into your own Postgres, rendered back into a profile README.

shiplog is a forkable profile-README pipeline. You own the database, GitHub Actions keeps it fresh, and a daily publisher writes the generated README to the repository you choose.

Why shiplog?

Why not?

People care about control over their own data. Your contribution history is part of that data too, and it should not only live inside a platform-owned graph.

shiplog gives you your own contribution archive and one umbrella for activity across platforms. GitHub is supported first, and the shape is built so more providers can fit later.

Start Here

  • Setup guide: fork the repo, create the database, configure tokens, and run the workflows.
  • Config builder: generate shiplog.config.json and the Base64 value for workflows.
  • Example config: copy this when creating your own shiplog.config.json.
  • Config schema: full JSON schema for the config file.
  • FAQ: common setup and operations questions.

What It Does

  • Collects GitHub commits, pull requests, reviews, issues, repositories, languages, and organization context.
  • Stores activity in Postgres with historical tables and daily rollups.
  • Runs scheduled GitHub Actions for freshness, history, integrity repair, housekeeping, and once-daily publishing.
  • Records short-lived diagnostic error events in Postgres for workflow investigation.
  • Uses stable GitHub IDs so username, organization, and repository renames do not split history.

Useful Docs

  • Setup guide: run shiplog in your own fork.
  • Schema: database tables, views, and timestamp semantics.
  • GitHub mapping: how GitHub data maps into shiplog.
  • Conventions: project naming and implementation conventions.
  • Contributing: development workflow for changing shiplog itself.

Main Commands

bun run init
bun run backfill
bun run collect
bun run drift
bun run maintenance
bun run errors:prune
bun run render
bun run publish

For the full setup flow, use SETUP_GUIDE.md.

Releases

No releases published

Packages

 
 
 

Contributors