Combining the best of Javascript
In addition to everything AdonisJS has to offer, AAXT adds:
AlpineJS, HTMX and Tailwind — Installed, configured and ready to go.
HTMX Fragments — Automatically receive what's needed; from entire pages, fragments or nothing!
Caching — Out of the box on server (using BentoCache) and client (using ETag).
Structured views — Using Adonis's Edge templating system.
Transitions — Animate between HTMX requests using HTMX, AdonisJS or CSS transitions.
Preload — Super responsive navigation thanks to the HTMX preload extension.
Just an npm install away.
Replace my-axxt-project with the name of your project.
Here are some of the most common frequently asked questions.
Quite simply; I wanted something that was end to end Typescript that didn't feel like a frontend framework trying to be full-stack. AdonisJS gives you the powerful Rails/Laravel-like framework in Typescript with baked in routing, database ORM, etc. while AAXT supplies a standard, best practice way to serve your frontend code.
Inertia is great, but it requires a whole heap of configuration in Adonis and your front end to get it working. AAXT replaces this with HTMX and a small middleware that automatically handles the HTML to serve based on the request. It also allows prefetching, html fragments and whole page refreshes. Sending HTML fragments can save a lot of network traffic as you are not sending the whole page every time a user requests it.
I feel like AAXT is pretty feature complete and I don't want it to become too large, but if you really think there is something I've missed create an issue on Github and we can discuss. Otherwise, the framework is open source so feel free to fork it and add it yourself.
This can occur in development
when HTML fragment caches are not re-generated during a hot-reload. By default, AAXT uses an in memory cache which
can be cleared simply by restarting your application. If you are using a different caching technology you will
need to handle the clearing in your code as you would any other cache.
You could also selectively turn
off
caching in development.
It can be used for any website or web application, however it really shines for projects that require a backend server. This way you have all the benefits of a staticly generated site (with "islands") but with the backing of a full MVC serverside framework.
I don't want to assume what database you want to use so AAXT doesn't include Lucid ORM by default. Just follow the Lucid installation steps and configure your DB of choice.