# Jaaz: Open Source Canvas for Local Design

> Jaaz is a desktop app that pairs a canvas interface with image and video generation. You sketch or describe visually on the canvas, and the tool creates visual results. It stores work locally and syncs with cloud services when you choose. It runs on Windows and macOS.

**11cafe/jaaz** — The world's first open-source multimodal creative assistant  This is a substitute for Canva and Manus that prioritizes privacy and is usable locally.

- Repository: https://github.com/11cafe/jaaz
- Website: https://jaaz.app
- Stars: 6,679 · Forks: 670
- Language: TypeScript
- License: NOASSERTION
- Published: 2026-09-22 · Updated: 2026-09-22 · Language: en
- Canonical page: https://hysenlabs.com/projects/11cafe-jaaz

## Privacy-first canvas with image and video generation

Jaaz is a privacy-first alternative to Canva, built on a canvas interface where you sketch ideas and the system creates images or video in response. It is an open-source tool designed for local use, allowing you to create visual content without syncing to a company server. You interact with it as a desktop app on Windows or macOS. The tool lets you set up a low-cost API plan to access cloud generation services like GPT-4o, Midjourney, or Kling, or you can run everything offline using Ollama on your machine. It targets creators and designers who want their work to stay on their computer and who prefer not to have their data tracked.

## Canvas sketching and generation

The core mechanism is a freeform canvas where you paint, draw arrows, or place text to describe what you want, and the system creates images or video in response. This interface is called Magic Canvas: you sketch and point with arrows, and the tool produces results. For video, the tool offers Magic Video, where you describe steps on a storyboard canvas and the system follows them. You can refine results through multiple conversations with the tool. Jaaz integrates with cloud APIs like GPT-4o and Midjourney, but also supports ComfyUI, a local node-based generation system. The tool can keep visual elements consistent across scenes when you ask it to place a character in multiple locations, such as placing someone in landmark buildings worldwide with matching lighting. This works by sending your canvas description to the generation service, which interprets your visual instructions.

## Building from source on Linux or Windows Subsystem

To run Jaaz from source, you need Python version 3.12 or higher. Clone the repository with git, then build the React frontend and start the Python server:

```bash
git clone https://github.com/11cafe/jaaz
cd react
npm install --force
npx vite build
cd ../server
pip install -r requirements.txt
python main.py
```

The build step compiles the React frontend using Vite, then the Python server starts. The server listens for requests from the desktop app. A development workflow runs npm run dev in the react folder to get hot reloading, which lets you iterate on the interface. You will need Node.js for npm, Python 3.12 or later, and pip to fetch Python dependencies. The pyproject.toml shows the project uses Black for code formatting and Ruff for linting.

## Local and cloud generation switching

Jaaz does not require a single generation provider. Instead, you choose at runtime through the app's settings. The tool works with local models via ComfyUI and cloud models via APIs, supporting GPT-4o, Midjourney, VEO3, Kling, and others. You can run a full local setup with Ollama, which serves models over an HTTP API on your machine, or point the app to cloud endpoints. This flexibility means you can start with a cloud trial using a low-cost API plan, then switch to Ollama if you want to avoid per-request costs. The app remembers your style preferences and visual choices across requests. There is no lock-in to a specific provider.

## Enterprise deployment and privacy scope

An Enterprise Cloud Full Edition is available for private or on-premises deployment via Docker image or full source code. This targets teams needing multi-user access with commercial licensing, so the open-source desktop version is a single-user tool. The privacy model is local-first: data does not leave your device unless you send it to an API endpoint you explicitly configure. Since you control which cloud services you use, the privacy boundary is transparent. There is no telemetry or background syncing hidden in the app. However, practical privacy depends on the models you choose. If you send sketches to Midjourney or GPT-4o, those companies see your requests. If you use only Ollama and keep the server on your machine, nothing leaves.

## When Jaaz falls short

The canvas interface requires learning a new visual language for describing designs. Unlike Canva, which has templates and asset libraries you can drag and drop, Jaaz assumes you can sketch or describe visually. The desktop-only distribution means no mobile or web-based workflow. A built-in media library is available, but the scope of included assets is not documented, nor is ease of importing external ones. The tool is advertised as keeping visual elements consistent across scenes, but the documentation does not explain what happens when the generation service cannot maintain style across many images, or when the canvas instructions are ambiguous. The tool does not appear to have batch export functions or format conversion, so you depend on your generation service's output quality.

## Alternative: Canva for structured workflows

Canva is a commercial canvas tool with millions of templates, stock photos, and design elements ready to use. It handles collaboration through shared links and teams. Canva's generation features (Magic Edit, Magic Write) are add-ons within a broader design platform. Jaaz reverses this: generation is the core, and the canvas is the interface. Canva works well for people who want templates and speed; Jaaz is for people who want control over which generation service runs the work and where the results live.

## Maintenance status and upgrade path

The last push to the main branch was on 2026-03-02, which is more than six months before today. Releases were published through August 2025 (v1.0.30), but there has been no recent activity. An enterprise offering (Cloud Full Edition) is described as a newer service, so the team may be shifting focus. For adoption, this means no guarantee of fixes for critical bugs or support for new generation model APIs without forking the code yourself. The TypeScript frontend and Python server are both present in the repository, so you can modify them, but ongoing updates to the project are not guaranteed.

## Undisclosed license requires checking the repository root

The license status is unclear. The repository metadata shows NOASSERTION, meaning the license was not disclosed. No LICENSE file is linked from the repository homepage or main documentation. Before using Jaaz in production, check the LICENSE file in the repository root to verify what reuse is permitted. This is critical if you plan to modify the code or redistribute it.

## Conclusion

Adopt Jaaz if you want a Canva-like interface that keeps your work on your machine and gives you control over which generation services you use. It is not for you if you need collaborative drawing tools or if your work requires integration with print vendors. Before diving in, verify that the Python 3.12 requirement matches your environment and test the sketch-to-image flow with your preferred generation service.

## FAQ

### Can Jaaz run entirely offline?

Yes. You can set up Jaaz with a local Ollama instance and keep the app and models on your machine. Once you configure a local server, all work stays on your computer unless you add cloud services.

### What platforms does Jaaz run on?

Jaaz runs on Windows and macOS as a desktop application. Build instructions support macOS (dmg and zip targets) and Windows. Source builds require Python 3.12 or higher, Node.js, and npm.

### How do you control which service creates images?

You configure API keys and service endpoints through the app's settings. Jaaz supports cloud providers like GPT-4o and Midjourney as well as local image tools via ComfyUI. You can switch between services at runtime without rebuilding the app.

### Does Jaaz require an internet connection?

Only if you use cloud services. For local-only workflows with Ollama, you can run Jaaz entirely offline. If you use cloud services, the app sends requests over the network.

### What is the difference between Jaaz and Canva?

Jaaz is open-source, runs locally, and makes image creation the core of the tool. Canva is commercial, cloud-based, and treats image creation as a feature within a larger design platform with templates and stock assets. Jaaz gives you control over which services you use and where the results live.

## Sources

- [11cafe/jaaz on GitHub](https://github.com/11cafe/jaaz)
- [Issues](https://github.com/11cafe/jaaz/issues)
- [Project website](https://jaaz.app)
- [README](https://github.com/11cafe/jaaz/blob/main/README.md)
- [Releases](https://github.com/11cafe/jaaz/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/11cafe-jaaz
