<!DOCTYPE html>
<html lang="en-us">
<head>
<meta charset="UTF-8">
<title>libcbor - CBOR format implementation</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="stylesheets/normalize.css" media="screen">
<link href='http://fonts.googleapis.com/css?family=Open+Sans:400,700' rel='stylesheet' type='text/css'>
<link rel="stylesheet" type="text/css" href="stylesheets/stylesheet.css" media="screen">
<link rel="stylesheet" type="text/css" href="stylesheets/github-light.css" media="screen">
</head>
<body>
<section class="page-header">
<h1 class="project-name">libcbor</h1>
<h2 class="project-tagline">CBOR format implementation for C & others</h2>
<h2 class="project-tagline">Latest release: v0.5.0</h2>
<a href="https://github.com/PJK/libcbor" class="btn">View on GitHub</a>
<a href="https://github.com/PJK/libcbor/archive/v0.5.0.tar.gz" class="btn">Download source</a>
<a href="http://libcbor.readthedocs.io/en/v0.5.0/using.html" class="btn">Get started</a>
</section>
<section class="main-content">
<p><strong>libcbor</strong> is a C library for parsing and generating <a href="http://tools.ietf.org/html/rfc7049">CBOR</a>, the general-purpose schema-less binary data format.</p>
<h2>
<a id="main-features" class="anchor" href="#main-features" aria-hidden="true"><span class="octicon octicon-link"></span></a>Main features</h2>
<ul>
<li>Complete RFC conformance</li>
<li>Robust portable C99 implementation</li>
<li>Layered architecture offers both control and convenience</li>
<li>Flexible memory management</li>
<li>Proper handling of UTF-8</li>
<li>Full support for streams & incremental processing</li>
<li>Extensive documentation and test suite</li>
<li>No runtime dependencies, small footprint</li>
<li>Tested across architectures and operating systems</li>
</ul>
<h2>A taste of the API</h2>
<script src="https://gist.github.com/PJK/962a468886d24195d1ee.js"></script>
<h2><a id="distrib" class="anchor" href="#distrib" aria-hidden="true"><span class="octicon octicon-link"></span></a>Distribution</h2>
<h3>OS X</h3>
<pre><code>brew tap pjk/libcbor
brew install libcbor
</code></pre>
<h3>Linux</h3>
<p>
Please refer to <a href="http://libcbor.readthedocs.io/en/latest/getting_started.html">the documentation</a> on how to build <i>libcbor</i>.
</p>
<p>
deb and RPM packages can be built effortlessly using <a href="https://cmake.org/cmake/help/v3.0/module/CPack.html">CPack</a>. <i>libcbor</i> also comes with <a href="https://www.freedesktop.org/wiki/Software/pkg-config/">pkg-config</a> support</li>.
</p>
<h3>Windows</h3>
<p>
Windows are supported and <a href="https://ci.appveyor.com/project/PJK/libcbor">tested for</a>. CMake can target both MSVC and Cygwin toolchains. Please refer to <a href="http://libcbor.readthedocs.io/en/latest/getting_started.html">the documentation</a> on how to do so.
</p>
<h3>Other platforms</h3>
<p>
As long as CMake and a C99 compiler are available, <i>libcbor</i> will work. Read more <a href="http://libcbor.readthedocs.io/en/latest/getting_started.html">here</a>.
</p>
<h2>
<a id="documentation" class="anchor" href="#documentation" aria-hidden="true"><span class="octicon octicon-link"></span></a>Resources & documentation</h2>
<ul>
<li>User documentation is available online from <a href="http://libcbor.readthedocs.org/en/latest/">http://libcbor.readthedocs.org/en/latest/</a></li>
<li>Detailed build instructions are a part of the documentation</li>
<li>API reference is available either <a href="doxygen/index.html">online</a> or <a href="https://github.com/PJK/libcbor/releases/download/v0.5.0/libcbor_api_docs.tar.gz">as a part of the release</a></li>
<li><a href="https://github.com/PJK/libcbor/issues">Bug tracker</a>
<li><a href="https://github.com/PJK/libcbor/blob/master/CHANGELOG.md">Changelog</a>
<li><a href="https://github.com/PJK/libcbor/releases">Older releases</a>
</ul>
<h2>Ruby bindings</h2>
<p>If you write Ruby, you might be interested in the <a href="https://github.com/PJK/libcbor-ruby">Ruby bindings for <i>libcbor</i></a>.</p>
<h2><a id="license" class="anchor" href="#license" aria-hidden="true"><span class="octicon octicon-link"></span></a>Licensing</h2>
<p><i>libcbor</i> is distributed under the terms of the MIT license, as found in the source code.</p>
<p>Copyright (c) Pavel Kalvoda, 2014 - 2017</p>
<footer class="site-footer">
<span class="site-footer-owner"><a href="https://github.com/PJK/libcbor">libcbor</a> is maintained by <a href="https://github.com/PJK">PJK</a>.</span>
<span class="site-footer-credits">This page is based on the <a href="https://github.com/jasonlong/cayman-theme">Cayman theme</a> by <a href="https://twitter.com/jasonlong">Jason Long</a>.</span>
</footer>
</section>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-8187884-5', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>