Lit.jl — A Simple, Data-Centric Web App Framework for Julia
NOTE: Currently supported platform: Linux x86_64 (which also works on WSL)
Hi everyone,
I’m happy to introduce Lit.jl, a new Julia web app framework designed to make it easy for scientists, researchers, and data practitioners to build interactive web applications without requiring frontend experience.
Live Demos: https://lit.coisasdodavi.net/ Documentation: https://lit.coisasdodavi.net/docs/build/docs/getting-started/install Repository: https://github.com/nidoro/Lit.jl
What Lit.jl Is
Lit.jl takes inspiration from frameworks like Streamlit for Python, but is built specifically for the Julia ecosystem. It lets you write Julia scripts that become interactive web apps — with simple UI elements, reactive behavior, and minimal boilerplate.
No frontend skills needed
You build your app purely in Julia; Lit handles the UI and web server.
Scripting-first model
Apps are just Julia scripts that run from top to bottom on interaction — familiar and predictable.
Data-centric design
Built for data workflows, dashboards, and exploratory interfaces that combine computation and UI.
Fast iteration
Changes reload quickly, letting you iterate on app logic and layout without heavy overhead.
Why Lit.jl?
Julia has many strengths for numerical computing and modeling, but simple interactive apps have traditionally required stitching together web frameworks or external tools.
Lit.jl aims to fill that gap with:
a minimal, familiar API
a design that prioritizes exploratory data interaction
no need to write HTML/CSS/JS to get useful applications running
It’s a solid choice for dashboards, demos, teaching tools, or lightweight GUIs for analysis.
Come Try It, Give Feedback
Let us know what you think! Feel free to open issues here: https://github.com/nidoro/Lit.jl/issues
No permission required. You only need to follow the rules, like naming of your package and defining the minimal and maximal version of your dependencies in your Project.toml.
Impressive! The demo is a little bit laggy, even when change to the page with a simple control. I don’t know whether it is caused by the server or the ttfx of julia?
Yeah, I found out about that when I tried to register it yesterday. Sad. At this point it’s just too much work to change the name on everything: repo, source code, prefixes, website, logos, docs, demos, tutorial, domain names, paths and folders. It is not a small project. And I would rather focus on other things, so I guess I’ll just stay out of General.
Well, it would be sufficient to change the name of the repository. And that is less than 5 minutes of work. And in the documentation, that is just search-and-replace.
Finally, you can also register a package with a shorter name. It just does not work automatically; you can request a manual exception from the maintainer.
The chance that many people will use your package is much higher if it is registered.