Skip to main content

A Python CLI framework for project scaffolding and environment synchronization.

Project description


Corellia

What is Corellia

Corellia provides a unified CLI workflow for Python project management.

Corellia orchestrates Python version management, virtual environments, dependencies, project scripts and packaging through a single configuration file.

Instead of manually coordinating tools such as:

  • pyenv
  • venv
  • pip
  • build
  • git

Corellia provides a consistent project-oriented interface designed to simplify setup, synchronization and packaging workflows.


Why Corellia

Python projects often evolve into fragmented workflows:

  • Python versions are managed separately
  • virtual environments are manually recreated
  • dependencies drift across machines
  • scripts are undocumented or inconsistent
  • packaging metadata becomes duplicated
  • build workflows differ between projects

Corellia centralizes these concerns into a single source of truth:

corellia.toml

This allows projects to remain more reproducible, easier to synchronize, and more consistent across development environments.

Corellia does not aim to replace tools like pyenv, pip or venv. Instead, it orchestrates them through a unified workflow.


Features

  • Python version management integration (pyenv)
  • automatic virtual environment management
  • dependency synchronization
  • project script management
  • reproducible project configuration
  • package build workflow
  • structured project layouts
  • framework-aware scaffolding (experimental)

Installation

Requirements

  • Python 3.12+
  • pyenv
  • Git (optional, but recommended)

Install from PyPI

pipx install corellia-cli

Install from source

git clone https://github.com/lorenzo-petrecca/Corellia.git
cd Corellia
pipx install -e .

[!WARNING] Corellia is currently under active development. Workflows and configuration structures may evolve between releases.


Quick Start

Create a project

core create

The command interactively generates a new project and creates:

  • project structure
  • virtual environment
  • corellia.toml
  • Git repository
  • initial dependency setup

Synchronize the environment

core sync

This command recreates the local project environment from the configuration declared inside corellia.toml.

Add dependencies

core add <package>

Dependencies are tracked directly inside corellia.toml, for example:

core add requests

produces:

[dependencies]
requests = "2.32.3"

Execute project scripts

core run check

Scripts are declared directly inside the configuration:

[scripts.check]
command = "python --version"
mode = "strict"
description = "Check Python environment"

You can list available scripts with:

core run --list

Build a distributable package

core init-build
core build

Corellia generates a pyproject.toml artifact and builds the project using the standard Python packaging workflow.


Examples

Workflow example

core create
core add requests
core sync
core run check
core init-build
core build

Configuration example

# corellia.toml

[project]
name = "myproject"
version = "0.1.0"
python = "3.12.10"
category = "package"
description = "Example project"

[environment]
manager = "pyenv"
venv = ".venv"

[dependencies]
requests = "2.32.3"

[scripts.dev]
command = "python main.py"
mode = "strict"
description = "Run development script"

Package project structure

myproject/
├── .venv/
├── src/
│   └── myproject/
│       └── __init__.py
├── tests/
├── corellia.toml
├── README.md
└── .gitignore

Documentation

Full documentation is available in the /docs directory.

[!Warning] The documentation may not be fully up to date with the latest versions


Current Status

Corellia is currently focused on stabilizing the core project workflow experience for the package category. Some areas of the project are still considered experimental or only partially implemented.

[!IMPORTANT] Partially supported

  • app project workflows
  • deploy project workflows
  • framework-specific integrations
  • advanced build metadata generation

[!CAUTION] Not Yet Supported

  • Windows support
  • dependency structure validation inside corellia.toml
  • standalone executable builds
  • advanced deployment workflows

[!NOTE] The internal configuration model and project structure may continue to evolve during the current development phase.


License

This project is licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

corellia_cli-1.1.1.tar.gz (33.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

corellia_cli-1.1.1-py3-none-any.whl (43.5 kB view details)

Uploaded Python 3

File details

Details for the file corellia_cli-1.1.1.tar.gz.

File metadata

  • Download URL: corellia_cli-1.1.1.tar.gz
  • Upload date:
  • Size: 33.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for corellia_cli-1.1.1.tar.gz
Algorithm Hash digest
SHA256 96831238353b74f9f053a09984eac676d99ca577c15594ea954f5a04e92de476
MD5 40e97fe41cea826a29d408c5f0707398
BLAKE2b-256 ea9036a36c5965d82e1811f1e579821fa65540cd31a23607b09eb3249cb15530

See more details on using hashes here.

Provenance

The following attestation bundles were made for corellia_cli-1.1.1.tar.gz:

Publisher: publish.yml on lorenzo-petrecca/Corellia

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file corellia_cli-1.1.1-py3-none-any.whl.

File metadata

  • Download URL: corellia_cli-1.1.1-py3-none-any.whl
  • Upload date:
  • Size: 43.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for corellia_cli-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 cb004aec5d2dee4f21a8d989ec5cfe67e582267b8db07ab6858c54aff0549bb2
MD5 ed9f7fd7fa90ce8115a0cc5189b0bfeb
BLAKE2b-256 565c1b8d6adf964e1b1e633a462114cf9db1f341a30763618c75138221ebe187

See more details on using hashes here.

Provenance

The following attestation bundles were made for corellia_cli-1.1.1-py3-none-any.whl:

Publisher: publish.yml on lorenzo-petrecca/Corellia

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page