Components
==========

myMPD is opensource and build on top off other great opensource software.

Frontend
--------

- `Bootstrap <https://getbootstrap.com>`__ (only the css part)
- `Bootstrap Native <http://thednp.github.io/bootstrap.native/>`__ (replaces the javascript for bootstrap)
- `long-press-event <https://github.com/john-doherty/long-press-event>`__ (support of long touch events)
- `Material Design Icons <https://fonts.google.com/icons?selected=Material+Icons>`__ (Icons)

Backend
-------

- `incbin <https://github.com/graphitemaster/incbin>`__ (embedding assets)
- `libmympdclient <https://github.com/jcorporation/libmympdclient>`__ (mpd communication)
- `Mongoose <https://github.com/cesanta/mongoose>`__ (web server)
- `mpack <https://github.com/ludocode/mpack>`__ (MessagePack serialization)
- `rax <https://github.com/jcorporation/rax>`__ (radix tree implementation)
- `sds <https://github.com/jcorporation/sds>`__ (dynamic string handling)
- `utest <https://github.com/sheredom/utest.h>`__ (unit tests)

Documentation
-------------

- `Doxygen <https://www.doxygen.nl/index.html>`__
- `JSDoc <https://jsdoc.app/>`__
- `Ldoc <https://github.com/lunarmodules/ldoc>`__
- `Sphinx <https://www.sphinx-doc.org>`__
