bountyhunter 0.1.6

  • Installing
  • Versions
  • 5

Build Status

Bounty Hunter


A full text search engine of unstructured documents. It is base upon a reversed index.

Simple usage

First create an instance of cargo

Cargo storage = new Cargo(MODE: CargoMode.MEMORY);

Construct an instance of Hunter.

Hunter hunter = new Hunter( cargo );

Feed document into the system so it can be indexed.

hunter.feedDocSync( "hello world", "This is a hello world document ... fix");

You can also feed a document asynchronous and then it will use the asynchronous methods from Cargo.

hunter.feedDoc( "hello world", "This is a hello world document ... fix").then((int docId) {
	// do stuff here!

Search for a document and retrieve the documents containing these words. "document fix" );


Client Hunter - code


  • Possibility to add words that can be ignored, like stop words
  • Stemming for other languages


If you found a bug, just create a new issue or even better fork and issue a pull request with you fix.

Social media


Follow us on twitter


Follow us on google+

or join our G+ Community


This file contains highlights of what changes on each version of the bountyhunter package.

Pub version 0.1.6

  • update logging package and cargo package to the latest version on pub

Pub version 0.1.5 & 0.1.5+1

  • provide async and sync methods for feedDoc on the hunter class.

Pub version 0.1.4+1

  • update cargo dependency

Pub version 0.1.4

  • introduce stemming, with the porter stemmer implemenation

Pub version 0.1.3+1

  • fix term normalization

Pub version 0.1.3

  • adding normalizers to the hunter

Pub version 0.1.2+1

  • improve scoring

Pub version 0.1.2

  • make bounty hunter jsonable

Pub version 0.1.1

  • refactor code to work on the client

Pub version 0.1.0

  • ranking algorithm to score the bounties the hunter is searching for

Pub version 0.0.3

  • fix refeeding, clean postings of the docId in the index

Pub version 0.0.2

  • adding stop word configuration
  • adding Bounty class to it

Pub version 0.0.1

  • initial setup of the project!

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:

  bountyhunter: ^0.1.6

2. Install it

You can install packages from the command line:

with pub:

$ pub get

Alternatively, your editor might support pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:

import 'package:bountyhunter/bountyhunter.dart';
Version Uploaded Documentation Archive
0.1.6 Jun 23, 2018 Go to the documentation of bountyhunter 0.1.6 Download bountyhunter 0.1.6 archive
0.1.5+1 Nov 8, 2014 Go to the documentation of bountyhunter 0.1.5+1 Download bountyhunter 0.1.5+1 archive
0.1.5 Nov 6, 2014 Go to the documentation of bountyhunter 0.1.5 Download bountyhunter 0.1.5 archive
0.1.4+1 Nov 6, 2014 Go to the documentation of bountyhunter 0.1.4+1 Download bountyhunter 0.1.4+1 archive
0.1.4 Sep 1, 2014 Go to the documentation of bountyhunter 0.1.4 Download bountyhunter 0.1.4 archive
0.1.3+1 Aug 26, 2014 Go to the documentation of bountyhunter 0.1.3+1 Download bountyhunter 0.1.3+1 archive
0.1.3 Aug 26, 2014 Go to the documentation of bountyhunter 0.1.3 Download bountyhunter 0.1.3 archive
0.1.2+1 Aug 25, 2014 Go to the documentation of bountyhunter 0.1.2+1 Download bountyhunter 0.1.2+1 archive
0.1.2 Aug 25, 2014 Go to the documentation of bountyhunter 0.1.2 Download bountyhunter 0.1.2 archive
0.1.1 Aug 25, 2014 Go to the documentation of bountyhunter 0.1.1 Download bountyhunter 0.1.1 archive

All 14 versions...

Describes how popular the package is relative to other packages. [more]
Code health derived from static analysis. [more]
Reflects how tidy and up-to-date the package is. [more]
Weighted score of the above. [more]
Learn more about scoring.

The package version is not analyzed, because it does not support Dart 2. Until this is resolved, the package will receive a health and maintenance score of 0.

Analysis issues and suggestions

Fix dependencies in pubspec.yaml.

Running pub upgrade failed with the following output:

ERR: The current Dart SDK version is 2.1.0.
 Because bountyhunter depends on cargo >=0.1.0 which requires SDK version <2.0.0, version solving failed.

Health suggestions

Format lib/bountyhunter.dart.

Run dartfmt to format lib/bountyhunter.dart.

Format lib/src/bounty.dart.

Run dartfmt to format lib/src/bounty.dart.

Format lib/src/configuration.dart.

Run dartfmt to format lib/src/configuration.dart.

Fix additional 6 files with analysis or formatting issues.

Additional issues in the following files:

  • lib/src/hunter.dart (Run dartfmt to format lib/src/hunter.dart.)
  • lib/src/normalizer.dart (Run dartfmt to format lib/src/normalizer.dart.)
  • lib/src/stemming/porter_stemmer.dart (Run dartfmt to format lib/src/stemming/porter_stemmer.dart.)
  • lib/src/stemming/stemmer.dart (Run dartfmt to format lib/src/stemming/stemmer.dart.)
  • lib/src/utils.dart (Run dartfmt to format lib/src/utils.dart.)
  • lib/src/vector.dart (Run dartfmt to format lib/src/vector.dart.)

Maintenance issues and suggestions

Add SDK constraint in pubspec.yaml. (-50 points)

For information about setting SDK constraint, please see

Fix platform conflicts. (-20 points)

Error(s) prevent platform classification:

Fix dependencies in pubspec.yaml.

Running dartdoc failed. (-10 points)

Make sure dartdoc runs without any issues.

The description is too short. (-20 points)

Add more detail about the package, what it does and what is its target use case. Try to write at least 60 characters.

Maintain an example. (-10 points)

Create a short demo in the example/ directory to show how to use this package. Common file name patterns include: main.dart, example.dart or you could also use bountyhunter.dart.