gettingstarted.rst revision 293df8d6
1Getting Started
2===============
3
4Supported Platforms
5-------------------
6
7LSQUIC compiles and runs on Linux, Windows, FreeBSD, Mac OS, and Android.
8It has been tested on i386, x86_64, and ARM (Raspberry Pi and Android).
9
10Dependencies
11------------
12
13LSQUIC library uses:
14
15- zlib_;
16- BoringSSL_; and
17- `ls-hpack`_ (as a Git submodule).
18- `ls-qpack`_ (as a Git submodule).
19
20The accompanying demo command-line tools use libevent_.
21
22What's in the box
23-----------------
24
25- ``src/liblsquic`` -- the library
26- ``bin`` -- demo client and server programs
27- ``tests`` -- unit tests
28
29Building
30--------
31
32To build the library, follow instructions in the README_ file.
33
34Demo Examples
35-------------
36
37Fetch Google home page:
38
39::
40
41    ./http_client -s www.google.com -p / -o version=h3-29
42
43Run your own server (it does not touch the filesystem, don't worry):
44
45::
46
47    ./http_server -c www.example.com,fullchain.pem,privkey.pem -s 0.0.0.0:4433
48
49Grab a page from your server:
50
51::
52
53    ./http_client -H www.example.com -s 127.0.0.1:4433 -p /
54
55You can play with various options, of which there are many.  Use
56the ``-h`` command-line flag to see them.
57
58More about LSQUIC
59-----------------
60
61You may be also interested in this presentation_ about LSQUIC.
62Slides are available `here <https://github.com/dtikhonov/talks/tree/master/netdev-0x14>`_.
63
64Next steps
65----------
66
67If you want to use LSQUIC in your program, check out the :doc:`tutorial` and
68the :doc:`apiref`.
69
70:doc:`internals` covers some library internals.
71
72.. _zlib: https://www.zlib.net/
73.. _BoringSSL: https://boringssl.googlesource.com/boringssl/
74.. _`ls-hpack`: https://github.com/litespeedtech/ls-hpack
75.. _`ls-qpack`: https://github.com/litespeedtech/ls-qpack
76.. _libevent: https://libevent.org/
77.. _README: https://github.com/litespeedtech/lsquic/blob/master/README.md
78.. _presentation: https://www.youtube.com/watch?v=kDwyGNsQXds
79