xref: /netbsd-src/external/mit/libcbor/dist/docs/index.html (revision 5dd36a3bc8bf2a9dec29ceb6349550414570c447)
1*5dd36a3bSchristos
2*5dd36a3bSchristos
3*5dd36a3bSchristos
4*5dd36a3bSchristos<!DOCTYPE html>
5*5dd36a3bSchristos<html lang="en-us">
6*5dd36a3bSchristos  <head>
7*5dd36a3bSchristos    <meta charset="UTF-8">
8*5dd36a3bSchristos    <title>libcbor - CBOR format implementation</title>
9*5dd36a3bSchristos    <meta name="viewport" content="width=device-width, initial-scale=1">
10*5dd36a3bSchristos    <link rel="stylesheet" type="text/css" href="stylesheets/normalize.css" media="screen">
11*5dd36a3bSchristos    <link href='http://fonts.googleapis.com/css?family=Open+Sans:400,700' rel='stylesheet' type='text/css'>
12*5dd36a3bSchristos    <link rel="stylesheet" type="text/css" href="stylesheets/stylesheet.css" media="screen">
13*5dd36a3bSchristos    <link rel="stylesheet" type="text/css" href="stylesheets/github-light.css" media="screen">
14*5dd36a3bSchristos  </head>
15*5dd36a3bSchristos  <body>
16*5dd36a3bSchristos    <section class="page-header">
17*5dd36a3bSchristos      <h1 class="project-name">libcbor</h1>
18*5dd36a3bSchristos      <h2 class="project-tagline">CBOR format implementation for C &amp; others</h2>
19*5dd36a3bSchristos      <h2 class="project-tagline">Latest release: v0.5.0</h2>
20*5dd36a3bSchristos      <a href="https://github.com/PJK/libcbor" class="btn">View on GitHub</a>
21*5dd36a3bSchristos      <a href="https://github.com/PJK/libcbor/archive/v0.5.0.tar.gz" class="btn">Download source</a>
22*5dd36a3bSchristos      <a href="http://libcbor.readthedocs.io/en/v0.5.0/using.html" class="btn">Get started</a>
23*5dd36a3bSchristos    </section>
24*5dd36a3bSchristos
25*5dd36a3bSchristos    <section class="main-content">
26*5dd36a3bSchristos
27*5dd36a3bSchristos
28*5dd36a3bSchristos<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>
29*5dd36a3bSchristos
30*5dd36a3bSchristos<h2>
31*5dd36a3bSchristos<a id="main-features" class="anchor" href="#main-features" aria-hidden="true"><span class="octicon octicon-link"></span></a>Main features</h2>
32*5dd36a3bSchristos
33*5dd36a3bSchristos<ul>
34*5dd36a3bSchristos  <li>Complete RFC conformance</li>
35*5dd36a3bSchristos  <li>Robust portable C99 implementation</li>
36*5dd36a3bSchristos  <li>Layered architecture offers both control and convenience</li>
37*5dd36a3bSchristos  <li>Flexible memory management</li>
38*5dd36a3bSchristos  <li>Proper handling of UTF-8</li>
39*5dd36a3bSchristos  <li>Full support for streams &amp; incremental processing</li>
40*5dd36a3bSchristos  <li>Extensive documentation and test suite</li>
41*5dd36a3bSchristos  <li>No runtime dependencies, small footprint</li>
42*5dd36a3bSchristos  <li>Tested across architectures and operating systems</li>
43*5dd36a3bSchristos</ul>
44*5dd36a3bSchristos
45*5dd36a3bSchristos<h2>A taste of the API</h2>
46*5dd36a3bSchristos<script src="https://gist.github.com/PJK/962a468886d24195d1ee.js"></script>
47*5dd36a3bSchristos
48*5dd36a3bSchristos<h2><a id="distrib" class="anchor" href="#distrib" aria-hidden="true"><span class="octicon octicon-link"></span></a>Distribution</h2>
49*5dd36a3bSchristos
50*5dd36a3bSchristos<h3>OS X</h3>
51*5dd36a3bSchristos<pre><code>brew tap pjk/libcbor
52*5dd36a3bSchristosbrew install libcbor
53*5dd36a3bSchristos</code></pre>
54*5dd36a3bSchristos
55*5dd36a3bSchristos<h3>Linux</h3>
56*5dd36a3bSchristos<p>
57*5dd36a3bSchristos  Please refer to <a href="http://libcbor.readthedocs.io/en/latest/getting_started.html">the documentation</a> on how to build <i>libcbor</i>.
58*5dd36a3bSchristos</p>
59*5dd36a3bSchristos
60*5dd36a3bSchristos<p>
61*5dd36a3bSchristos  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>.
62*5dd36a3bSchristos</p>
63*5dd36a3bSchristos
64*5dd36a3bSchristos<h3>Windows</h3>
65*5dd36a3bSchristos<p>
66*5dd36a3bSchristos  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.
67*5dd36a3bSchristos</p>
68*5dd36a3bSchristos
69*5dd36a3bSchristos<h3>Other platforms</h3>
70*5dd36a3bSchristos<p>
71*5dd36a3bSchristos  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>.
72*5dd36a3bSchristos</p>
73*5dd36a3bSchristos
74*5dd36a3bSchristos<h2>
75*5dd36a3bSchristos<a id="documentation" class="anchor" href="#documentation" aria-hidden="true"><span class="octicon octicon-link"></span></a>Resources &amp; documentation</h2>
76*5dd36a3bSchristos
77*5dd36a3bSchristos<ul>
78*5dd36a3bSchristos  <li>User documentation is available online from <a href="http://libcbor.readthedocs.org/en/latest/">http://libcbor.readthedocs.org/en/latest/</a></li>
79*5dd36a3bSchristos  <li>Detailed build instructions are a part of the documentation</li>
80*5dd36a3bSchristos  <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>
81*5dd36a3bSchristos  <li><a href="https://github.com/PJK/libcbor/issues">Bug tracker</a>
82*5dd36a3bSchristos  <li><a href="https://github.com/PJK/libcbor/blob/master/CHANGELOG.md">Changelog</a>
83*5dd36a3bSchristos  <li><a href="https://github.com/PJK/libcbor/releases">Older releases</a>
84*5dd36a3bSchristos</ul>
85*5dd36a3bSchristos
86*5dd36a3bSchristos<h2>Ruby bindings</h2>
87*5dd36a3bSchristos<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>
88*5dd36a3bSchristos
89*5dd36a3bSchristos
90*5dd36a3bSchristos<h2><a id="license" class="anchor" href="#license" aria-hidden="true"><span class="octicon octicon-link"></span></a>Licensing</h2>
91*5dd36a3bSchristos
92*5dd36a3bSchristos<p><i>libcbor</i> is distributed under the terms of the MIT license, as found in the source code.</p>
93*5dd36a3bSchristos
94*5dd36a3bSchristos<p>Copyright (c) Pavel Kalvoda, 2014 - 2017</p>
95*5dd36a3bSchristos
96*5dd36a3bSchristos      <footer class="site-footer">
97*5dd36a3bSchristos        <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>
98*5dd36a3bSchristos        <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>
99*5dd36a3bSchristos      </footer>
100*5dd36a3bSchristos
101*5dd36a3bSchristos    </section>
102*5dd36a3bSchristos
103*5dd36a3bSchristos<script>
104*5dd36a3bSchristos  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
105*5dd36a3bSchristos  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
106*5dd36a3bSchristos  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
107*5dd36a3bSchristos  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
108*5dd36a3bSchristos
109*5dd36a3bSchristos  ga('create', 'UA-8187884-5', 'auto');
110*5dd36a3bSchristos  ga('send', 'pageview');
111*5dd36a3bSchristos
112*5dd36a3bSchristos</script>
113*5dd36a3bSchristos  </body>
114*5dd36a3bSchristos</html>
115