We have a number of libraries that are easy to use together for the backend, no fancy web framework (build your auth page yourself), no fancy client-side lispy libraries. We might have a Fighweel-like tool, but no one is interested (Trident-mode for Emacs).
There's one framework that looks promising to build fully dynamic apps in pure CL with one code base (websockets inside). It provides a GUI-like experience to build all kind of apps (a website, a chat, the snake game…): https://github.com/rabbibotton/clog/
I am using Hunchentoot, a routing library on top (easy-routes), the Mito ORM, and for the client side I am conservative: HTML templates with Djula, interactivity with HTMX, Vue if required, JS.
The great thing is that I can build a standalone binary of my web app, including the static assets, the webserver, the lisp compiler and debugger… for ±28MB unzipped and instantaneous startup times.
Not an expert, but I would expect hunchentoot https://edicl.github.io/hunchentoot/ for the backend and a Common Lisp "dsl" generating javascript for the frontend.
I am a hobbyist lisp developer and have written webapps in CL.
I use cl-who[1] for generating html and parenscript for javascript. I use clack on the backend, but hunchentoot is probably more popular. Both backends have plenty of routing libraries available (hunchentoot comes with a decent one baked in, clack does not).
postmodern is a Postgres specific sql backend that is great. There are database-agnostic SQL libraries as well (clsql and cl-dbi I believe are the two big ones) but I haven't tried them.
1: People whose opinions I trust have told me that spinneret is a better choice. It did not exist when I learned cl-who. cl-who is "good enough" for me that I haven't switched.
Here's a nice interview of a company using CL for their document processing stack: https://lisp-journey.gitlab.io/blog/lisp-interview-kina/ (edit: not a pure CL web stack: Ruby to CL logic via websockets to a lispy client side)
There's one framework that looks promising to build fully dynamic apps in pure CL with one code base (websockets inside). It provides a GUI-like experience to build all kind of apps (a website, a chat, the snake game…): https://github.com/rabbibotton/clog/
I am using Hunchentoot, a routing library on top (easy-routes), the Mito ORM, and for the client side I am conservative: HTML templates with Djula, interactivity with HTMX, Vue if required, JS.
The great thing is that I can build a standalone binary of my web app, including the static assets, the webserver, the lisp compiler and debugger… for ±28MB unzipped and instantaneous startup times.
https://lispcookbook.github.io/cl-cookbook/web.html
https://github.com/CodyReichert/awesome-cl#web-frameworks
https://lisp-journey.gitlab.io/blog/lisp-for-the-web-deploy-...