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:
- GitHub Issues: https://github.com/officialv6/sage/issues
Made with ❤️ by the team at officialv6.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cppsage-0.4.8.tar.gz.
File metadata
- Download URL: cppsage-0.4.8.tar.gz
- Upload date:
- Size: 14.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
79a325dbd859bcb785712dc2d5871e6c3281ae8aefa8260d999937a9bae91090
|
|
| MD5 |
513c19dbbbcf0e57ce7a5d38c97ec69c
|
|
| BLAKE2b-256 |
3aa69c1fbfecb8818a0a6b5220b55552270a219583072ad678886ee73a5ed4e5
|
File details
Details for the file cppsage-0.4.8-py3-none-any.whl.
File metadata
- Download URL: cppsage-0.4.8-py3-none-any.whl
- Upload date:
- Size: 12.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
66752f9961308adc02f226ac5d3c6ee27c9d72d6ee7be321fd87c35bd983c092
|
|
| MD5 |
55fc4e9baa8f9c53da873abc5519db46
|
|
| BLAKE2b-256 |
0fd87c403ceae6eb1a6a6186d51bd3925767923433e309f26f9ecd294775dbf0
|