title: How do you make a single-page-application (SPA) searchable from SharePoint?
body: <p>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 <a href="https://millermedeiros.github.io/crossroads.js/" rel="nofollow noreferrer">crossroads.js</a>. A lot of information is presented in virtual grids using <a href="https://github.com/mleibman/SlickGrid" rel="nofollow noreferrer">slickgrid.js</a>. All data is fetched from backend using AJAX.</p>
  <p>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.</p>
  <h1>Update</h1>
  <p>After more investigation into this issue, I have concluded that there are at least two possible solutions to this kind of problem.</p>
  <h3>Possible solution 1: Render HTML</h3>
  <p>This approach would involve detecting that a SP crawler is crawling your site, and then return static HTML pages for the crawler. <a href="http://phantomjs.org/" rel="nofollow noreferrer">PhantomJS</a> 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.</p>
  <h3>Possible solution 2: Import data into SharePoint</h3>
  <p>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.</p>