> nonstandard web framework (go-macaron)...
The "standard" is React and Vercel offerings. Get with the times.
> ditching go-macaron and xorm for something more widely used...
You're only supposed to use libraries that are #1 popularity in their respective category, few weeks of no commits means the library is dead.
> I would also add that I don’t even like NextJS. I’m recommending it because it’s a better engineering choice...
Yes, you read that right. This is the advice for Gitea: Github, Gitlab, SourceHut all used server-side templates, so much so that latter two are quite useful even when JS is disabled- but the "better engineering choice" (citations sorely needed) is NextJS.
Xorm is so old and disused, it's been absorbed into Gitea and the Github repo is archived as read-only. You get much better capability out of something that's widely used, that's it. I don't care at all about how "modern" something is, if you can't roll back a migration because of your ORM then you have a nonideal ORM.
> The "standard" is React and Vercel offerings
No, I was thinking Gin or Buffalo. Something that a lot of people use and that's seeing a lot of love, you know... a standard.
> they can't simply accept when someone does things differently.
Yea, that's why I continue to accept Gitea as a good piece of software. Only people who cannot accept software packages as they are go out, call them "good", and try to get people to understand how it can become even better.
As for the so what, I think the answer is just that things can be better, so if someone is out there reading this thread who has some time, they can see this and know what kind of improvements can be made.
> If it ain't broke don't fix it? Or is there some specific shortcomming that might justify a rewrite?
I’m answering that question. The information is out there, so if people want to ignore it that’s beyond my mandate. But this is still constructive since someone out there wanting to rewrite Gitea will want to know what the pain points are before they do so.
(I really do want to know, I don't mean this question in any negative way.)
{{range $i, $file := .Diff.Files}}
<div>
{{ if $file.IsSpecialFile }}
<div>Special file ({{$file.name}})
{{ end }}
</div>
{{end}}
Because of the missing </div>, instead of a list of files, it produces a file listing inside of another file listing inside of another, etc. That's just something you'd never be able to accidentally do in NextJS, or anything that uses JSX-like structure.Then there are clerical things like where to put styles and presentation logic. Gitea uses a mix between jQuery and Vue, with CSS rules sprinkled in randomly. The result is that by looking at the template and the class names on each element, you have no idea whether a class name or ID is going to have significance to jQuery, CSS, or if it's just dead code. Something like styled-components, and use of a single stack (Next as opposed to jQuery+Vue) eliminates the fear and clerical aspect of development.