Skip to content
GrayHatterPublic

About

slightly better than the forge you're using

Topics

Resources

Stars

12 stars

Watchers

2 watching

Forks

Latest commit

 

History

1,540 Commits

Folders and files

Repository files navigation

srctree

Share your code. ( or code sharing: without breaking the back button )

Srctree (read as: source tree) is a bit different from your standard model. Srctree is built for git repos, and adds to the 'networking' side of whatever flavor of distributed workflow you like. There's no wrong way to enjoy writing code, and every workflow deserves full support! It doesn't matter if your home is the terminal with git push, a browser with f5, or an email client and reply-all. Even curl only users should enjoy sharing code:

curl https://srctree.gr.ht/repo/srctree/blob/README.md

Features

  • Issues
  • Diffs
  • Commit View
  • Blame
  • Repo Search
  • CI (wip)
  • Remote Issue Fetching
  • Single binary
  • Bot Detection
  • mTLS Authentication
  • Anonymous git push

Setup

Using a reverse proxy is the preferred method, there's a sample config in contrib/nginx.conf where zig build run should just work.

But if you're unable to stand up a reverse proxy (a local proxy development should be supported) you can try zig build run -- http to use http mode. Full HTTP support is planned for "eventually" but no guarantees are made yet :)

Good luck!

TODO

  • srctree
    • view code
    • view commits
    • create repos
    • create issues
    • clone repo from remote
    • [-] diff/code review
    • [-] CI API
      • build.zig support
      • every other build system.
    • blame view for files
    • blame view for dirs
    • view history for file (navigable blame view)
    • syntax highlighting (ish)
    • native syntax highlighting
      • zig
      • every other language
    • README markdown support/formatting
    • fold repo .files by default
    • email support
      • [-] outgoing email (partial)
      • incoming email
    • submit diffs (via git)
    • auto pull from upstream
    • auto push to downstream
    • smart push/pull (between networks/peers)
    • support for viewing branches
    • network collection & browsing
    • owner heat map
    • owner activity journal
      • commits
      • anything other that
    • users
      • account creation UI
    • [-] Integration with other web VCS
      • clone issues
      • everything else
  • git
    • raw blob
    • packed blob
    • [-] tree/blob
      • read
      • write
    • packed delta
    • tags
    • refs
    • remotes
    • git web
    • PGP support
    • repo init
    • push
    • pull
    • blame
    • diff/patch generation

About

slightly better than the forge you're using

Topics

Resources

Stars

12 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages