Skip to main content

Sage: A Unified Project and Package Management System for C/C++ by Version6

Project description

Sage: The Unified C/C++ Orchestrator Version6


Sage by Version6 is the intelligent project and package manager that acts as the "missing piece" for modern C/C++ development. It elegantly unifies and orchestrates essential tools like CMake, Conan, Clang, and Ninja, bringing clarity, consistency, and control to your entire C/C++ workflow.


✨ Why Sage?

Developing in C/C++ can often feel like assembling a complex puzzle, with disparate tools, dependencies, and build systems. Sage steps in to provide the much-needed cohesion, guiding your projects from conception to compilation with wisdom and precision.

  • Unified Workflow: Say goodbye to juggling multiple command-line interfaces and configurations. Sage provides a single, intuitive entry point for all your C/C++ project needs.
  • Intelligent Orchestration: Seamlessly integrates and manages industry-leading tools:
    • CMake: For robust and cross-platform build system generation.
    • Conan: For efficient C/C++ dependency management and package consumption.
    • Clang: For modern, fast, and feature-rich compilation.
    • Ninja: For lightning-fast build execution.
  • "The Missing Piece": Designed to fill the gaps in the C/C++ ecosystem, Sage ensures your projects are structured, dependencies are resolved, and builds are consistent, regardless of complexity or platform.
  • Boost Productivity: Reduce boilerplate, automate repetitive tasks, and focus on writing great C/C++ code, not on battling build systems.
  • Scalable & Maintainable: Facilitates the creation of projects that are easier to manage, scale, and onboard new developers to.

🚀 Getting Started

Getting started with Sage is designed to be straightforward.

Installation

You can install Sage via pip:

pip install cppsage
sage about

Quick Start

Coming Soon ..

📋 Features

Sage aims to provide a comprehensive set of features for modern C/C++ development:

  • Project Definition: Intuitive definition of project structure, targets (executables, libraries), and configurations.
  • Dependency Management: Seamless integration with Conan for declarative dependency resolution and consumption.
  • Build System Generation: Automated generation of CMake build scripts.
  • Toolchain Integration: Easy configuration and management of compilers (Clang), build tools (Ninja), and other development utilities.
  • Testing & Linting: Integrated commands for running tests and enforcing code style (e.g., clang-format, clang-tidy).
  • Platform Agnostic: Designed to work across various operating systems (Linux, macOS, Windows).
  • Extensible: Built with extensibility in mind, allowing for custom commands and integrations.

📚 Documentation

For more in-depth information, detailed usage guides, and advanced configurations, please refer to our official documentation:

🛠️ Project Structure

The officialv6/sage repository contains:

.
├── .vscode/             # VSCode workspace settings and configurations
├── cmake/               # Sage's internal CMake modules
├── packages/            # requirement.txt 
├── res/                 # Resources for Sage itself (e.g., templates)
├── sage/                # Sage's core source code
├── .clang-format        # Code formatting rules for C/C++ source
├── .clang-tidy          # Static analysis rules for C/C++ source
├── .clangd              # Configuration for Clangd (LSP server)
├── .editorconfig        # Universal code style settings
├── .gitignore           # Files and directories to ignore in Git
├── CMakeLists.txt       # CMake build script for Sage itself
├── CMakePresets.json    # CMake presets for Sage's own development
└── README.md            # This README file

🤝 Contributing

We welcome contributions to Sage! Whether it's reporting a bug, suggesting a feature, or submitting a pull request, your help is invaluable.

Please refer to our CONTRIBUTING.md guide for detailed information on how to get involved.

🐞 Reporting Issues

Found a bug or have a feature request? Please open an issue on our GitHub Issues page.

📄 License

Sage is open-source software licensed under the MIT License.


📞 Contact

For questions, support, or general inquiries, please reach out to us:


Made with ❤️ by the team at officialv6.

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

cppsage-0.4.9.tar.gz (14.4 kB view details)

Uploaded Source

Built Distribution

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

cppsage-0.4.9-py3-none-any.whl (12.6 kB view details)

Uploaded Python 3

File details

Details for the file cppsage-0.4.9.tar.gz.

File metadata

  • Download URL: cppsage-0.4.9.tar.gz
  • Upload date:
  • Size: 14.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for cppsage-0.4.9.tar.gz
Algorithm Hash digest
SHA256 174633de0d0679f497146f7737f00fc6f0dbc01680369c803e231cb7502c97b3
MD5 d77c524b005573c50ce08304f8886537
BLAKE2b-256 8e4ec4e08bf09355bf3c8c285ecfc9d8a862a8ea98d41dc7ab4647a160de8391

See more details on using hashes here.

File details

Details for the file cppsage-0.4.9-py3-none-any.whl.

File metadata

  • Download URL: cppsage-0.4.9-py3-none-any.whl
  • Upload date:
  • Size: 12.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for cppsage-0.4.9-py3-none-any.whl
Algorithm Hash digest
SHA256 242cb2e62d622f520ab7f2e508d7eb905df5f0319f1d210c7fe10a68d3424b2f
MD5 5d996eabafe026b1ede042336b7be442
BLAKE2b-256 b963593ebcfa61f6ae8be2976e6c5d097ff4197734a8c4db39495c96065b0145

See more details on using hashes here.

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