Giter Site home page Giter Site logo

azsearch.js's People

Contributors

evanboyle avatar m-gagne avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

azsearch.js's Issues

Flag/Option for API vs direct search

We should include an ability to call an intermediary API that would hide the query key from the clients should desire such behavior. This would include refactoring to make QueryKey & Service optional, and introduce a flag to enable API mode as well as API endpoint.

Question being should we pass the search parameters via query string as we do when directly calling search or (perhaps optionally) POST as JSON object.

Map based results view

Since geo search is easy in Azure Search, we should make it easy to highlight this capability. Will probably look at using this google maps library as it seems to have the most polished react bindings.

better developer experience and debugging

Should update typescript sample project to have better development workflow. Should support "f5" workflow of some sort. Potentially look at having a visual studio project with this set up.

Enhance result template

With pricing being added the results can now be taller than the thumbnail. Suggest we reformat the data so it's a consistent height.

CI or process required to keep CDN up to date

Currently the CDN hosted version of AzSearch is at 0.0.13, what is the process to update it with the latest builds?

https://cdn.jsdelivr.net/azsearch.js/0.0.13/AzSearch.bundle.js

Improve development workflow

  1. Developing new features sometimes requires modifying azsearchstore. It would be good to sort out how we do local development across the projects. There should probably be a development sample that consumes local builds of both azsearchstore and azsearch.js locally.
  2. I should create some tests for azsearch.js
  3. It would be good to setup continuous integration for checkins that run linting, build on a clean environment, and run a set of tests.

Range filter visible without search

The range filter (sqft) is visible at page load even when no search has been performed.

Expected:

  • No facet controls are rendered

Actual:

  • Range Facet is rendered

Repo

  • Load realestatedemo.html
  • Range Facet Control is visible

Feature: sorting control

Would be great to have a drop down control that allows sorting by fields specified by the user. A few examples:

  • orderby=lastRenovationDate desc
  • $orderby=geo.distance(location, geography'POINT(-122.12315 47.88121)')

There is already the ability to set the orderby clause from azsearchstore search parameters, but it may also be worth adding a higher level api that builds sorting string, especially for geo sorting.

Feature: Static filter control

Sometimes users want filtering without faceting. A good example would be the language facet for the channel9 demo

langfacet

Rather than searching over multiple languages, the user wants to specify a single language to limit results to (and also always limit other facets to as well). This might make sense as a drop down similar to @m-gagne 's implementation of the orderby control. Depending on the behavior of this control, it might require changes in the search store to introduce a new facet type. We may need to modify the way clearAllFacets behaves as well. This control could probably take in a list of options, but we could probably try to list the options automatically based on the result of a facet query. Static options would probably be fine to start. This may just end up being a different way of rendering a checkbox facet with slightly different clearAll behavior.

Over-verbose variables like results.results

I've already tried some examples and I've found these very verbose:

  • suggestions.suggestions
  • results.results
    For example:
if(state.results.results && state.results.results.length) {

It looks like System.Configuration.Configuration from .NET and I think the JS users are not accustomed to such verbosity

How to intercept search text to alter search query?

I would like to use NLP using LUIS and allow user to type NLP text in search box. Before sending query to search, I'd like to send query to LUIS and then based on LUIS response, format the search query and/or add filter.

How do i do that using AzSearch.js?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.