rufus-livereload v1.0.18
Rufus Livereload
Develop in local machine reflecting SharePoint site at real time.
Live reload experience
Develop... Save... Enjoy! By running Rufus Serve Task, you can write scripts locally and check changes directly on SharePoint site. All changes dected in local files will reflects the target folder.
Usage
Install using npm:
$ npm install rufus-livereload
In Node.js:
const rufus = require('rufus-livereload').rufus;
async function sync(options) {
await rufus(options).sync();
}
async function serve(options) {
await rufus(options).serve();
}
async function syncThenServe(options) {
await sync(options);
await serve(options);
}
In client:
<script src="http://localhost:5051/rufus-client.js" type="text/javascript"></script>
Usage with gulp
Typically, rufus is used with gulp due to facility to run tasks.
const rufus = require('rufus-livereload').rufus;
const rufusOptions = require('rufus.config.json');
async function serveTask() {
await rufus(rufusOptions).serve();
}
exports.serve = serveTask;
###Sync and Serve
- sync is responsible to sync local files in SharePoint folder. Even powerful, sync is very simple, its just erase target folder in SharePoint and recreate it uploading local files.
- serve is the watcher. Any local change detected while serve is running is passed to the server. The serve supports update, add and delete files and folders modes.
###Options
localPath
string
required
Local folder or file to watch changes. Rufus will build exactly same folder structure to the SharePoint. Note that empty files and folders will not be uploaded.webStaticPort
int
Port used to create server for static files requested by client. Default is 5051.webSocketPort
int
Port used to create WebSocket server for real time communication to client reload. Page reload will run automatically after any change are detected and upload performed. Default is 8081.sharePointUrl
string
required
URL SharePoint site.sharePointFolder
string
required
Relative URL for folder in SharePoint URL.sharePointWorkingUrl
string
When informed, Rufus will open this URL in browser when Rufus Watch is ready. Otherwise, you need to open browser in site working page that client script was inserted after Rufus Watch is ready due to the fact that WebSocket connection is established in page load.ignore
(string, string) => Promise<boolean>
Filter for watcher. It will receive mode and path in parameters. Default is false.username
string
required
Username to login in SharePoint.password
string
required
Password to login in SharePoint. If you use two-step verification please visit Using app passwords with apps that don't support two-step verification.
Options usage example:
const rufusOptions = {
localPath: './src',
webStaticPort: 5051,
webSocketPort: 8081,
sharePointUrl: 'https://myurl.sharepoint.com/sites/subsite',
sharePointFolder: 'Shared Documents/Subfolder',
sharePointWorkingUrl: 'https://myurl.sharepoint.com/sites/subsite/Project%20Detail%20Pages/WorkflowStageStatus.aspx?ProjUid=1',
ignore: async (mode, path) => mode == 'remove' || path.endsWith('.less') || await myCondition(),
username: 'myusername@myemail.com',
password: '**********'
};
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago