This document discusses Snaps, a packaging format for Linux applications that provides confinement and versioning. It begins by explaining the architecture of Snaps and how they isolate applications and provide writable areas. It then demonstrates how to build, install, and update Snaps. It also shows how to create a more complex Snap that includes both a backend service and website. The document guides the reader through cloning the source code, defining the Snap metadata, and building parts for the backend, assets, and website. It explains how to expose the command line interface and web service.