Go to file T
Code
.github Add build infra: Makefile, golangci-lint, air, GitHub Actions CI
cmd Wire shithubd config print/validate; enrich version with sink summary
docs Add storage config block (repos_root + s3.*) with all-or-nothing s3 validation
internal Add WriteAtomic helper with crash-safe tempfile-then-rename + fault-injection test
seeds Add sqlc config + meta queries + generated metadb package + integration test
.air.toml Add build infra: Makefile, golangci-lint, air, GitHub Actions CI
.env.example Add storage config block (repos_root + s3.*) with all-or-nothing s3 validation
.gitignore Extend .gitignore for build artifacts and editor junk
.golangci.yml Add build infra: Makefile, golangci-lint, air, GitHub Actions CI
CONTRIBUTING.md Add README, CONTRIBUTING, SECURITY (pre-launch posture)
LICENSE Add AGPLv3 LICENSE
Makefile Add Makefile DB targets + docs/internal/db.md schema-conventions reference
README.md Add README, CONTRIBUTING, SECURITY (pre-launch posture)
SECURITY.md Add README, CONTRIBUTING, SECURITY (pre-launch posture)
docker-compose.yml Add docker-compose with Postgres 16 + .env.example
go.mod Add minio-go dependency for S3-compatible object storage
go.sum Add minio-go dependency for S3-compatible object storage
sqlc.yaml Add sqlc config + meta queries + generated metadb package + integration test

shithub

GitHub. Open source. Without Copilot.

shithub is a feature-complete, self-hostable, AGPL-licensed clone of GitHub. The full experience — repos, issues, pull requests, organizations, actions, social feed, search, settings, ssh & https git protocols — minus the AI integrations.

Status: pre-launch. Not yet hosted. The codebase is currently developed against an embedded plan; expect rapid change.

Why

GitHub is a well-built platform with broad feature coverage. The aggressive Copilot push has changed the product's character. shithub aims to recreate the parts that worked while staying honest about what an open-source forge can be.

Quickstart (development)

make dev          # hot-reload server on http://localhost:8080
make test         # run tests
make build        # build bin/shithubd
make ci           # full CI pipeline locally (mirrors GitHub Actions)

Requires:

  • Go 1.22+
  • golangci-lint, gofumpt, goimports, air (installed via go install per the Makefile or Homebrew)

Layout

cmd/shithubd/   # main entry point + subcommands (web, ssh, worker, migrate, version, ...)
internal/       # domain packages (web, auth, repo, git, issues, pulls, ...)
templates/      # html/template files
static/         # css, js, images, logo
migrations/     # SQL migrations
docs/           # public-facing docs
deploy/         # Ansible playbooks + systemd units

License

AGPLv3. See LICENSE.

Status

Pre-launch. See CONTRIBUTING.md for the current contribution posture.

Security

To report a security issue, see SECURITY.md. Please do not open a public issue for security reports.