Coming from Python (apps)¶
This page routes Python developers who are evaluating Incan for application code, services, typed domain packages, and deployment-oriented tooling.
Install first¶
If you use Python tooling day to day, pipx is the cleanest package-manager entrypoint because it keeps the command package isolated from project environments while still installing the verified Incan toolchain archive. The installer also provisions the Rust backend when needed, so a fresh machine can move straight from install to incan run:
pipx install incan
incan --version
The direct installer is the same toolchain release path and is useful in shell scripts, CI images, and environments where you do not want another package manager involved:
curl -fsSL https://github.com/encero-systems/incan/releases/latest/download/install.sh | bash
export PATH="$HOME/.local/bin:$PATH"
incan --version
After installation, create a project and run the normal first-contact loop:
incan new hello --yes
cd hello
incan run
incan test
incan build --release
What you should do next¶
- Install the toolchain and create a starter project: Getting Started
- If anything fails: Troubleshooting
- Learn the basics: The Incan Book (Basics)
- Build your first API: Build your first API
- Multi-file apps: Imports and modules (how-to)
- Write tests: Testing in Incan
- Set up your workflow:
- Formatting
- Testing CLI
- Editor setup (LSP, syntax highlighting)
Explanation¶
Mental model translations (high level)¶
- errors: exceptions vs Result/Option (see: Error Handling)
- models: dataclasses/Pydantic vs models/derives (see: Models & Classes)
- interfaces: Protocols/ABCs vs traits/derives (see: Derives & Traits)
- async: asyncio mental model mapping (see: Async Programming)