@toby3d soft fork is when changes are rebased or cherry picked on top of the upstream. Hard fork is when you just commit on top in your own way. Forgejo has additional features on top of Gitea