Implementing fedeproxy in Go


I’m contemplating the idea of implementing fedeproxy in Go instead of Python. Mainly because it would provide more opportunities to share code, ideas and efforts with Gitea and go-fed. It would mean essentially throwing away the python code that already exists and rewrite it in Go. But there are no users and now is probably the last time such a radical decision can be made.

It is an intuition based on what I discovered of the Gitea project and community in the past few months. Not a thought through plan, rather a discussion starter.

What do you think?

1 Like

If I was to pursue this, my first goal would probably be to work on a testsuite

I would love it, but am biased. Aligning with Gitea would make a lot of sense. In terms of community involvement GoToSocial is inspiring I think. There’s a lotta interaction in the Matrix chatrooms. So much so that the maintainer decided to split in Dev + Misc rooms. It is a great means to engage with contributors (matrix as a tool may work just as well for Python dev, of course).

1 Like

Today I decided to go in this direction, for the reasons stated above. Learning a little more about the Gitea community was an additional motivation. And the submission of the Gitea grant proposal for federation sent today decided me.

The previous development plan covered June & July and stretched to August and September. I need to figure out a new development plan and write down why it is more sensible. I’m a little worried because my Go is not very good: I’ll need to level up significantly.


no pun intended I’m sure :laughing:

I’ve found with go that a lot of knowledge from other languages transfer well for the foundational components of the language (types, scope, etc…), and that the compiler is very helpful to point out any “footguns”. When getting started I found the tour helpful to also get those foundational elements.

With Gitea, we several of our now maintainers wrote 0 lines of go before contributing to Gitea, and now they write go quite often.

Please feel to reach out if you need any guidance in your go learning journey, our timezones overlap somewhat and I’m usually idling in the codeberg matrix room.

1 Like

The pun was actually not intended, amusing :slight_smile:

I support you in this decision, even if it is not obvious - let’s go :rocket:

Don’t hesitate to ask me, you can expose your ideas as you did before and I can help you to clarify them and provide my input :slight_smile:

Thanks for this pointer! I hope to follow the same path as these fellows developers :blush:

TLDR, I will:

  • follow the golang tour
  • write a small Go program useful to me
  • Once more comfortable - start with a good first issue on Gitea