Skip to main content

Cairo dependency management and packaging made easy.

Project description

Felucca: Dependency Management for Cairo

Test and release Colab

Felucca helps you declare, manage and install dependencies of Cairo projects, ensuring you have the right stack everywhere.

Installation

It supports Python 3.9+:

pip install felucca

Introduction

felucca is a tool to handle Cairo contracts installation as well as its packaging levaraging Python native capabilities. Felucca uses Poetry under the hood to handle all Python project management using the standardized pyproject.toml.

Why?

Cairo contracts development works very closely with Python for project management, dependency installation and testing. Felucca tries to simplify the process of sharing, installing and managing Cairo contracts between differents projects and working in a more natural manner where packages evolve over time and dependant projects doesn't have to upgrade Cairo contracts manually. Using Felucca's approach to leverage Python capabilties in terms of dependency management and project structure gives many advantages:

  • Unified project structure across Cairo packages.
  • Rapid adaptation to changes as the ecosystem evolves.
  • Compatibility management between Cairo contracts with different Cairo versions.
  • Effortless installation for quick usage in new packages.
  • Traceability of Cairo packages and releases.
  • Global availability of Cairo packages.
  • Many more...

Usage

This tool provides a set of different command to handle all the product lifecycle for dependency and package management.

Cairo package project structure creation

felucca new <package_name>

This command will create a project structure for Cairo packages from a template ready to be used for development.

Cairo package installation

felucca install felucca-package-example

This command will install the Cairo package into the project while checking Cairo compatibility, keeping traceability using the pyproject.toml file to save required metadata and installing the Cairo contracts into the project.

Cairo package uninstall

felucca uninstall felucca-package-example

This command will remove the Cairo package from the project and all the related metadata.

Cairo package setup

felucca setup

If you want to check if your project is ready to work as a Cairo package this command will check all the needed requirements to do so. If not properly setup it will fix it for you automatically.

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

felucca-0.2.1.tar.gz (6.5 kB view hashes)

Uploaded Source

Built Distribution

felucca-0.2.1-py3-none-any.whl (7.7 kB view hashes)

Uploaded Python 3

Supported by

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