<h1>thunderchez</h1>
Libraries for Scheme] productivity

Be sure to put thunderchez path on your library path,

By example:

<verbatim>
(library-directories
</verbatim>

or set the `CHEZSCHEMELIBDIRS` environment variable:

<verbatim>

</verbatim>

Checkout: You'll need

<verbatim>
fossil clone thunderchez.fossil
mkdir thunderchez && cd thunderchez && fossil open ../thunderchez.fossil
</verbatim>

To follow news subscribe to feed]


<h2>SRFI</h2>

on surfage] with minor changes
<verbatim>
    (import (srfi s1 lists))
    (import (srfi s13 strings))
    (import (srfi s14 char-sets))
    etc...
</verbatim>

<h2>Fmt</h2>
Original
<verbatim>
    (import (fmt fmt))
    (import (fmt fmt-c))
    (import (fmt fmt-js))
</verbatim>

<h2>Matchable</h2>
Based on egg]
<verbatim>
    (import (matchable))
</verbatim>

<h2>Sqlite3</h2>
Based partially on chicken egg] but slightly different. Needs some testing.
<verbatim>
    (import (sqlite3))
</verbatim>

<h2>USB</h2>
website]
<verbatim>
    (import (usb))
</verbatim>


<h2>SDL2</h2>

website]
<verbatim>
    (import (sdl2))
</verbatim>

<h2>Cairo</h2>
website]
<verbatim>
    (import (cairo))
</verbatim>

See examples

<h2>Json parser</h2>
Uses
<verbatim>
    (import (json))


    (string->json "[{ : , : 120 , : [{ : : 1 }, { : : 2 }] }]" )
    	=> #((name . "my-name")
    	    (age . 120)
    	    (children .
                        #(((name . "my-son") (age . 1))
                          ((name . "my-son2") (age . 2)))))

</verbatim>
<h2>NanoMsg</h2>
website]
<verbatim>
 (import (nanomsg))
</verbatim>

<h3>Some tests from
  *
  *
  *
  *
  *
  *