shc

solr-hyperquest-client

Solr hyperquest client

Showing:

Popularity

Downloads/wk

2

GitHub Stars

1

Maintenance

Last Commit

6yrs ago

Contributors

1

Package

Dependencies

6

License

MIT

Type Definitions

Tree-Shakeable

No?

Categories

Readme

solr-hyperquest-client

Build Status Coverage Status Dependency Status

NPM

Build and used for a real world application (under heavy development). This client is also used for an up coming waterline adapter sails-solr.

Features

Solr support

Installation

npm install solr-hyperquest-client --save

Solr kick start

node_modules/solr-hyperquest-client/bin/install-solr.sh

Usage

// Load dependency
var Solr = require('solr-hyperquest-client');

// Create a client
var client = new Solr.Client({
    host: 'localhost',
    port: '8983',
    instance: 'solr',
    core: 'schemaless'
});

// Create a solr core (optional you take complete control managing solr)
client.coreCreate({
        action: 'CREATE',
        name: 'schemaless',
        loadOnStartup: true,
        instanceDir: 'schemaless',
        configSet: 'data_driven_schema_configs',
        config: 'solrconfig.xml',
        schema: 'schema.xml',
        dataDir: 'data'
    },
    function(err, data) {
        if (err) {
            console.log(err);
        } else {
            console.log('Solr response:', response);
        }
    });

// Add a new document
client.add({name: 'foo'},function(err,response){
   if(err){
      console.log(err);
   }else{
      console.log('Solr response:', response);
   }
});

// Get the new document
client.find('q=foo',function(err, response) {
   if(err){
      console.log(err);
   }else{
      console.log('Solr response:', response);
   }
});

Query builder (ORM)

inspired by waterline

var Solr = require('solr-hyperquest-client');
var Query = Solr.Query;

var client = new Solr.Client({
    host: 'localhost',
    port: '8983',
    instance: 'solr',
    core: 'schemaless'
});

var query = new Query({
    where: {
        name: 'foo'
    },
    skip: 0,
    limit: 10,
    sort: 'name DESC',
    select: ['name']
});

client.find(query.queryUri, function(err, response) {
   if(err){
      console.log(err);
   }else{
      console.log('Solr response:', response);
   }
});

Documentation

coming soon...

Testing

make test

TODO's

  1. add more tests
  2. write documentation

Contributing

  1. Fork it ( https://github.com/sajov/solr-hyperquest-client/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100
No reviews found
Be the first to rate

Alternatives

No alternatives found

Tutorials

No tutorials found
Add a tutorial