### Install Development Dependencies Source: https://github.com/zakj/nosleep.js/blob/main/README.md Install all development dependencies for building from source using pnpm. ```bash pnpm install ``` -------------------------------- ### Install @zakj/no-sleep Source: https://github.com/zakj/nosleep.js/blob/main/README.md Install the package using npm. ```bash npm install @zakj/no-sleep ``` -------------------------------- ### Build Library from Source Source: https://github.com/zakj/nosleep.js/blob/main/README.md Build the library after installing development dependencies. ```bash pnpm run build ``` -------------------------------- ### Instantiate NoSleep with INoSleep Interface Source: https://context7.com/zakj/nosleep.js/llms.txt Demonstrates how to import and instantiate the NoSleep class, which adheres to the INoSleep interface. The specific implementation is chosen automatically based on the runtime environment. ```typescript import NoSleep from '@zakj/no-sleep'; const noSleep: import('@zakj/no-sleep').INoSleep = new NoSleep(); console.log(noSleep.enabled); // false ``` -------------------------------- ### Create NoSleep Instance Source: https://github.com/zakj/nosleep.js/blob/main/README.md Instantiate a new NoSleep object. ```javascript var noSleep = new NoSleep(); ``` -------------------------------- ### NoSleep Constructor Source: https://github.com/zakj/nosleep.js/blob/main/README.md Instantiate the NoSleep object to manage wake locks. ```APIDOC ## new NoSleep() ### Description Creates a new instance of the NoSleep object. ### Usage ```javascript var noSleep = new NoSleep(); ``` ``` -------------------------------- ### NoSleep Constructor Source: https://context7.com/zakj/nosleep.js/llms.txt Instantiates the appropriate wake-lock implementation for the current runtime. The library automatically selects the best strategy based on the environment. ```APIDOC ## new NoSleep() Instantiates the appropriate wake-lock implementation for the current runtime. In a browser with native Wake Lock API support (and iOS ≥ 18.4 for PWA mode), returns a `NoSleepNative` instance. On older iOS or browsers without `navigator.wakeLock`, returns a `NoSleepVideo` instance that injects a silent `