Skip to content

Astro Frontend#184

Closed
markbeep wants to merge 20 commits intomainfrom
push-ltxtqxnskvvn
Closed

Astro Frontend#184
markbeep wants to merge 20 commits intomainfrom
push-ltxtqxnskvvn

Conversation

@markbeep
Copy link
Owner

@markbeep markbeep commented Feb 3, 2026

No description provided.

@markbeep markbeep mentioned this pull request Feb 3, 2026
@markbeep
Copy link
Owner Author

markbeep commented Feb 6, 2026

Dropped work on astro and replaced with jinjax in #188. Another library complicates the codebase and deployment too much, which wouldnt help with the maintenance of ABR.

Small write-up from the discord regarding the idea of another JS framework:

the problem isnt astro itself. Its great. Its the problems that arise when having to juggle both a JS and python service without straight up rewriting the whole app. With a separate frontend there are two main approaches:

  1. Do everything completely client-side and handle everything through API endpoints: Astro supports SSG to prerender each page (Im not going to do full on client-side rendering) which I can then serve using fastapi. This is a very dirty setup. Every page you visit first has to show a loading page before either redirecting you because you're not allowed to even see the page (non-account setting pages) or then showing the data. If you use the dark mode theme, you'll also get a flicker every time you load a page because with this method I can only determine your chosen theme on the client-side (I started editing the html in python before serving it, but thats a rabbit hole I dont want to fall in).
  2. Run both services separately: I want to keep ABR as a single container deployment so it is simple to deploy. So it would have to be two services in one container. Doable, but not preferable and quickly gets ugly when I want it fully backwards compatible.

I've tried out a lot of different approaches the past weeks (for example htpy and tdom in python) as well as did a lot of Astrojs with both approaches the past 3 days. None of those tick off all the requirements I have.

@markbeep markbeep closed this Feb 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant