Skip to content

Latest commit

 

History

825 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Karbonized

carbonizedscreen

Karbonized is a visual editor for creating images of code snippets, mockups and social graphics. Arrange blocks — code, text, images, devices, shapes, QR codes and your own HTML components — on a canvas and export the result in seconds.

Free and Open Source. Made with 💙 and ReactJS in 🇨🇺

Version 2.0 React Badge Electron Badge TypeScript Badge Tailwind CSS Badge Licence

✨ What's new in 2.0

  • New interface — a calmer, denser design with light and dark themes across the whole app.
  • Command palette — press Ctrl/ + K to search and run any action, with its shortcut next to it.
  • Autosave — your workspaces are saved as you work and restored when you come back.
  • HTML blocks with a real code editor — edit HTML, CSS and JavaScript in a Monaco-powered editor with an explorer, file tabs, a live preview, a console and auto-generated controls for your variables. Works offline.
  • Custom components (.kcomponent) — package HTML blocks as YAML files, import them into your library and reuse them in any project.
  • Consistent shortcuts — shortcuts no longer fire while you type, and tools use single keys like in design apps.

See the full changelog.

🚀 Features

  • 🧱 Block-based canvas: code snippets, text, images, icons, shapes, phone and window mockups, tweets, badges, QR codes and HTML blocks. Move, resize, rotate, crop and warp them, group them into layers and undo any change.
  • 🎨 Backgrounds: solid colors, gradients, textures, images and dynamic backgrounds, with blur and noise.
  • 🧩 HTML blocks and components: build your own blocks with HTML/CSS/JS, expose variables as controls and actions as buttons, and share them as .kcomponent files.
  • ⌨️ Keyboard-first: a command palette and shortcuts for tools, editing, zoom and exporting.
  • 💾 Export: save your designs as PNG, JPEG or SVG, or share them directly.
  • 🗂 Projects: several workspaces at once, automatic session saving, and .kproject files you can save, open and turn into templates.
  • 🖥 Multi-platform: use Karbonized as a Progressive Web App (with offline support) or as a desktop app for Windows, Linux and macOS.
  • 🆓 Free and open source.

⌨️ Keyboard shortcuts

Press Ctrl/ + K to see every command. The most common ones:

Action Shortcut
Command palette Ctrl K
Select / Pan / Crop / Warp tools V / H / C / W
Undo / Redo Ctrl Z / Ctrl Shift Z
Duplicate selection Ctrl D
Zoom in / out / reset / fit Ctrl + / Ctrl / Shift 0 / Shift 1
Lock aspect ratio Ctrl Shift L
Toggle properties panel Ctrl B
New project / Open project Alt N / Ctrl O
Save project / Export Ctrl S / Ctrl Shift E

In the HTML block editor:

Action Shortcut
Save block and return to the canvas Ctrl S
Refresh preview Ctrl Enter
Toggle explorer / preview panel / console Ctrl B / Ctrl J / Ctrl Shift Y
Open HTML / CSS / JS Alt 1 / Alt 2 / Alt 3
Back to the canvas Esc

On macOS use instead of Ctrl.

📚 Documentation

🏗 Building

🛠️ Requirements

  • Node >= 18
  • Yarn 4 (via Corepack: corepack enable)

Install the dependencies:

yarn install

🌐 Web app

Start a development server:

yarn dev

Build for production (type-checks first):

yarn build

🖥️ Desktop app

Run Karbonized with Electron in development mode:

yarn electron:dev

Build the desktop app for your system:

yarn electron:build

The generated binaries are in ./release/{version}/. Platform-specific builds are available with yarn build:win, yarn build:mac and yarn build:linux.

✅ Code quality

yarn lint     # ESLint (should report no errors)
yarn format   # Prettier

🧰 Tech stack

React 18, TypeScript, Vite, Tailwind CSS v4, Radix UI / shadcn/ui, Zustand, Monaco Editor, Electron and Capacitor.

©️ Licence

This project is under Apache-2.0 Licence Terms and Conditions.

👥 Contribution

Contributions, bug reports and ideas are welcome — open an issue or a pull request.

Releases

Packages

Used by

Contributors

Languages