Hacker News new | ask | show | jobs
by cyanic 1765 days ago
I built a platform for sharing git repositories: https://gitfront.io

What is your tech stack?

  Backend: Golang
  Frontend: HTML, Plain JavaScript and CSS
  Database: PostgreSQL and object storage
I run everything on a single dedicated server on a VM. Services are deployed as containers and managed using HashiCorp Nomad.

On the backend there is a custom task queue which delegates work to worker instances. Repositories are rendered as static HTML and stored on object storage. As each repository is stored as a single object there is also a custom proxy that allows serving individual files from objects. All of this is written in Go.

The frontend currently consists of a landing page without any JavaScript and a web app which builds most elements using JavaScript. Everything is styled by hand using CSS.

Why did you choose it?

I chose to use technologies that would allow me to maintain everything years from now without having to rewrite a lot of code. I wanted to have something that would run fast, work reliably, have a small number of dependencies and that would allow me to develop at a reasonable pace.

As for the infrastructure, I wanted increased availability, more security and control and lower costs.

Do you think your choices had any impact on your success?

Yes, but for me success is being able to learn, delight customers and to satisfy my own standards on how things should be done.