explaingit

davidpdrsn/axum-live-view

Analysis updated 2026-07-09 · repo last pushed 2024-03-27

214RustAudience · developerComplexity · 3/5DormantSetup · moderate

TLDR

Build interactive real-time web apps without JavaScript. Your Rust server stays connected to the browser and pushes live updates.

Mindmap

mindmap
  root((repo))
    What it does
      Real-time updates
      No JS needed
      Server-side rendering
    How it works
      WebSocket connection
      Sends only changes
      Auto reconnects
    Use cases
      Live chat apps
      Real-time dashboards
      Interactive forms
    Audience
      Backend developers
      Rust programmers
    Status
      Work in progress
      Experimental
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Build a live chat where messages appear instantly without writing JavaScript.

USE CASE 2

Create a real-time dashboard that updates as data changes on the server.

USE CASE 3

Make an interactive search box that updates results as the user types.

USE CASE 4

Build a live notification feed that pushes updates to the browser automatically.

What is it built with?

RustaxumWebSocketsHTML

How does it compare?

davidpdrsn/axum-live-viewazw413/ternosqewer33/ratscad
Stars21410398
LanguageRustRustRust
Last pushed2024-03-272026-03-19
MaintenanceDormantMaintained
Setup difficultymoderatemoderatemoderate
Complexity3/54/53/5
Audiencedevelopergeneraldeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires Rust and familiarity with the axum web framework, the project is experimental and APIs may change.

No license information provided in the explanation.

In plain English

axum-live-view lets you build interactive, real-time web interfaces without writing any JavaScript. Instead of sending a static page and then layering on client-side code to make things interactive, your server keeps a live connection open with each user's browser and updates the page as things change. Think of it as a way to build something like a live chat, a real-time dashboard, or an interactive form without touching frontend JavaScript at all. Here is how it works under the hood. When a user first visits your page, the server sends back fully rendered HTML, which is good for search engines and fast load times. Then a small piece of built-in JavaScript connects back to the server over a persistent connection called a WebSocket. From that point on, when a user clicks a button or types in a field, that event goes straight to your server-side code. Your code decides what happens, re-renders the relevant HTML, and sends only the changed pieces back to the browser. The browser applies just those small updates, keeping everything feeling snappy. If the connection drops, the client automatically reconnects and starts fresh. This is useful for developers who want to build rich, app-like experiences but prefer to keep all their logic in a single backend codebase rather than splitting work across a frontend and backend. For example, if you are building a counter that increments when clicked, a search box that updates results as you type, or a notification feed that updates live, this approach handles it cleanly. You define your interface as a template with dynamic values, wire up what happens on click events, and the framework takes care of the communication layer. The project is explicitly marked as a work in progress, and the author warns that everything is subject to change and it should not be used for anything serious yet. It is essentially an experiment bringing a popular pattern from the Elixir and Phoenix framework world into Rust.

Copy-paste prompts

Prompt 1
How do I set up a basic axum-live-view server in Rust that renders an interactive HTML page with a button that increments a counter when clicked?
Prompt 2
How do I define dynamic HTML templates in axum-live-view and wire up click events so the server re-renders and sends only the changed parts back?
Prompt 3
How do I handle WebSocket reconnection in axum-live-view if the connection drops, and does the client automatically recover state?
Prompt 4
How do I build a live search box in axum-live-view where the server filters results as the user types, without any frontend JavaScript?

Frequently asked questions

What is axum-live-view?

Build interactive real-time web apps without JavaScript. Your Rust server stays connected to the browser and pushes live updates.

What language is axum-live-view written in?

Mainly Rust. The stack also includes Rust, axum, WebSockets.

Is axum-live-view actively maintained?

Dormant — no commits in 2+ years (last push 2024-03-27).

What license does axum-live-view use?

No license information provided in the explanation.

How hard is axum-live-view to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is axum-live-view for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.