JavaScripting

The definitive source of the best
JavaScript libraries, frameworks, and plugins.


  • ×

    Typeahead.js

    A fast and fully-featured autocomplete library
    Filed under 

    • 🔾83%Overall
    • 15,495
    • 15.9 days
    • 🕩3309
    • 👥16

    build status Built with Grunt

    typeahead.js

    Inspired by twitter.com's autocomplete search functionality, typeahead.js is a flexible JavaScript library that provides a strong foundation for building robust typeaheads.

    The typeahead.js library consists of 2 components: the suggestion engine, Bloodhound, and the UI view, Typeahead. The suggestion engine is responsible for computing suggestions for a given query. The UI view is responsible for rendering suggestions and handling DOM interactions. Both components can be used separately, but when used together, they can provide a rich typeahead experience.

    Getting Started

    How you acquire typeahead.js is up to you.

    Preferred method:

    • Install with Bower: $ bower install typeahead.js

    Other methods:

    Note: both bloodhound.js and typeahead.jquery.js have a dependency on jQuery 1.9+.

    Documentation

    Examples

    For some working examples of typeahead.js, visit the examples page.

    Browser Support

    • Chrome
    • Firefox 3.5+
    • Safari 4+
    • Internet Explorer 8+
    • Opera 11+

    NOTE: typeahead.js is not tested on mobile browsers.

    Customer Support

    For general questions about typeahead.js, tweet at @typeahead.

    For technical questions, you should post a question on Stack Overflow and tag it with typeahead.js.

    Issues

    Discovered a bug? Please create an issue here on GitHub!

    https://github.com/twitter/typeahead.js/issues

    Versioning

    For transparency and insight into our release cycle, releases will be numbered with the following format:

    <major>.<minor>.<patch>

    And constructed with the following guidelines:

    • Breaking backwards compatibility bumps the major
    • New additions without breaking backwards compatibility bumps the minor
    • Bug fixes and misc changes bump the patch

    For more information on semantic versioning, please visit http://semver.org/.

    Testing

    Tests are written using Jasmine and ran with Karma. To run the test suite with PhantomJS, run $ npm test.

    Developers

    If you plan on contributing to typeahead.js, be sure to read the contributing guidelines. A good starting place for new contributors are issues labeled with entry-level. Entry-level issues tend to require minor changes and provide developers a chance to get more familiar with typeahead.js before taking on more challenging work.

    In order to build and test typeahead.js, you'll need to install its dev dependencies ($ npm install) and have grunt-cli installed ($ npm install -g grunt-cli). Below is an overview of the available Grunt tasks that'll be useful in development.

    • grunt build – Builds typeahead.js from source.
    • grunt lint – Runs source and test files through JSHint.
    • grunt watch – Rebuilds typeahead.js whenever a source file is modified.
    • grunt server – Serves files from the root of typeahead.js on localhost:8888. Useful for using test/playground.html for debugging/testing.
    • grunt dev – Runs grunt watch and grunt server in parallel.

    Maintainers

    Authors

    License

    Copyright 2013 Twitter, Inc.

    Licensed under the MIT License

    Show All