See https://sourcehut.org/ for a vastly different source code hosting solution. If you're interested in something other than an open source GitHub clone, then that is more likely to interest you.
SourceHut is great, it still missing organizations support though (they promised to add it in a few months). The only problem compared to Gitea is deployment. SourceHut written in a mix of Python and Go, while Gitea in a pure Go. Gitea is essentially one binary. I wish SourceHut would dump Python and rewrite everything in Go.
"Everything is one binary", while convenient, just means "monolith", and usually "unscaleable monolith". That has nothing to do with Go. Plus, compiled-in filesystems and runtime-extracting applications are a thing, so anything can be a binary.
Sourcehut is specifically designed to be a composeable set of services, so regardless of language, it's never going to be one binary.
> just means "monolith", and usually "unscaleable monolith"
Hm, monolith != unscaleable monolith. Monolith just means you'd have to do vertical scaling instead of horizontal scaling, which arguably is easier and less error prone, as you still are only dealing with one instance and not building a distributed system all of sudden.
I usually try to keep to vertical scaling for as long as possible, until either the performance starts to plateau or the product/project becomes big enough that it needs different backend dev teams working on different things concurrently.
I did not say "monolith" equaled "unscaleable monolith", I said that such a setup is usually an "unscaleable monolith".
Thee reason for this is that writing anything at all to be scalable is quite difficult, and larger monoliths tends to reflect a laziness and false sense of simplicity that tends to also be reflected by the internal design. For this reason, I'd consider "large but scalable monoliths" to be in the minority.
Furthermore, I'd argue that if scaling of a monolith isn't a problem, it's simply because its load is insignificant in the first place. Once the scaling game starts, vertical scaling quickly ends up being infeasible.
Of course, that does mean that you can start out and experiment with a monolith while a product is young, but I'd prefer to have hashed out the overall design before I start dealing with production systems.
I'd design components around clearly distinctive areas of functionality rather than the distinctive teams that need to write it.
Imprints on websites are only required in a few countries. Frankly, I find it absurd that on the one hand, my contact details as a domain owner are being removed from WHOIS citing data protection, but on the other hand I am required by law to put the same information on the website I'm running on the domain.
Believe it or not, hosting costs money. It's just that you're not the customer at GitLab and GitHub with free accounts, but simply lure to bring in paid customers. This means that your interests is not what drives company decisions.
Sourcehut as a company is designed to make the relationship between you and the company clear: You are the paying customer, and funding the services. There is no secret agenda or external investor whose interests they must please. Plus, it's the most transparent company I know of.
That is entirely your choice. In.my experience, there are many companies out there that provide good services, but don't publish any address on their website. I am sure that you could get one if you ask nicely. It just doesn't make sense to post that info publicly in every case.
I love it, I can't say bad things about it. I can't wait until the "hub" service is finished, it will allow you to combine any number of the other services into some sort of project structure. I love the builds service, too, it's really nice and easy to use. I use the todo service as my life tracker.
Yep, the builds service is nothing short of amazing. It's super useful to me because it lets you easily target a huge number of systems, including BSD systems that couldn't be supported through Docker or the like.
They added the ability to take build artifacts now which is great. I haven't used it yet, but I plan to use it for my static gen site eventually.
I'd love to be able to use my own image, though, I feel bad everytime my build script has to use 3 minutes of build server slot time to download and install a bunch of packages before it actually builds my project, if I could make a custom docker image to build in, or there was caching, it would use less time.