I permits the access of my self hosted services via a cloudflare tunnel, do you think it is enough by default to handle the bots? Also I don't particularly want that people can find my portfolio just like that without a direct link from my LinkedIn or my resume so even if I use Codeberg I will not let it fully public.
comments
Just like everyone else, I'll also recommend forgejo. But be prepared to handle bot traffic if you self-host it. My instance was hit almost constantly until I added strict rate limits, and made most of the stuff private. For a portfolio, I think Codeberg (or GitHub, that's where everyone looks for stuff) is better that self-hosting. But it can be good to keep a private instance for mirrors.
GitHub. You're hosting public stuff so there's no more risk of your data being sold on GitHub than anywhere else public. GitHub is what recruiters understand and expect.
I'll get downvoted by extremists but this is the best option if you want a job and aren't also an extremist.
I would consider Codeberg or maybe even Tangled for actual projects you're working on, but for just showing stuff of there's no advantage to not using GitHub.
To add to the Forgejo circlejerk you can also self host it. It's managed by a democratic non-profit and has very active development. The UI is also pleasant to look at with nice diff/PR views.
The self hosting thing is a major safety point since if forgejo somehow fails in 10 years (I think it will be dominant in 10 personally) you can move to a self hosted instance with self hosted action runners. This makes it safe to move company accounts onto it but you might have issues with hard github dependency such as the github API or other organisation features.
Forgejo should be the first choice when looking for alternatives, although enterprise size companies should also consider Gitlab.
git isn't really made for binary files either. i understand the desire if you're already using it for source control but if not i'd recommend looking at something else.
that's a good point, but the tool I use allow to convert schematic into pdf which is maybe easier to show as a preview. Anyway I use kicad and Altium format.
I'm not aware of any advantage of gitea over forgejo. I'm running the latter myself and I'm very happy.
Gitlab provides more corporate bling bling around the core git experience than forgejo but is also way heavier.
I'd check if jorgejo fulfils your needs.
Also in addition you could check out codeberg.org which runs forgejo and is a nonprofit - especially when it comes to recruiters a public facing entity might look better to someone who has no idea of self hosting.
I really enjoy forgejo though, it's just a very straight forward piece of software which does what's it advertising.
what format are your files in? if you want to show schematic previews from like gerber files i think you need something like a file store instead of git.
It's a single line of configuration to turn off some long-running tests.
On one hand, that's not exactly the high-volume slop that other repos are subject to, and doesn't affect how I use Git.
On the other hand: why did we need AI to write this?
thanks for that quote, found the original. Good read https://pluralistic.net/2025/09/27/econopocalypse/#subprime-intelligence
"AI is the asbestos we are shoveling into the walls of our society and our descendants will be digging it out for generations."
Peak of CI. Won't ever get better 🤣
Like Jenkins pipelines? /s
I don't use either privately, but it was a nice read. The only thing I'd miss from gitlab is their CI. IMO, its the best one out there. Moving to woodpecker CI would be a massive downgrade. It just baffles me that everybody's copying Github Actions instead of making something better.
Yeah, some commit messages are very not good either
It's why standards like conventional commits helps a long way in the workplace

Yeah also people get into a mess and don't understand the state of the repo. Like they're organising files without ever running ls. If you ask these CLI fanatics for the solution they'll say "you don't need a GUI, just run git log --tree --oneline --decorate --all"... which is just a poor man's GUI.
The GUI thing is basically a religion.
I've mentored plenty of juniors that could barely commit+push.
Whenever they ask me for help to do anything remotely complicated the conversation is always the same.
+ you have to click here, then click there
- but how do I do it in the CLI though?
+ Idk, I barely use the CLI. I believe it's some git command. But you can easily do it in the GUI, it's 2 clicks
- <does the command> that didn't work <wastes 20 minutes trying to make it work>
+ Fine, I'll search for the command.
<5 mins later>
+ Here is the command
- that worked!
Every. Fucking. Time.
e.g. checkout for multiple things, or should it be separated to multiple (switch, restore, checkout).
I felt they were pretty clear here. checkout is overloaded. switch and restore are the new, simpler ways. I switched (ha) myself and it was painless.
I also get the reluctance to deprecate or delete checkout because the whole world uses it
+1 on the Git Graph extension. Love it as a daily driver.
Largely yes, but also having it squashed requires better commit messages and comments to show what was done for what reason. But yes, bisect is the only reason I'm fine with squashing
Because less merge conflicts (we also rebase on top of master each time we commit)
I understand. Just... y tho