search🔍 This article is a stub. You can help the IndieWebCamp wiki by expanding it.
WhyWhy should your site be searchable?
Why should your site have a search UI?
HowHow to implement search on your site. searchability - level 1Make sure your site is at least searchable (IndieMark search level 1). This means:
search box - level 2Add a simple search box to your site using a static form that submits to a search engine to provide time ordered (most recent first) results! (IndieMark search level 2) E.g.<form class="search" action="http://www.google.com/search" method="get"> <input type="hidden" name="as_sitesearch" value="tantek.com"/> <input type="hidden" name="tbs" value="sbd:1,cdr:1,cd_min:1/1/1970"/> <input type="search" name="q"/> <button type="submit">Search</button> </form> And change tantek.com to your personal site name! This HTML has been selfdogfood tested live since 2012-07-06. Search form styling is left as an exercise for the creator. site search with 3rd party backend - level 3Search where your site uses a 3rd party search service (e.g. Google), but still provides the results on your own domain. (IndieMark search level 3) How to TBD. Third Party Search Servicessite search with site backend - level 4Search where your site handles all the indexing and search queries. (IndieMark search level 4) How to TBD. Software
client side searchPossible level 5. How to TBD. Start with: http://lunrjs.com/ I.e.:
IndieWeb ExamplesIndieWeb sites that have search interfaces. Tantek
Aaron Parecki
Ben Werdmuller
Barnaby Walters
Also experimenting with local search engine which indexes the archive of all the pages I’ve linked to as well as mentions of my own pages using Elasticsearch. UI as of 2014-03-01, showing authorship information, page name, excerpt, URL:
Dan Lyke
Since I'm scanning various other sites for inbound links, I'd like to, at some point, index those other sites as well for additional search options. Ben Roberts
Kyle Mahan
In 2016-01, I converted my site to Known, which uses MySQL full text search by default. Christian Weiske
phinde supports faceted browsing on tags, domain, language and file type. It indexes not only the blog but all linked URLs. Crawling, indexing and the HTML frontend are written in PHP, data storage and searching is done in ElasticSearch. The search form is available on the blog index and tag index pages, as well on single blog posts. DesignIf in doubt: copy Google. Search UITo start with, no need for anything more than a single-line text box and “Search” button — keep things focused. IndexingDue to widespread use of microformats on the indieweb, each page being indexed is rich in semantics which can be indexed e.g. explicit name, publication datetime authorship information, relations like in-reply-to, representative image, etc. Some properties can be faked if microformats markup isn’t present:
Many semantics similar to microformats ones can be found in invisible metadata like OGP meta elements — whether or not it can be trusted or gives a better search experience requires further experimentation. To get the best results a plaintext representation of each page should be indexed. In lieu of a HTML to Plaintext algorithm, some steps to follow include:
Result DisplayResults should be displayed in order of relevance by default. Having the option to order search results by datetime might also be useful. Each result should form a block with clear visual thingness separating it from other results. A click anywhere on the block should navigate immediately to the search result URL, which should be shown in it’s entirety at the bottom of the block.
BrainstormingFaceted scoped searchBeyond raw searching of the contents of your site, it may also be useful to index and be able to search within:
Site plus links searchBeyond searching just the contents of what you publish on your own indieweb site, it may be useful to *also* index:
And then provide results from those as well as your own site. Site plus linked sitesBeyond searching just the contents of what you publish on your own indieweb site, it may be useful to *also* index:
And then provide results from those as well as your own site. Social searchBeyond searching just the contents of what you publish on your own indieweb site, it may be useful to *also* index:
And then provide results from their sites as well as your own site. More brainstormsSee additional brainstorms at: See AlsoSearch related sessions at past IndieWebCamps: |



















