Overview
A fast, self-hosted, read-only web UI for your git repositories.
codeview serves a folder of git repositories as a read-only web UI. Point it at a directory, and every repository it finds there gets a file tree with syntax highlighting, rendered Markdown, a commit log, diffs, branch compare, and blame. It never writes to a repository and never fetches, so whatever keeps your mirrors in sync stays in charge of them.
It ships as one binary with the UI embedded, or as a Docker image. See it running on git.toawe.me.
Features
- Multi-organization dashboard, per organization and per repo views
- Repository lists with recent activity, branches and tags
- Works with any filesystem backed git hosting
- File tree, syntax highlighting, Markdown documents and raw downloads
- Commit log with an activity histogram, commit diffs and branch compare
- Blame view
- Fuzzy file finder
- Keyboard shortcuts
Quickstart
docker run -p 8080:8080 -v ~/code:/repos:ro -e CODEVIEW_MODE=all ghcr.io/toaweme/codeviewOpen http://127.0.0.1:8080. CODEVIEW_MODE=all shows every repository under ~/code, which suits a local checkout folder. A shared instance should leave the default public mode on, see Repositories.
Install
# docker
docker run -d --name codeview -p 8080:8080 -v /srv/git:/repos:ro ghcr.io/toaweme/codeview
# homebrew (macos)
brew install toaweme/tap/codeview
# scoop (windows)
scoop bucket add toaweme https://github.com/toaweme/scoop-bucket
scoop install toaweme/codeviewEvery release also lists a prebuilt archive for each OS and arch on the releases page.
Where to go next
public and all mode.RepositoriesHow repositories are discovered and named, and setups for a plain folder, soft-serve, and gickup.DeploymentKeeping mirrors in sync, commit graphs, resource limits, and HTTP caching.ReferenceEvery flag and environment variable, and the keyboard shortcuts.