# ESP32-S31 Linux Programming Guide Welcome to the ESP32-S31 Linux port. This guide walks you through installing Linux, connecting peripherals, and building applications for the ESP32-S31. To try Linux on your board, start with [Flash and first boot](get-started/flash-and-first-boot.md). To build your own image, follow [Build from source](get-started/build-from-source.md). Once Linux is running, follow [Wi-Fi and Bluetooth setup](user-guides/networking.md) or the [peripheral examples](user-guides/peripherals.md). Use `esp32-config` for board configuration and the [peripheral reference](api-reference/peripherals/index.md) for interfaces and limits. ```{toctree} :maxdepth: 2 Getting started Using the board API reference Development guides Hardware reference Tools and configuration Contributing ```