README.md
1> *corrade* (v.) — “To scrape together, to gather together from various sources”
2
3Corrade is a multiplatform utility library written in C++11/C++14. It's used as
4a base for the [Magnum graphics engine](https://magnum.graphics/), among other
5things.
6
7[![Join the chat at https://gitter.im/mosra/magnum](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/mosra/magnum?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
8[![Build Status](https://travis-ci.org/mosra/corrade.svg?branch=master)](https://travis-ci.org/mosra/corrade)
9[![Build Status](https://ci.appveyor.com/api/projects/status/afjjlsgtk6jjxulp/branch/master?svg=true)](https://ci.appveyor.com/project/mosra/corrade/branch/master)
10[![Coverage Status](https://codecov.io/gh/mosra/corrade/branch/master/graph/badge.svg)](https://codecov.io/gh/mosra/corrade)
11[![Hunter Package](https://img.shields.io/badge/hunter-corrade-lightgrey.svg)](https://hunter.readthedocs.io/en/latest/packages/pkg/corrade.html)
12[![MIT License](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT)
13
14- Project homepage — https://magnum.graphics/corrade/
15- Documentation — https://doc.magnum.graphics/corrade/
16- GitHub project page — https://github.com/mosra/corrade
17
18SUPPORTED PLATFORMS
19===================
20
21- **Linux** and embedded Linux
22- **Windows** with MSVC, clang-cl and MinGW, **Windows RT** (Store/Phone)
23- **macOS**, **iOS**
24- **Android**
25- **Web** ([asm.js](http://asmjs.org/) or [WebAssembly](http://webassembly.org/)),
26 through [Emscripten](http://kripken.github.io/emscripten-site/)
27
28See the Magnum Project [Build Status page](https://magnum.graphics/build-status/)
29for detailed per-platform build status.
30
31FEATURES
32========
33
34- Low-level utilities to bridge platform differences when accessing OS
35 functionality, filesystem, console and environment
36- Lightweight container implementations, complementing STL features with
37 focus on compilation speed, ease of use and performance
38- Test framework emphasizing flexibility, extensibility, minimal use of
39 macros and clarity of diagnostic output
40- Plugin management library with static and dynamic plugins, dependency
41 handling and hot code reload
42- Signal/slot connection library with full type safety
43
44Check also the Magnum Project [Feature Overview pages](https://magnum.graphics/features/)
45for further information.
46
47WHAT'S NEW?
48===========
49
50Curious about what was added or improved recently? Check out the
51[Changelog](https://doc.magnum.graphics/corrade/corrade-changelog.html#corrade-changelog-latest)
52page in the documentation. Check also the Magnum Project
53[Changelog](https://doc.magnum.graphics/magnum/changelog.html#changelog-latest).
54
55GETTING STARTED
56===============
57
58Download, build and install Corrade as explained in
59[the building documentation](https://doc.magnum.graphics/corrade/building-corrade.html)
60— we provide packages for many platforms, including Windows, Linux and macOS.
61After that, the best way to get started is to read some
62[examples and tutorials](https://doc.magnum.graphics/corrade/corrade-example-index.html).
63
64Apart from that, various Corrade functionality is available through
65[single-header libraries](https://doc.magnum.graphics/corrade/corrade-singles.html).
66Just download a file, `#include` it in your project and you're ready to go! No
67buildsystem wrangling needed.
68
69CONTACT & SUPPORT
70=================
71
72If you want to contribute to Corrade, if you spotted a bug, need a feature or
73have an awesome idea, you can get a copy of the sources from GitHub and start
74right away! There is the already mentioned guide about
75[how to download and build Corrade](https://doc.magnum.graphics/corrade/building-corrade.html)
76and also a guide about [coding style and best practices](https://doc.magnum.graphics/corrade/corrade-coding-style.html)
77which you should follow to keep the library as consistent and maintainable as
78possible.
79
80- Project homepage — https://magnum.graphics/corrade/
81- Documentation — https://doc.magnum.graphics/corrade/
82- GitHub — https://github.com/mosra/corrade and the
83 [#magnum](https://github.com/topics/magnum) topic
84- GitLab — https://gitlab.com/mosra/corrade
85- Gitter community chat — https://gitter.im/mosra/magnum
86- E-mail — info@magnum.graphics
87- Google Groups mailing list — magnum-engine@googlegroups.com
88 ([archive](https://groups.google.com/forum/#!forum/magnum-engine))
89- Twitter — https://twitter.com/czmosra and the
90 [#MagnumEngine](https://twitter.com/hashtag/MagnumEngine) hashtag
91
92See also the Magnum Project [Contact & Support page](https://magnum.graphics/contact/)
93for further information.
94
95CREDITS
96=======
97
98See the [CREDITS.md](CREDITS.md) file for details. Big thanks to everyone
99involved!
100
101LICENSE
102=======
103
104Corrade itself and its documentation is licensed under the MIT/Expat license,
105see the [COPYING](COPYING) file for details. All example code in `src/examples`
106is put into public domain (or UNLICENSE) to free you from any legal obstacles
107when reusing the code in your apps. See the [COPYING-examples](COPYING-examples)
108file for details.
109