JavaScript Search Technical Details
-
HTML 5, JavaScript, CSS implementation
-
Everything runs in the browser
-
Fully skinnable & customizable
-
Responsive design
-
No dependency on a specific server-side technology, no client/server state management
-
Supports modern browsers (see Supported Browsers - Coveo JavaScript Search Framework)
-
Integrates in any web context (e.g.: Sitecore, Salesforce, Dynamics)
-
Uses the REST Search API to send queries and receive results from CES:
-
Coveo Cloud Platform or on-premises (see Coveo REST Search API 8.0)
-
Returns results as JSON
-
Supports various forms of Cloud authentication (see Logging in to Coveo Cloud V2), or Windows authentication
-
Support for Coveo Query Extension Language
-
-
Result templates:
-
Uses one of several pluggable JavaScript template engines (Underscore, Mustache/Handlebars, JsRender)
-
Can easily add other template engines
-
Include many helpers to render fields
-
-
-
UI elements (ex.: QueryBox, SearchButton, Facet, ResultList,...)
-
Bound to an HTML element with a well known CSS class
-
Options set through attributes or during JavaScript initialization
-
Customizable CSS default look
-
-
-
DOM events fired on the UI root element
-
Easy to hookup with jQuery
-
-
Uses a Dom Helper class, based on jQuery (see Interacting with the Framework and Its Components)
-
-
Fully featured with multiple-selection, exclude, search AND/OR, sort, and More/Less controls
-
Computed fields
-
-
Filter summary (breadcrumb component)
-
Images arranged in sprites
-
Distribution:
-
Open-source code available from GitHub
-
Available on npm
-
Available from a CDN, with a link provided in the release notes
-
Includes debug and minified versions
-
Trivial deployments in custom systems, no matter the technology
-
Included in Coveo for Sitecore, Coveo for Salesforce, and Coveo for Dynamics integrations
-
-
Logging:
-
Turned off by default but can be enabled through browser console
-
Drill down inside objects
-
Access the JavaScript Search Debug Panel for more details on your results (see Using the JavaScript Search Debug Panel)
-
-
Debugging using browser developer tools to set breakpoints, trace, inspect variables,...