Hi, Awesome seed project, got started in no time!
I'm trying to add SEO to my app.
I'm using ui-router-metatags to have dynamic meta-tags on every page but the problem is that only Chrome's crawler runs javascript and waits for the DOM to load when it indexes pages, all the others(facebook, tweeter etc) don't, and they take the html as is.
There are a lot of paid services that pre-render the angular pages and cache them for when the crawler comes, but i don't want to pay, and i don't need the volumes that they offer (seo4ajax, brombone, prerender.io etc).
So i'm thinking in the direction of rendering some pages(don't have to be all of them) on the server and serving them as ready HTML.
Any idea how i would start doing that with this seed?
here is a sample from my routing if that would help:
.state('audio', {
url: "/audio/:songTitle",
templateUrl: root + 'templ/audio',
controller: 'audioController as audio',
resolve: {
songTitle: function ($stateParams) {
return $stateParams.songTitle;
}
},
metaTags: {
title: function (songTitle) {
return songTitle;
},
//TODO: add dynamic description
description: 'song desc',
properties: {
'og:title': function (songTitle) {
return songTitle;
},
'og:type': 'audio',
//TODO: add dynamic description
'og:description': 'song desc',
'og:image': root + 'images/logo.png'
}
}
})