Ae

Aegis – A Self-Hosted Code Hosting Server Written in Golang

Hacker News

Aegis – A Self-Hosted Code Hosting Server Written in Golang

Hello the good people on Hacker News. In the last 6 months I've been working on a self-hosted Git server and now I'd say it has reached a stage where I felt comfortable showing it properly. For the HTTP server and frontend part, this project only relies on `net/http` and `html/template`, both of which are in Golang's standard library. This might not be the best performance-wise but I wish to cut dependencies as much as possible. If the way the whole project is structured and developed seems weird: this is the first Golang project and first serious backend project I've ever done. Before making Aegis I've only made a few small things with Node.js and have never touched Golang, and during the development a lot of things have been ignored and/or delayed for the sake of "having enough functionalities as quick as possible". At the beginning it was only meant to be a proof that I have what it takes to "learn on the job" (and to learn about Git internals of course) but it gradually snowballed from there. Currently the major things that have been implemented are as follows: + Basic things: tree/file views, commit info, history, diff; + Read-only clone by HTTP and read/write access through SSH; + Basic issue tracking and pull requests; + Namespaces; + Per-namespace and per-repository user access control; + Webhooks for external CI/CD (experimental feature; subject to change) + Snippets (à la GitHub snippets) + And many tiny things: + Labels for repositories; + UI for Git Blame; + UI for directly editing files; + 2-factor authentication w/ Email + Support for displaying `Co-Authored-By` messages + No JavaScript - works all major browsers and a lot of minor ones, including Ladybird and NetSurf. + Proper web installer for easy(-er) installation (like the one in WordPress) Some of the things that are NOT implemented but PLANNED: + 2FA w/ HOTP/TOTP and passkeys; + GitHub Pages-like thingy; + This is currently planned to be added as a part of CI... + Proper CI; + Migration from/to other hosting services; + Support for other version control software, e.g. Fossil, Mercurial and SVN + And conversion between them (to the degree that's possible). + Refactor; + Better SSH and HTTP clone/pull/push handling; + Maybe properly implement Git functionalities instead of relying on exec.Command? The code repository can be seen at https://github.com/AegisCodeForge/aegis/ . The list of planned things can be currently viewed on GitHub: https://github.com/AegisCodeForge/aegis/issues . Notes on how certain things work can be read at https://github.com/bctnry/aegis/tree/master/docs . I have set up a demo server at https://aegis-demo.sebastian.graphics if you wish to see it in action. This server is hosted on a small VPS I've rented from DigitalOcean (not sponsored), which I'll be taking down in about two weeks. It will be configured with the most basic settings possible (i.e. basically SQLite for everything). I'll leave no restrictions on user activities, but please be nice... Feedback & bug/security reports are greatly appreciated.

Share card

Actual performance

3points
Did not reach leaderboard

Launch Intel predictions

Analyze your own launch →
Indie HackersFits the IH revenue-focused audience · Strong signals: including · Missing: supports, reddit linkedin, podcasting
92%92% predicted probability of success on Indie Hackers, based on ML models trained on real launch data.
best fitHighest predicted score across all platforms for this description.
Product HuntOn track for Day 1 leaderboard · Strong signals: user, new, email · Missing: mac, agents, macos
78%78% predicted probability of success on Product Hunt, based on ML models trained on real launch data.
Hacker NewsStrong engagement from HN community · Strong signals: hacker news, io, including · Missing: https docs, excited, just released
67%67% predicted probability of success on Hacker News, based on ML models trained on real launch data.
nativeThis product was originally launched on this platform.
TrustMRRLess likely to generate early MRR · Strong signals: month, way · Missing: mobile apps, ios, personal
44%44% predicted probability of success on TrustMRR, based on ML models trained on real launch data.
AppSumoMay struggle as an AppSumo deal · Strong signals: host · Missing: plus, platform, intuitive
40%40% predicted probability of success on AppSumo, based on ML models trained on real launch data.
Acquire.comPre-revenue stage for this audience · Missing: arr, mrr, revenue
15%15% predicted probability of success on Acquire.com, based on ML models trained on real launch data.
BetaListMay not resonate with beta-testers · Missing: web3, chat, crypto
0%0% predicted probability of success on BetaList, based on ML models trained on real launch data.

Incorrect prediction on native model

Similar products

Ae
Aegis – A Self-Hosted Git Server Written in Golang67%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Aegis – A Self-Hosted Git Server Written in Golang

Hacker News3
HR
HRScan2 – A self-hosted virus and malware server70%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

HRScan2 – A self-hosted virus and malware server

Hacker News2
Po
Poxa – Self Hosted Pusher Server70%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Poxa – Self Hosted Pusher Server

Hacker News4
A
A self hosted online judge for meetups and workshops, written in Go57%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

A self hosted online judge for meetups and workshops, written in Go

Hacker News1
Te
TeslaMate – Self-hosted data logger for your Tesla (written in Elixir)73%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

TeslaMate – Self-hosted data logger for your Tesla (written in Elixir)

Hacker News2
Mi
Minimalist self-hosted CI server written on Raku77%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Minimalist self-hosted CI server written on Raku

Hacker News6
I
I Made GIF Hosting Self-Hosted75%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

I Made GIF Hosting Self-Hosted

Hacker News1
ht
htwtxt – hosted twtxt server (written in Go)70%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

htwtxt – hosted twtxt server (written in Go)

Hacker News15
In
Instanote – self-hosted pinboard68%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Instanote – self-hosted pinboard

Hacker News8
Se
Self-hosted Thunderclap68%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Self-hosted Thunderclap

Hacker News2