I'm looking to re-create a checkbox/faceted search for a website and I was hoping to get some advice on what libraries to use.
The site is developed in .NET and sits on an Umbraco solution.
The site currently uses Knockout.js and Ajax to call the server with multiple requests, but I want to add routing (Knockout has none) so that the URL can be shared.
I plan on ripping out Knockout and starting from scratch. So does anyone know the best libraries to create a search which requires the following?
URL can be copied which contains data relevant to the selected filters
Multiple filters can be selected
Upon selecting a filter, it automatically updates the view with relevant data
Allows pagination
Any recommendations would be appreciated!
EDIT: Sorry I forgot to mention, I'm looking for front-end solutions as I'm currently searching with Examine on the server.
You can try different options -
1) You can go for Elastic. It calls facets "aggregates" but supports some fairly detailed logic around them. It is pretty simple to understand and the documentation is so far good. There are several c# libraries you can use with it, I've tried NEST: NEST
2) Another option would be to store content in RavenDB and uses facets on that: https://ravendb.net/docs/article-page/3.5/csharp/client-api/commands/querying/how-to-work-with-facet-query
3) You can also try BOBO faceted search which is managed using Umbraco category. Faceted search with BOBO
4) Some more options for you could be -
Xuntos Faceted Search (XFS)
Solr is another option for you. Below are some links -
http://www.slideshare.net/e2-marketing/we-want-a-corporate-umbraco-platforms-errr-surecode-garden15-session
http://www.eduserv.org.uk/blog/2011/09/26/faceted-search-using-solr-what-it-is-and-what-benefits-does-it-provide/
http://www.alpha-solutions.us/products/umbraco-search-solution
Solis Search
Hope these are helpful. Thanks!
Related
I'm creating a web application that will allow people to search book titles, authors, publishers etc. from a database. The database is loaded and ready to go to Django, but I'm struggling to find out how to proceed.
I assume I need to create a webpage with a form that accepts keywords that the user wants to search for, but how do I then search the database (which Django file would this code go into?) for the keyword and output the result in a list?
Sorry if this is super broad. If this is a common question, I can delete it. I would appreciate any help and/or links that could help.
Thanks!
Work through the Django documentation. It is very useful and should be able to solve this problem. Start with their tutorial and learn how the Model/View/Template style works.
https://docs.djangoproject.com/en/2.1/
Once you understand this, searching by title is very easy via a queryset. You'd use something like this (which would go in your "views.py" file):
Book.objects.filter(title__contains="SearchTerm")
More about that here: https://docs.djangoproject.com/en/2.1/topics/db/search/
I wanted a general direction on what tools/technologies to use to build a simple web-based form builder (I have seen the jquery post, that's not what I'm looking for). I was thinking reactjs/vuejs but I need to know if it's possible before I commit to one toolset as opposed to another.
Just to reiterate, my requirement is "build a web-based form builder, people can use it to build forms (like banks/DMVs) and share them with their clients so they can be filled online and printed or printed and filled offline". How would I start implementing it? (already settled on django for backend, I just need recommendations for implementing that functionality in the frontend) Thanks :)
https://shopify.github.io/draggable/ looks like a good, modern library. And it is developed/supported by Shopify, so there is some credibility behind it.
My background is from mobile development and I'm quite new to Javascript so I'm quite confused about the following.
I'm trying to build a JS module that handles a list of data and displays them, so I'm looking for something like JS ListView with the following features:
it accepts an array of objects
it accepts an HTML template (in any format) to render items
it renders only visible views so it can handle large datasets (virtual list)
it can handle item click to return index/underlying object
it supports data modification (item add/remove)
it's free
not under GPL (as long as I understand it correctly) so it can be used in a project without the obligation to submit the code to open source
it supports filtering/sorting (this one is optional)
As a mobile developer those requirements seem to be pretty default to me, but I'm not able to find any suitable solution for several days already.
The options I've checked are:
dhtmlxList - the closest solution I've found so far, but it's under GPL v2 that requires posting the code to opensource.
vue: lacks virtualization/filtering
lists.js - great one, but I can't get how to handle item click to get the underlying object/item index
vlist - a good one, but doesn't handle data modifications though
webix - looks great, but seems to be too "paid"
bunch of libraries that I even can't already find links to
I believe I'm just looking in the wrong direction or using the wrong search terms as it all seems to be pretty standard and any input is much appreciated.
And sorry for stupid question, but in general, how do you handle common UI elements in JS world?
Is there any comprehensive libraries of UI elements for JS which is free and not under the GPL license?
Just went across this Vue component:
https://github.com/Akryum/vue-virtual-scroller
It seems to be what I was looking for - data driven efficient list for javascript (though it's based on a Vue framework which might be not that straightforward to integrate if you don't know it)
Still solves my problem and maybe it would be useful for someone else.
Trying to wire in different components from different libraries / frameworks can be daunting,if you this you would have need for other components for example slider, spinner etc you could pick a framework like ionic that provides to components out of box.
We are working on a single-page-application (SPA) developed in ASP.NET MVC using knouckout and a wealth of other libraries. Routing will be done in front-end, maybe we will use crossroads.js. A lot of information is presented in virtual grids using slickgrid.js. All data is fetched from backend using AJAX.
Now, if you want to crawl and index such a site from SharePoint, how would you go about that? If you just load the main page with no javascript, it is almost empty.
Update
After more investigation into this issue, I have concluded that there are at least two possible solutions to this kind of problem.
Possible solution 1: Render HTML
This approach would involve detecting that a SP crawler is crawling your site, and then return static HTML pages for the crawler. PhantomJS could possibly be used for this. There are however several uncertain aspects to this solution, and I suspect that it would involve a lot of work.
Possible solution 2: Import data into SharePoint
As so clearly described by Josh below, you could import the data that you want crawlable into SharePoint. Then SharePoint can be configured to crawl the data, and the data is not Javascript dependant anymore as it is inside SharePoint. I think this is the best and easiest solution and will mark Josh answer as the accepted answer.
While I see that this question is getting a lot of close requests, I did run across this very question on a previous project. Sharepoint won't be able to index the page that data is manipulated on via your SPA, but inside SP, you can connect external data sources into the search service, thus exposing the data inside the SPA. You would then write custom search results tied to the content type of the data exposed in order to make the results a bit more friendly than just a data row. You might create an entry point in your SPA that can take in a URL with a parameter so you can send the user from the search results to the SPA in one shot.
There are a lot of interconnected concepts to this solution, so I'd suggest looking into connecting external data sources and adding them to the crawled index of SP. Then, create a content type out of the exposed objects. And finally, add a custom search result template for the content type. MSDN will be your friend on this and so will your SP administrator.
I'm looking for a way to do spreadsheet type actions with a table on a website that I'm creating. I looked quickly at KendoUI, but that seems to be a little too far out of my budget. Wondering if there was anything cheaper that I could use.
The main features that I'm looking for is to be able to hide columns, filter rows, and row selection via click-drag.
I have very little js experience, but don't mind looking into it to get started. Would need some direction in where to look for that.
The web application is php based, and runs off of the CodeIgniter Framework.
You need to use jQuery plugin, depending on your need, you will find greats frameworks
I've done a bit of searching and found this one:
http://visop-dev.com/Project+jQuery.sheet