Skip to main content

Two ways to build a VIKTOR app

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-powered coding agent 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-cli to connect to VIKTOR. Better suited when you want full control over your code, files, and environment.
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 BuilderLocal development
Setup requiredNone — works entirely in the browserPython, an IDE, and viktor-cli installed on your machine
Getting startedFast — go from idea to app in minutesSlower — requires initial setup
Code structureMultiple files and folders, managed by you or the agentMultiple files and folders, full control
Code size450 KB maximum per fileNo practical limit
Available packagesFixed set of pre-installed packagesAny Python package
OAuth 2.0 integrationsSupportedSupported
Desktop software integrationsSupported via workers (dedicated integrations only)Supported via workers, including the generic worker
DeploymentAutomatic on publishManual publish step
Version controlBuilt-in revision historyGit / any version control system
TestingNot supportedWrite and run automated tests
AI coding assistantsBuilt-in, VIKTOR-aware AIUse your own — GitHub Copilot, Claude Code, Cursor, etc.
Agent file context1 file per prompt, up to 20 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 agent — 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

  • Code size limit — each code file has a maximum file size of 450 KB
  • Fixed package set — only pre-installed packages are available; you cannot add your own
  • No generic worker — desktop software integrations via workers are supported, but only for software with a dedicated integration; the generic worker is not available
  • Limited context file uploads — only one file (documents: 4.5 MB, images: 3.75 MB) can be uploaded per prompt, up to 20 per conversation

Local development (IDE + viktor-cli)

When to choose local development

  • You want full control over the file and folder structure of your app
  • You need a Python package that is not available in the App Builder
  • You want to integrate with desktop software that requires the generic worker
  • 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 — complete control over how your code is structured across files and folders
  • 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 any local desktop software, including custom tools via the generic worker
  • 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-cli before 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:

  1. In the App Builder, switch to Code mode and copy the contents of your app files.
  2. Follow the installation instructions to set up viktor-cli.
  3. Create a new local app and recreate your files, preserving the same file and folder structure.
  4. From here you can freely restructure your code, add packages, and connect integrations.