Reloaded Vibes is a smart auto-reloading service and server for (web) development.
It watches a directory for changes and notifies web browsers (or other client applications) through its WebSocket server. This way those clients can respond to the change and e.g. reload the page so that they'll display the recent changes made by the user.
Are you're tired of hitting the refresh button again and again while developing?
Then Reloaded Vibes is the app you're looking for: It watches your project for changes and automatically triggers a refresh in your web browser. Moreover, it's possible to execute command lines before. This allows to schedule the runs of preprocessors (like Sass or Less) and source compilers or any other apps and scripts.
Plain and simple
This is Reloaded Vibes main design goal. It's achieved by not using complicated config or recipe files. Instead everything is configured by command line arguments.
It features a built-in webserver for serving static files. Utilizing it's script-injection feature it can automatically insert the script loader into your HTML pages, so you don't have to take care of it manually.
./rlv --watch=<DIRECTORY TO WATCH> --action=<COMMANDLINE>
||Directories to watch changes.|
||Command lines to execute before triggering a refresh.|
http://<SOCKET NOTIFICATION SERVICE>/test to try it out on the test page.
Multiple directories or actions
./rlv --watch=<DIR_1> --watch=<DIR_2> --action=<CMD_1> --action=<CMD_2>
Just specify the respective arguments multiple times.
Custom socket for the notification service
./rlv --watch=<DIRECTORY TO WATCH> --socket=<SOCKET>
||Socket to bind the notification service to.|
./rlv --watch=<DIRECTORY TO WATCH> --webserver=<SOCKET> --htdocs=<DOCUMENT ROOT>
||Socket to bind the built-in webserver to.|
||Document root path for the built-in webserver.|
||Disables injection of the script loader.|
Injects a script loader (
<script></script>) into HTML files that allows the automatical setup of Reloaded Vibes.
Those will need a
.html file extension, plus a
</body> closing tag.
This feature is enabled by default for the built-in webserver. Pass
--noinject to disable it.
No service ("offline") mode
Use Reloaded Vibes to execute commands on changes - with networking disabled.
./rlv --watch=<DIRECTORY TO WATCH> --action=<COMMANDLINE> --noservice
||Disables to notification service. Reloaded Vibes will still watch for changes and execute the specified actions.|
Copy the following code into your webpage's HTML
<body> and adjust the URL specified in the
<script src="http://<NOTIFICATION SERVICE>/reloaded-vibes.js"></script>
You can also open the notification service's index page in your browser
and copy the pre-configured
<script> tag from there.
Alternative: see the automatic script-injection of the built-in webserver.
- Install your favorite D compiler
- Check whether DUB came bundled with it. If not, install DUB.
git clone https://github.com/voidblaster/reloaded-vibes.git cd reloaded-vibes dub build --build=release
You can find the built executable inside the
- Jan Jurzitza (@WebFreak001)
- Viktor (@dayllenger)
Please note that while the source code of Reloaded Vibes itself is available under the Boost Software License 1.0, its dependency vibe.d is licensed under the terms of the MIT public license that also affects the final binary. Ask your laywer for an explanation or details.