https://github.com/dperrymorrow/electron-css-reload
force reload CSS on change in your electron app
https://github.com/dperrymorrow/electron-css-reload
css-changes electron force-reload-css
Last synced: 3 months ago
JSON representation
force reload CSS on change in your electron app
- Host: GitHub
- URL: https://github.com/dperrymorrow/electron-css-reload
- Owner: dperrymorrow
- License: mit
- Created: 2016-09-09T23:26:37.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2022-09-13T19:38:51.000Z (over 3 years ago)
- Last Synced: 2025-10-25T22:05:14.217Z (8 months ago)
- Topics: css-changes, electron, force-reload-css
- Language: JavaScript
- Size: 11.7 KB
- Stars: 4
- Watchers: 2
- Forks: 3
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# electron-css-reload
force reload CSS on change in your electron App
Reload style sheets on your page on change in your electron App.
## Usage
```javascript
const reload = require('electron-css-reload');
```
Then, open your devtools window and invoke the method to begin watching for CSS changes in your Electron app.
```javascript
// from your console
reload()
```
Or, when in dev mode, invoke the method from the start.
```javascript
require('electron-css-reload')();
```
You can also pass in the frequency you would like it to look for chanages in your css
> defaults to 1000 (1 second)
```javascript
reload(250)
```
That't it, enjoy not restarting your Electron app every time you wanna see a CSS change.
## Also watching dependencies of the css file
You can also watch dependencies of the CSS file you have loaded. This is helpful for situations like including other CSS files into your main file.
```html
```
> the paths in data-sources should be relative to the file path of the href
## Watching inline-styles
You can also watch inline styles for changes by giving an id, and a ```data-source```.
> data-source path should be top down from your electron application.
```html
body {
background-color: red;
}
```
## How does it work?
Since Electron has access to the file system, it uses ```fs.watchFile``` to watch for changes to the files loaded via `````` tags on the page.
When a change event fires, a ```?nocache={timestamp}``` is added to the href on the stylesheet link on the page.
This forces the browser to reload the sheet as it sees it as a new URL.