/chalet

A cross-platform JSON-based project & build tool

Primary LanguageC++OtherNOASSERTION

Chalet logo

A cross-platform project format & build tool for C/C++ focused on usability and interoperability.


Github Releases License Discussions Examples


Introduction

Chalet is a command-line application that reads from a JSON or YAML project file, and compiles your C/C++ projects. Behind the scenes, Chalet performs a variety actions based on the type of project and the strategy requested by the user. It can build natively using its own system, or utilizing: Ninja, Make, MSBuild, and Xcode(build). Chalet project files focus on intuitive language designed to be easy to understand, while at the same time providing lots of control. Because the projects are JSON, they can be easily integrated with IDEs and other types of tooling, but depending on the compiler, Chalet also generates workspace/project files for Visual Studio, Xcode, CLion, Visual Studio Code, Fleet and Code::Blocks.

Visit https://www.chalet-work.space to learn more about Chalet.

Visit https://www.chalet-work.space/docs for the full documentation.

Explore some of the example repositories at: https://github.com/orgs/chalet-org/repositories?q=chalet-example

Download

Grab the latest version from https://www.chalet-work.space/download or the Releases section of this repository.

The actual release builds are still being fine-tuned, especially on Linux, so there may still be issues on various Linux distros.

License

Chalet is released under the BSD 3-Clause license. See LICENSE.txt.

External Libraries that make Chalet possible

Build from Source

If you would like to build from source, and track the latest changes as they come out, please review the COMPILE.md document.

Contributing

If you would like to contribute, please review the CONTRIBUTING.md document.