# nerves_gate_sdk v0.1.0 - Table of Contents > Portable application API for Nerves Gate ## Pages - [Nerves Gate SDK](readme.md) - [Changelog](changelog.md) ## Modules - [NervesGateSDK.Backend](NervesGateSDK.Backend.md): Implemented by device firmware and the host simulator. - [NervesGateSDK.CAN](NervesGateSDK.CAN.md): CAN frames and process-owned receive subscriptions. No interface configuration. - [NervesGateSDK.CAN.Frame](NervesGateSDK.CAN.Frame.md): A classic CAN frame. Data is at most eight bytes; FD frames are not supported. - [NervesGateSDK.CAN.Interface](NervesGateSDK.CAN.Interface.md): CAN availability. Configuration remains platform-owned. - [NervesGateSDK.Equipment](NervesGateSDK.Equipment.md): Read-only observations of attached equipment. - [NervesGateSDK.Equipment.Device](NervesGateSDK.Equipment.Device.md): Public equipment identity and reachability. - [NervesGateSDK.Events](NervesGateSDK.Events.md): Process-owned subscriptions to public observations. Subscribe before querying. - [NervesGateSDK.Events.Event](NervesGateSDK.Events.Event.md): A public event delivered directly to the subscribing process. - [NervesGateSDK.Network](NervesGateSDK.Network.md): Read-only network observations. Network configuration belongs to the platform. - [NervesGateSDK.Network.Interface](NervesGateSDK.Network.Interface.md): A public network observation, without platform configuration. - [NervesGateSDK.RS485](NervesGateSDK.RS485.md): Exclusive, process-owned RS485 sessions. Claims are released on owner exit. Receive data arrives as Events.Event with topic `{:rs485, port}` and binary value. The platform owns serial settings; applications cannot open Linux devices. - [NervesGateSDK.RS485.Port](NervesGateSDK.RS485.Port.md): A logical RS485 port and its availability. - [NervesGateSDK.Storage](NervesGateSDK.Storage.md): SD storage observations and application-owned data directories. - [NervesGateSDK.Storage.Status](NervesGateSDK.Storage.Status.md): Availability of application storage. Platform state does not require an SD card. - [NervesGateSDK.System](NervesGateSDK.System.md): Read-only device identity and runtime information. - [NervesGateSDK.System.Info](NervesGateSDK.System.Info.md): Public device identity. No credentials or distribution settings. ## Mix Tasks - [mix nerves_gate.package](Mix.Tasks.NervesGate.Package.md): Compiles in production mode and writes `-.ez` in the current directory, or to `--output path`. Set `:nerves_gate_sdk_requirement` in the application's OTP `:env`.