StArE.js is an open source project intended to facilitate developers the creation of alternative visualizations of search engine results page (SERP). StArE.js provides a modular and extensible processing pipeline capable of (1) transforming SERP, (2) extracting features from individual search results, and (3) visualizing SERP in multiple ways.
npm install stare.js
const stare = require('stare.js')(...options);
// stare(searchEngine = '', query = '', pageNumber = 1, metrics = []);
stare('google', 'What is love?', 1, ['ranking', 'language'])
.then(result => {
console.log(result);
})
.catch(err => {
console.error(err);
});
You can find the most basic full example in the examples folder.
StArE.js is currently extended with the following plugins:
SERP | Function name | Description | Documentation |
---|---|---|---|
google |
Handler for SERPs obtained through the Google Custom Search JSON API | See docs | |
Bing | bing |
Handler for SERPs obtained through the Bing web search API | See docs |
Ecosia | ecosia |
Handler for SERPs obtained from ecosia through a web scrapper | See docs |
ElasticSearch | elasticsearch |
Handler for SERPs obtained from ElasticSearch (only basic support) via request-promise | See docs |
Metrics | Metric name | Description | Documentation |
---|---|---|---|
Perspicuity | perspicuity |
Reading Ease for English and Perspicuity for Spanish | See docs |
Language | language |
Detect the most probable language for a document | See docs |
Length of Documents | length |
Calculate the length in characters of a Document | See docs |
Ranking | ranking |
Calculate the length in characters of a Document | See docs |
As is explained in the docs you can create your own extensions for SERP and metrics support.
Please see the full documentation here.
StArE.js is powered by debug.
In order to see all the debug output, run your app with the environment variable
DEBUG
including the desired scope.
To see the output from all of StArE.js's debugging scopes you can use:
DEBUG=stare.js
- Documentation
- More examples
- Travis-CI integration
- Test script
- metrics/perspicuity Support for languages other than ['en-us', 'es', 'fr']
- personal SERP support (like metrics)