CIM-VITULLIO+

v0.1.0 · Python ≥3.11 · schema v63
Theme

Automated ERP data-load service: extract from legacy source systems, map and transform through Excel-based mapping workbooks, and load into the target ERP via REST / Qxtend / QDoc adapters — with scheduling, dataset comparison, dry-run preview, and the “Ask Andy” AI assistant.

CIM-Vitullio+ moves your data safely when you switch to, or upgrade, an ERP system (such as QAD). It pulls data out of the legacy system, lets your team map old fields to new ones using ordinary Excel spreadsheets, checks everything for mistakes before anything goes live, and loads the result into the future system — automatically, on a schedule if you like, with a built-in AI assistant to help along the way.

127src modules
239route handlers
184test files
48templates
63db migrations
13packages
6pipeline stages
3ways to load into the target ERP
184automated checks
5color themes

Tech stack

Web
FastAPI + Uvicorn, Jinja2 server-rendered
Data
SQLite (inline migrations, schema v63)
CLI
Typer — cimvp, cimvp-server
Excel
openpyxl mapping workbooks
Transport
httpx (REST/Qxtend), paramiko (SSH extract)
Auth
bcrypt + itsdangerous sessions
Quality
pytest / respx / ruff / mypy

What it does

  • Manages source connections and extract profiles against legacy source systems (e.g. QAD/Progress)
  • Compiles Excel mapping workbooks into executable load maps
  • Dry-run previews transforms, then executes and schedules runs
  • Loads into the target ERP via REST, Qxtend, and QDoc adapters
  • Compares datasets (run vs. run, extraction diffs, file vs. either) to catch unexpected changes
  • AI assistant helps author profiles and answers product questions

How it fits together

  • Runs as a private web application your team logs into — nothing to install
  • Keeps a full history of every data load, so nothing is a black box
  • Talks to the target ERP through its own integration channels (for QAD: REST, Qxtend, QDoc)
  • Sends a login prompt only at the moment data is loaded, and never stores ERP passwords

What it does

  • Connects to your source system to pull data out for a migration or integration project
  • Lets your team map old fields to new ones using ordinary Excel spreadsheets — no coding required
  • Lets you preview exactly what will happen before anything goes live
  • Loads the final data into the future system automatically, on a schedule if you want
  • Compares data before and after a change so nothing is lost or duplicated
  • Includes an AI chat assistant ("Ask Andy") that answers questions and helps build the mapping

Data-migration pipeline click a stage for details

Supporting services run alongside the pipeline: the scheduler triggers extraction runs on a cadence, the watch folder auto-ingests dropped files, and webhook notifications report run outcomes.

Module explorer

PackageModulePurpose

Feature status

Shipped in the current build

Deployment

Where it runs

CIM-Vitullio+ runs on a dedicated private server that your team logs into over the web — there's nothing to install on individual computers. New versions are deployed deliberately, by hand, never automatically pushed out mid-day.

Getting up to speed

  • A complete training guide covers every screen, for every role, with real screenshots
  • Separate quick-start guides exist for Admins, Consultants, and Viewers
  • An open backlog and readiness checklist track what's still being hardened before wider rollout