from Hacker News

Show HN: Sorcia – Self-hosted web front end for Git repositories, written in Go

by mysticmode on 3/25/20, 4:08 PM with 30 comments

  • by CameronNemo on 3/25/20, 8:52 PM

    Glad to see new work in this space. Sorcia looks very clean, and well implemented.

    I only noticed one issue, which is very much an edge case: when trying to view a file with third party JS disabled (i.e. the Cloudflare JS sourced script), the file is rendered quite poorly. Would be nice if the service degraded gracefully and used a simple pre tag or similar.

    I must also admit that I am interested in a more "non-technical" git frontend -- one that puts the file tree up front and center, leaving details like remotes and commits in out of the way views.

    If anyone is interested in other options, see also:

    * https://git.nemo157.com/grarr (Rust, the UI themes are a little tacky IMHO) * https://github.com/emersion/matcha (also in Go, but not very complete or performant...)

  • by mysticmode on 3/25/20, 6:24 PM

    Hi, OP and author of the project here.

    You could check the landing page of this project here: https://sorcia.mysticmode.org/

    I've put up a FAQ and Features section with screenshots, so it is easy for you to look at it and see why I've built this software.

  • by tdy721 on 3/25/20, 9:43 PM

    Front end for git in go. Surely you stumbled across GOGS? https://gogs.io/
  • by bpizzi on 3/26/20, 10:54 AM

    Tangential: lastly I was searching for an easy to deploy, easy to use readonly html frontend for git repositories that could be reached via an URL subpath behind a reverse proxy, served from a container.

    The use case is to let website owners see what their developers are changing in the source code that I'm hosting for those owners, and to embed this in the existing dashboard of mine where the owners can see what's happening on their servers. I would handle myself the part where the source code modifications are committed to the underlining git repositories, and a nice bonus would be that those repositories would act an additional backup strategy.

    Unfortunately nothing came close to this simple wishlist, I was unable to get the likes of git-web or gitiles working under those constraints, I tried 4 or 5 at least.

    I should have a look at Sorcia then!

  • by roguas on 3/25/20, 9:07 PM

    I would consider different name for "tree". It ain't obvious to me if it is tree graph for my git tree or tree of catalogue in source.
  • by mroche on 3/26/20, 3:42 AM

    Very cool! Although I noticed (at least in Safari and iOS) the contributors page has 23px widths for the profile pictures.

    Front-ends like these are really cool. They allow simple, self hosted solutions strictly for code that can then be mirrored to other, more complex solutions if desired. Or if you like working with very minimal tooling.

  • by nirui on 3/26/20, 2:41 AM

    This kind of simple design has grown on me after I tried sourcehut. I kind like it, it's light and snappy, no extra loading bar is needed.

    My questions:

    - Can you make it a drop-and-play Docker image?

    - Why not host JavaScripts like `highlight.js` directly on the Sorcia server? That way LAN-only user will be able use this software as well.

  • by jlelse on 3/25/20, 8:41 PM

    Looks nice and clean. Minimalism. I like what I see in the screenshots.
  • by yandrypozo on 3/25/20, 11:10 PM

    Constructive recommendations: - add tests (I couldn't find a simple _test.go file) - relative imports aren't recommended in Go (pkgs like "sorcia/model") - please rethink/avoid global (package) variables like middlewareDB (https://git.mysticmode.org/r/sorcia/tree/master/middleware/m...) - avoid adding logic in the init() functions - screenshots?
  • by savolai on 3/26/20, 8:47 AM

    Looks cool. Responsive layout, please. Painful to browse on iOS phone.