MCPSERV.CLUB
Livebook

Livebook

Self-Hosted

Interactive notebooks for Elixir code and data workflows

Active(100)
5.6kstars
0views
Updated 12 hours ago
Livebook screenshot 1
1 / 2

Overview

Discover what makes Livebook powerful

Livebook is a self‑hosted, web‑based notebook platform that blends Elixir code execution with rich Markdown editing. From a technical standpoint, it exposes an HTTP API that serves a single‑page application written in Phoenix LiveView. The notebook engine runs Elixir code on demand, leveraging the BEAM runtime for concurrency and fault tolerance. Livebook’s core philosophy is reproducibility: every cell has a deterministic execution order, and the runtime can be swapped between a fresh Elixir instance, an existing node, or an embedded Mix project, giving developers fine‑grained control over dependencies and context.

Backend

Runtime

Frontend

Persistence

Overview

Livebook is a self‑hosted, web‑based notebook platform that blends Elixir code execution with rich Markdown editing. From a technical standpoint, it exposes an HTTP API that serves a single‑page application written in Phoenix LiveView. The notebook engine runs Elixir code on demand, leveraging the BEAM runtime for concurrency and fault tolerance. Livebook’s core philosophy is reproducibility: every cell has a deterministic execution order, and the runtime can be swapped between a fresh Elixir instance, an existing node, or an embedded Mix project, giving developers fine‑grained control over dependencies and context.

Architecture

  • Backend: Phoenix 1.7 + LiveView, written in Elixir. The server hosts a WebSocket connection that streams cell output and keeps the notebook state synchronized across clients.
  • Runtime: Uses Elixir’s iex under the hood, but wrapped in a sandbox that isolates each notebook. Smart cells are implemented as Plug‑style handlers that perform high‑level tasks (e.g., database queries, ML inference) without exposing raw SQL or shell commands.
  • Frontend: CodeMirror 6 powers the editor, providing syntax highlighting, autocompletion, and inline documentation via Elixir’s language server. Interactive outputs are rendered through Kino, which supports Vega‑Lite charts, tables, maps, and custom visualizations.
  • Persistence: Notebooks are stored as .livemd files—Markdown with embedded Mermaid and KaTeX blocks. This format is plain text, version‑control friendly, and can be exported to PDF or HTML via standard Markdown renderers.
  • Database: No external database is required for the core application; all state lives in memory or the file system. However, Livebook can connect to any data source (PostgreSQL, MongoDB, etc.) through Smart cells or user‑defined adapters.

Core Capabilities

  • Code Execution: Evaluate Elixir expressions, compile modules on the fly, and capture output streams in real time.
  • Smart Cells: Declarative syntax for tasks such as #sql, #plot, or custom macros, reducing boilerplate.
  • Rich Output: Kino widgets expose interactive controls (sliders, dropdowns) that can drive re‑evaluation of cells.
  • Collaboration: Multi‑user editing with operational transformation; changes propagate instantly via Phoenix Channels.
  • Extensibility: Developers can write custom Kino widgets, Smart cell handlers, or even integrate third‑party libraries by packaging them as Mix dependencies and loading them into a runtime.

Deployment & Infrastructure

Livebook is container‑first. A pre‑built Docker image (ghcr.io/livebook-dev/livebook:latest) runs on any OCI‑compatible platform, making it trivial to deploy on Kubernetes, Docker Compose, or a bare metal VM. The application is stateless; notebooks can be mounted into the container’s /notebooks volume, enabling persistent storage across restarts. For high‑availability setups, multiple instances can be fronted by a load balancer, as the session state is stored in Phoenix’s :ets table and can be persisted to Redis if desired.

Integration & Extensibility

  • APIs: Livebook exposes a RESTful API for programmatic notebook creation, cell evaluation, and result retrieval. Webhooks can be configured to trigger external services on cell changes.
  • Plugins: The livebook_plugin interface allows third‑party developers to add new Smart cell types or UI components without modifying the core codebase.
  • Custom Runtimes: By pointing Livebook to an existing Mix project, developers can introspect application modules, run tests, or generate documentation directly within a notebook.

Developer Experience

The configuration surface is minimal: environment variables control ports, authentication, and storage paths. The official documentation (hexdocs.pm/livebook) is comprehensive, with code examples that cover every major feature. The community is active on GitHub and Discord, providing quick support for integration questions. Because the codebase is pure Elixir, developers familiar with Phoenix and LiveView can contribute quickly.

Use Cases

  • Data Science & Analytics: Build interactive dashboards that query databases, plot Vega‑Lite charts, and adjust parameters in real time.
  • DevOps & SRE: Automate routine tasks (log queries, health checks) with Smart cells and share results across teams.
  • Education & Training: Create reproducible learning materials where students can run Elixir code directly in the browser.
  • Internal Tooling: Rapidly prototype internal dashboards or documentation tools that can be deployed as a self‑hosted service.

Advantages

Livebook’s tight integration with Elixir gives it a performance edge for concurrent workloads. Its pure Markdown notebook format ensures easy version control and collaboration without the need for proprietary formats. Open‑source licensing (Apache 2.0) removes cost barriers, and the ability to run anywhere—from a laptop to a cloud cluster—makes it highly flexible for both hobbyists and enterprise teams.

Open SourceReady to get started?

Join the community and start self-hosting Livebook today

Weekly Views

Loading...
Support Us
Most Popular

Infrastructure Supporter

$5/month

Keep our servers running and help us maintain the best directory for developers

Repository Health

Loading health data...

Information

Category
other
License
APACHE-2.0
Stars
5.6k
Technical Specs
Pricing
Open Source
Docker
Official
Supported OS
LinuxWindowsmacOSDocker
Author
livebook-dev
livebook-dev
Last Updated
12 hours ago