kepr

@june

Modern source forge for Koh repositories

TypeScript

v3.2.5 · 270 saves · 17,225 lines · updated 5 days ago

30 files
de50af6ed620
back to HEAD
public/16.0 KB · 2 weeks ago
scripts/2.4 KB · 2 weeks ago
src/51.6 KB · 2 weeks ago
tests/26.4 KB · 2 weeks ago
biome.json361 B · 2 weeks agobun.lock20.6 KB · 2 weeks agokepr.example.tomlCopy to kepr.toml (never saved: it holds the admin password hash and the bucket key).596 B · 2 weeks agopackage.json496 B · 2 weeks agotsconfig.json441 B · 2 weeks ago
a4e1f5407345record the finished operator console in continuity (v3.0.167)1 week agof47afb6afc01draw the download day bars in the theme's colours and centre console row buttons (v3.0.166)1 week agoeb54516e9dc9split the repo workspace into overview, settings, builds and archives tabs (v3.0.165)1 week ago5487c6f1524aclose, reopen, hide or unhide ticked issues together from the console list (v3.0.164)1 week ago1440b2ee584cblock a reporter's address from filing and following up, listed and lifted in the console (v3.0.163)1 week ago0c5812ee878ashow bucket storage by repo at /admin/storage, with per-tarball delete and cleanup of Kepr's orphaned files (v3.0.162)1 week ago850a5062b8fecount downloads per repo and day, shown at /admin/downloads with totals and top files (v3.0.161)1 week ago1a625426812fdelete one file of a build, rewriting its release record first (v3.0.160)1 week ago0fb42c17ed78record the operator console's first part and what comes next in continuity (v3.0.159)1 week ago53796355d42eset Kepr up in the browser on first run with a one-time code from the terminal, then hand over without a restart (v3.0.158)1 week ago3be930495fbcswitch the bucket source between S3 and a folder remote either way from the console (v3.0.157)1 week agoa602ee4ac891change the admin password, sign out other sessions and set the domain from a new Account section, applied without a restart (v3.0.156)1 week ago9288dbfe8a4fcopy each backup to an optional backup bucket set in the console, keeping the newest 14 there (v3.0.155)1 week agode3f4637e3efraise the TypeScript ceiling to 12,600 with admin 2,800, server 2,000, issues 1,200 and CSS 3,400 (v3.0.154)1 week ago2d05e7661d88record the codex review fixes and June's operator-console asks in continuity (v3.0.153)1 week agoba443d076bcedelete builds one at a time, moving latest first and the record last, so a failed delete retries cleanly (v3.0.152)1 week ago2b4b50250d6dkey kept tarballs by strips, hidden paths and mirror epoch, recheck after every await, and rebuild mirrors in place so held handles stay usable (v3.0.151)1 week agodf02ac46afcenote the connect-test timeout flake and gating on bun test's exit code (v3.0.150)2 weeks ago756506893ff9record that Kepr may delete builds in AGENTS.md, and the session's state in continuity (v3.0.149)2 weeks ago1305a0bb9d6dhide files and folders per repo from every page, the stats and tarballs, handing the list to Koh under .kepr/hidden (v3.0.148)2 weeks ago3c2984c576fcfix the one-settings-form test that v3.0.146 saved red after adding the tarball form (v3.0.147)2 weeks agob967d82d724edelete a repo's kept tarballs from the bucket on its admin page (v3.0.146)2 weeks ago02702253e7aekeep built tarballs in the bucket under .kepr/tarballs instead of the data directory (v3.0.145)2 weeks ago9a44722de6e7delete a build from the bucket on its repo's admin page, moving releases/latest to the newest left (v3.0.144)2 weeks ago528bcf043cacedit each build's notes and visibility on its repo's admin page, replacing the releases section (v3.0.143)2 weeks ago086289d5af85edit a repo's description and details from its admin page (v3.0.142)2 weeks ago71860b49096flet a folder instance switch to S3 from the bucket section (v3.0.141)2 weeks ago4ffd21d3611bremove install lines and card order; repos sort by name and old kepr.db columns are dropped (v3.0.140)2 weeks ago3c4ab82be15caccept plain-http admin forms when the domain is localhost, so local saves stop being refused (v3.0.139)2 weeks ago58d7fe07cda0list and download every backup, back up now, and show the last failure and restore steps (v3.0.138)2 weeks ago301147eeaa38email notifications over SMTP with a test send and a retrying delivery queue (v3.0.137)2 weeks ago2d3ee7d12177raise the TypeScript ceiling to 10,500 for email and backups (v3.0.136)2 weeks agoeb098609196dadd in-app operator notifications with unread count and per-kind switches (v3.0.135)2 weeks ago987482f17e06add issue triage tabs, filters, follow-up hiding and a per-repo pause on new issues (v3.0.134)2 weeks ago364bcfc8c156turn the repo section into a selected-repo workspace with shown languages (v3.0.133)2 weeks ago3559470a0d0eallocate the last 200 reserve lines to the server area (v3.0.132)2 weeks ago63e55f152976edit, test and live-apply S3 bucket settings from the admin console (v3.0.131)2 weeks ago55425ebd763cwip: record operator rebuild handoff; 8 sandbox test failures (v3.0.130)2 weeks ago29a59bb8b319give backups their own operator sidebar section (v3.0.129)2 weeks ago88d31110724callocate approved admin and server headroom (v3.0.128)2 weeks ago0cfcf6b2b220remove signature image controls from profile settings (v3.0.127)2 weeks ago419974952a84remove unnecessary repository search (v3.0.126)2 weeks ago68cf65f02c26edit descriptions through direct click and keyboard activation (v3.0.125)2 weeks agodc1ad7f95d01show six scrollable profile activity rows (v3.0.124)2 weeks ago51905dc98553align the issue form action row (v3.0.123)2 weeks ago61dc281fbb19keep island template markup readable (v3.0.122)2 weeks ago9ca245205729raise the approved CSS allowance to 3000 lines (v3.0.121)2 weeks ago73424a9e6ac2restore Kepr 2 hierarchy and actions in repo islands (v3.0.120)2 weeks ago9af784d30135give the operator a focused workspace with separate profile editing (v3.0.119)2 weeks ago52bd51d09124show admin beside log out for signed-in operators (v3.0.118)2 weeks ago

← newerolder →

details

Kepr

Kepr is a self-hosted website for your Koh projects. It reads your Koh remote and lets people browse the code and history you choose to publish. You run it on your own domain, with your own storage, and keep working in Koh from the terminal.

Visitors can read highlighted source, see file descriptions, and inspect diffs at any save. They can download source archives or published releases, with checksums and update feeds available for releases. Bug reports and questions don't require a visitor account.

Each instance has one operator. Repositories start private; you choose which ones appear on the site. Kepr is built with TypeScript, Bun, Hono, and SQLite.

See Kepr in use · Self-hosting guide

Set up an instance

You'll need Bun and a Koh 3 remote. You can use an S3-compatible bucket or try Kepr locally with a folder remote. A public instance needs a domain and an HTTPS reverse proxy.

bun install --production
bun run start

On the first run, open /setup on your instance (http://localhost:3000/setup locally). The terminal prints a setup code. Enter it in the browser and set your password, domain, and storage connection. Kepr saves the configuration and starts syncing from your remote.

Sign in to select the projects you want to make public.