Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/richtr/NoSleep.js
Prevent display sleep and enable wake lock in any Android or iOS web browser.
https://github.com/richtr/NoSleep.js
android ios javascript nosleep wake-lock
Last synced: about 2 months ago
JSON representation
Prevent display sleep and enable wake lock in any Android or iOS web browser.
- Host: GitHub
- URL: https://github.com/richtr/NoSleep.js
- Owner: richtr
- License: mit
- Created: 2015-04-21T08:10:40.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2023-04-19T21:04:19.000Z (over 1 year ago)
- Last Synced: 2024-07-11T16:55:17.096Z (2 months ago)
- Topics: android, ios, javascript, nosleep, wake-lock
- Language: JavaScript
- Homepage:
- Size: 410 KB
- Stars: 2,194
- Watchers: 38
- Forks: 378
- Open Issues: 62
-
Metadata Files:
- Readme: README.md
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
README
# NoSleep.js
Prevent display sleep and enable wake lock in all Android and iOS web browsers.
Check out the [live demo](https://richtr.github.io/NoSleep.js/example) in any Android or iOS web browser.
## Installation
This library is available on [Bower](http://bower.io/) as **nosleep**.
`bower install nosleep`
This package is published to npm as **nosleep.js** and can be installed with:
`npm install nosleep.js`
Alternatively, you can manually add [NoSleep.js](https://github.com/richtr/NoSleep.js/blob/master/dist/NoSleep.js) to your project (or the [minified version](https://github.com/richtr/NoSleep.js/blob/master/dist/NoSleep.min.js)).
## Build from source
Install all development dependencies with:
`npm install`
To build this library run:
`npm run build`
A new build of [NoSleep.js](https://github.com/richtr/NoSleep.js/blob/master/dist/NoSleep.js) and [NoSleep.min.js](https://github.com/richtr/NoSleep.js/blob/master/dist/NoSleep.min.js) will now be available in the `/dist` directory.
## Usage
Import ES6 module:```javascript
import NoSleep from 'nosleep.js';
```Create a new NoSleep object and then enable or disable it when needed.
To create a new NoSleep object:
```javascript
var noSleep = new NoSleep();
```To enable wake lock:
**NOTE: This function call must be wrapped in a user input event handler e.g. a mouse or touch handler**
```javascript
// Enable wake lock.
// (must be wrapped in a user input event handler e.g. a mouse or touch handler)
document.addEventListener('click', function enableNoSleep() {
document.removeEventListener('click', enableNoSleep, false);
noSleep.enable();
}, false);
```To disable wake lock:
```javascript
// Disable wake lock at some point in the future.
// (does not need to be wrapped in any user input event handler)
noSleep.disable();
```See [example/index.html](https://github.com/richtr/NoSleep.js/blob/master/example/index.html) (and the [live demo](https://richtr.github.io/NoSleep.js/example)) for more information.
## Feedback
If you find any bugs or issues please report them on the [NoSleep.js Issue Tracker](https://github.com/richtr/NoSleep.js/issues).
If you would like to contribute to this project please consider [forking this repo](https://github.com/richtr/NoSleep.js/fork), making your changes and then creating a new [Pull Request](https://github.com/richtr/NoSleep.js/pulls) back to the main code repository.
## License
MIT. Copyright (c) [Rich Tibbett](https://twitter.com/_richtr).
See the [LICENSE](https://github.com/richtr/NoSleep.js/blob/master/LICENSE) file.