Choosing your development approach
VIKTOR offers two ways to build apps: the App Builder and local development. Both produce the same kind of VIKTOR app — the difference is in how you write and manage the code.
- App Builder — a browser-based environment where an AI assistant helps you build apps without any local setup. Great for getting started quickly.
- Local development — write your app code in your preferred IDE (such as VS Code or PyCharm) on your own machine, using
viktor-clito connect to VIKTOR. Better suited for larger or more complex apps.
note
The App Builder is under active development and updated regularly. The information on this page reflects the current version and will be updated as new features ship. For the most up-to-date list of App Builder limitations, see the Limitations section of the App Builder documentation.
Quick comparison
| App Builder | Local development | |
|---|---|---|
| Setup required | None — works entirely in the browser | Python, an IDE, and viktor-cli installed on your machine |
| Getting started | Fast — go from idea to app in minutes | Slower — requires initial setup |
| Code structure | Single app.py file | Multiple files |
| Code size | 150 KB maximum | No practical limit |
| Available packages | Fixed set of pre-installed packages | Any Python package |
| OAuth 2.0 integrations | Supported | Supported |
| Desktop software integrations | Limited support via workers | Supported via workers |
| Deployment | Automatic on publish | Manual publish step |
| Version control | Built-in revision history | Git / any version control system |
| Testing | Not supported | Write and run automated tests |
| AI coding assistants | Built-in, VIKTOR-aware AI | Use your own — GitHub Copilot, Claude Code, Cursor, etc. |
| AI assistant file context | 1 file per conversation (documents: 4.5 MB, images: 3.75 MB) | Limited by your AI coding assistant |
App Builder
When to choose the App Builder
- You want to get from idea to working app as fast as possible
- You have limited coding experience or are new to Python
- You don't want to install or configure anything locally
- Your app is self-contained and doesn't require complex code organisation
Pros
- No local setup required — works entirely in the browser; no installation needed
- Fast prototyping — go from idea to working app in minutes
- Built-in AI assistant — understands VIKTOR-specific patterns and helps you write code
- Instant deployment — apps are easy to publish with a click of a button
- No environment management — Python version, packages, and dependencies are all handled for you
Cons
- Single file — all code must live in one
app.pyfile - Code size limit —
app.pyhas a maximum file size of 150 KB - Fixed package set — only pre-installed packages are available; you cannot add your own
- Limited desktop software integrations — connecting to local desktop software via workers is technically possible, but the App Builder is not optimized for this use case
- Single context file upload — only one file (documents: 4.5 MB, images: 3.75 MB) can be uploaded per conversation to the AI assistant
Local development (IDE + viktor-cli)
When to choose local development
- Your app is large or requires multiple code files
- You need a Python package that is not available in the App Builder
- You want to integrate VIKTOR with local desktop software
- You want to use Git for version control and work in a team with branches and pull requests
- You need automated testing or automated deployment
- You are comfortable with Python, or are using an AI coding assistant to help you get started
Pros
- Full code flexibility — structure your code across multiple files
- Any Python package — no restrictions on which libraries you can use
- Suitable for complex apps — no limits on code size or structure
- Desktop software integrations — connect VIKTOR to local desktop software such as engineering tools
- Git integration — use branches, pull requests, and full version control history
- Automated testing — write and run automated tests
- Automated deployment — set up pipelines to automatically test and publish your app
- AI coding assistants — tools like GitHub Copilot, Claude Code, and Cursor can understand your entire project; use https://docs.viktor.ai/llms-full.txt as context to make them VIKTOR-aware
Cons
- Setup required — you need to install Python, an IDE (such as VS Code or PyCharm), and
viktor-clibefore you can start building apps - Steeper learning curve — requires familiarity with Python and working in a terminal
- Slower to get started — more time from idea to running app compared to the App Builder
- VIKTOR SDK knowledge needed — you need to understand how VIKTOR's SDK works to be productive, although AI coding assistants can help bridge this gap
Migrating from App Builder to local development
If you started with the App Builder and have outgrown its limits, you can continue developing locally:
- In the App Builder, switch to Code mode and copy the contents of
app.py. - Follow the installation instructions to set up
viktor-cli. - Create a new local app and paste your code into
app.py. - From here you can split the code across multiple files, add packages, and connect integrations.