What's the recommended way to set up a development environment for KBin?

I haven't been able to find an answer for this, so I'm hoping asking this here would be appropriate.

I'd like to try my hand at some development of Kbin but I don't exactly know how to test a web application of this scale. Obviously, the roadblock for me is understanding how to develop and test features without having a dedicated domain name -- as my understanding is that federated services heavily rely on the use of a domain name. This also would imply that the server has to be exposed to the internet, much like development of a email client.

But obviously I must be missing something here. Is there any recommended guidelines for setting up a development environment for Kbin? Ideally, a containerized approach via Docker or Podman would be ideal as I wouldn't want to muck with my host system. Additionally, is it possible to use hostnames in order to simulate and test federation capabilities? Lastly, are there any thorough reads (blogs or forum posts) that go in depth with developing federated web applications and how the development process differs from standard webdev?

e569668,
@e569668@fedia.io avatar

I believe you should be able to run it all locally without a hostname. The guides for doing so are here, depending on how you want to:
https://codeberg.org/Kbin/kbin-core/wiki/Admin-Bare-Metal-Guide
https://codeberg.org/Kbin/kbin-core/wiki/Admin-Docker-Guide

Edit: I should clarify, I meant to test things without activitypub. As the other poster mentioned you would need a valid hostname and valid certs for federation testing. Though it might be possible to run multiple local kbins that trust each other, not sure there is going to be much information on that

Someone just went through this themselves in the matrix kbin development channel so you could also potentially find help there if you're having issues. One thing that came up during that is https://codeberg.org/Kbin/kbin-core/pulls/132 has a bunch of changes to those docs which might make it easier

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • kbinMeta@kbin.social
  • meta
  • Macbeth
  • All magazines