A modern blogging platform with a rich block editor, AI writing assistant,
real-time collaboration, and organizations β all on the edge.
Website Β· Discussions Β· Monorepo Β· Sponsor
LixBlogs (also called Elixpo Blogs) is a free, open-source blogging platform designed for creators, developers, and teams. It gives you a beautiful writing experience with powerful tools built right in β a rich block editor, an AI writing assistant, real-time collaboration, and organizations β all deployed on Cloudflare's edge and hosted at blogs.elixpo.com.
Whether you're writing a personal blog, publishing under your organization, or co-authoring with teammates in real-time, LixBlogs has you covered. No plugins to install, no complicated setup, no premium tiers.
This is a monorepo: alongside the platform it ships @elixpo/lixeditor (the
editor on npm) and the LixEditor VS Code extension. It is part of the wider
Elixpo ecosystem.
| Feature | Description | |
|---|---|---|
| β¨ | AI Writing Assistant | Press Space on an empty line β generate text, images, and get inline suggestions |
| π§© | Rich Block Editor | 20+ block types β code, math equations, diagrams, embeds, tables, and more |
| π₯ | Real-Time Collaboration | Invite co-authors and edit together with live cursors and presence |
| π’ | Organizations & Teams | Create orgs, assign roles, organize content into collections |
| βοΈ | Auto-Save & Cloud Sync | Drafts save locally and sync to the cloud β never lose a word |
| π¨ | Themes & Customization | Light & dark modes, custom page colors, cover images, page emojis |
| π | Link Previews | Hover any link to see a rich OG preview card with title, image, favicon |
| π | Sub-Pages | Nest pages inside your blog for structured, multi-page content |
| πΌοΈ | Media Uploads | Drag & drop images, auto-compressed to WebP, tier-based storage |
| π | Library & Bookmarks | Save posts, organize into collections, track reading history |
| Tool | What it does | Link |
|---|---|---|
| π¨ Elixpo Art | AI image generation (under dev) | art.elixpo.com |
| βοΈ Elixpo Blogs | A rich, modern writing and publishing space | blogs.elixpo.com |
| ποΈ LixSketch | A hand-drawn style whiteboard for ideas and diagrams | sketch.elixpo.com |
| π¬ Elixpo Chat | A fluid, real-time AI chat experience (under dev) | chat.elixpo.com |
| π Elixpo Search | Fast, AI-assisted search | search.elixpo.com |
| π€ Elixpo Accounts | One identity (SSO) across the ecosystem | accounts.elixpo.com |
| π lixrl | Our flagship URL shortener | lixrl.com |
| πͺͺ Portfolios | Personal pages to showcase your work | me.elixpo.com |
| πΌ Oreo | The mascot's home | oreo.elixpo.com |
Developers can drop our editors into their own projects with the
@elixpo/lixsketch and @elixpo/lixeditor packages, on npm and as VS
Code extensions.
The editor that powers LixBlogs is available as a standalone npm package. Drop it into any React or Next.js app to get a fully-featured WYSIWYG editor with equations, diagrams, code highlighting, and more.
npm install @elixpo/lixeditor @blocknote/core @blocknote/react @blocknote/mantineimport { LixEditor, LixPreview, LixThemeProvider } from '@elixpo/lixeditor';
import '@blocknote/core/fonts/inter.css';
import '@blocknote/mantine/style.css';
import '@elixpo/lixeditor/styles';
function App() {
const [blocks, setBlocks] = useState(null);
return (
<LixThemeProvider defaultTheme="dark">
<LixEditor
initialContent={blocks}
onChange={(editor) => setBlocks(editor.getBlocks())}
features={{ equations: true, mermaid: true, codeHighlighting: true }}
placeholder="Start writing..."
/>
<LixPreview blocks={blocks} />
</LixThemeProvider>
);
}| Feature | Default | Description |
|---|---|---|
equations |
β | Block & inline LaTeX via KaTeX |
mermaid |
β | Mermaid diagrams (flowcharts, sequence, git graphs) |
codeHighlighting |
β | Shiki syntax highlighting β 30+ languages |
tableOfContents |
β | Auto-generated TOC from headings |
images |
β | Upload, embed URL, paste, drag & drop |
dates |
β | Inline date picker chips |
linkPreview |
β | OG metadata tooltip on link hover |
markdownLinks |
β | Auto-convert [text](url) and  |
Every feature is toggleable. Override CSS variables to match your brand:
:root {
--lix-accent: #e040fb;
--lix-bg-app: #fafafa;
--lix-font-body: 'Inter', sans-serif;
}Write .lixeditor documents with a rich WYSIWYG editor β right inside VS Code.
| Feature | |
|---|---|
| βοΈ | Rich block editor β headings, lists, tables, checklists |
| π¨ | Syntax-highlighted code blocks (25+ languages via Shiki) |
| π | Smart links β auto-convert [text](url), hover preview |
| πΌοΈ | Image blocks β upload, embed URL, paste, drag & drop |
| π | Date stamps β Ctrl+D to insert |
| β‘ | Slash commands β type / to insert any block |
| πΎ | Auto-save + manual save + Markdown export |
| π¨ | Adapts to your VS Code theme (light/dark) |
1. Install the extension from the VS Code Marketplace
2. Create a file: notes.lixeditor
3. Open it β the rich editor loads automatically
4. Type / for commands, write with markdown shortcuts
π Extension docs β
graph LR
A["π Sign Up"] -->|Elixpo OAuth| B["βοΈ Write"]
B -->|Block Editor| C["π€ AI Assist"]
C -->|Generate & Edit| D["π₯ Collaborate"]
D -->|Real-time Sync| E["π Publish"]
E -->|blogs.elixpo.com| F["π Readers"]
style A fill:#9b7bf7,stroke:#7c5ce0,color:#fff
style B fill:#60a5fa,stroke:#3b82f6,color:#fff
style C fill:#c084fc,stroke:#a855f7,color:#fff
style D fill:#4ade80,stroke:#22c55e,color:#fff
style E fill:#f59e0b,stroke:#d97706,color:#fff
style F fill:#f87171,stroke:#ef4444,color:#fff
The heart of LixBlogs is a powerful block editor built on BlockNote β it feels like writing in Notion, but built for publishing.
| Block Type | What It Does |
|---|---|
| Paragraphs, Headings | Standard text with markdown shortcuts |
| Code Blocks | Syntax-highlighted with 30+ languages via Shiki |
| Math / LaTeX | Block & inline equations with KaTeX rendering |
| Mermaid Diagrams | Flowcharts, sequence diagrams, git graphs, and more |
| Images | Upload, embed URL, paste, drag & drop β auto WebP compression |
| Links | Auto-convert URLs, [text](url) syntax, OG preview on hover |
| Tables | Full table support with header rows |
| Checklists | Interactive checkboxes with checked/unchecked styling |
| Table of Contents | Auto-generated from your headings |
| Sub-Pages | Nest child pages inside your blog |
| Date Stamps | Inline date chips with a mini calendar picker |
| Mentions | Tag users @name, blogs, and organizations |
| Dividers | Horizontal rules to separate sections |
.
βββ app/ # Next.js App Router pages, layouts, API routes
βββ src/ # React components (Editor/), views, context, AI
βββ lib/ # Server-side utilities (auth, media, tiers)
βββ migrations/ # Cloudflare D1 SQL migrations
βββ worker/ # Cloudflare Worker code
βββ packages/
β βββ lixeditor/ # @elixpo/lixeditor β the editor (npm)
β βββ vscode-lixeditor/ # elixpo.lixeditor β VS Code extension
β βββ lixsketch/ # @elixpo/lixsketch β the whiteboard editor
βββ public/ # Static assets, brand marks, fonts
graph TB
subgraph Client ["π₯οΈ Client"]
FE["Next.js 15 + React 19"]
ED["@elixpo/lixeditor"]
YJS["Yjs CRDT"]
end
subgraph Edge ["βοΈ Cloudflare Edge"]
CF["Pages + Workers"]
D1["D1 Database"]
DO["Durable Objects"]
KV["KV Cache"]
end
subgraph Services ["π Services"]
AI["LixSearch AI"]
CLD["Cloudinary"]
AUTH["Elixpo Accounts"]
end
FE --> CF
ED --> YJS
YJS -->|WebSocket| DO
CF --> D1
CF --> KV
FE --> AI
FE --> CLD
FE --> AUTH
style Client fill:#1a1a2e,stroke:#9b7bf7,color:#e8edf5
style Edge fill:#1a1a2e,stroke:#60a5fa,color:#e8edf5
style Services fill:#1a1a2e,stroke:#4ade80,color:#e8edf5
npm install
npm run devThen open http://localhost:3000.
npm run build # Build for Cloudflare Pages (@cloudflare/next-on-pages)
npm run preview # Local Cloudflare Pages preview (wrangler)
npm run deploy # Build + deploy to Cloudflare Pages
npm run db:migrate # Run D1 migrations (remote)Elixpo is made by people, in the open. 45+ contributors have shaped these tools, with a small core team steering the way:
- Ayushman Bhattacharya - Founder & Lead (@Circuit-Overtime)
- Vivek Yadav - Lead Co-Dev (@ez-vivek)
- Anwesha Chakraborty - Core Maintainer (@anwe-ch)
Everyone is welcome. See CONTRIBUTING.md and our Code of Conduct.
Elixpo has taken part in and been supported by GSSOC, Hacktoberfest, Pollinations.AI, MS Startup Foundations, and OSCI.
- π¬ Join the conversation in GitHub Discussions.
- π Submit your project to be featured across the ecosystem.
- π οΈ Contribute - browse good first issues in the monorepo.
- β€οΈ Support us via GitHub Sponsors.
Brand-ready marks and per-service icons live under public/ (logos,
mascot marks, og-image, and the Lix* brand fonts under
public/fonts/). A browsable kit is at
elixpo.com/assets.
Elixpo uses one licensing standard across every repository:
- Code - MIT (with the Oreo-trademarks exception).
- Brand & visual assets - CC-BY-4.0 (with the same exception).
The Oreo mascot, the chest E-badge, and the "Elixpo" and "Oreo" names, domains,
and palette are reserved - this protects the brand and its royalties while
keeping the code and assets free. See LICENSE and the per-product
notice board, NOTICE.
Per-repo "exclusive" artifacts (an npm package, a VS Code extension, a hosted SaaS, a paid tier) are declared here and in
NOTICE.
This repository ships:
- npm package
@elixpo/lixeditor(frompackages/lixeditor/) β the published package name on the npm registry is reserved to Elixpo; forks must publish under a different name. The MIT-licensed source may be reused. - VS Code Marketplace extension
elixpo.lixeditor(publisherelixpo, frompackages/vscode-lixeditor/) β the Marketplace listing and theelixpopublisher identity are reserved to Elixpo; the extension source is MIT but the listing/publisher are not transferred. - Hosted SaaS
blogs.elixpo.comβ the official hosted LixBlogs deployment; the brand, hosted deployment, and operational data are reserved; the source is MIT.
Developers can use @elixpo/lixeditor (npm) and the LixEditor VS Code extension in their own projects under MIT.
Made with π by Elixpo
Website Β· npm Package Β· VS Code Extension Β· Report Bug Β· Request Feature
Made in the open, together. Β© 2023-2026 Elixpo.
