Aisel is open source CMS for highload projects based on combination Symfony2(backend) and AngularJS(frontend)
Project website: http://aisel.co/
Demo frontend: http://demo.aisel.co/ [frontenduser/frontenduser]
Demo administration: http://demo.aisel.co/administration [backenduser/backenduser]
1.) Download composer
curl -sS https://getcomposer.org/installer | php
2.) Create project, installer will ask you dbname, username, password, etc..
php composer.phar create-project -s dev aisel/aisel
then cd aisel/ and finish installation with commands bellow:
3.) Launch installation:
php app/console aisel:install
4.) Install frontend dependencies with Bower
bower install
Important:
Bower is a command line utility. Install it with npm.
$ npm install -g bower
webserver needs permissions to save cache, logs and sessions
Mac users:
sudo chmod +a "_www allow delete,write,append,file_inherit,directory_inherit" app/cache app/logs<br/>
sudo chmod +a "`whoami` allow delete,write,append,file_inherit,directory_inherit" app/cache app/logs app/var<br/>
Linux users:
sudo chown -R www-data:www-data app/cache app/logs<br/>
Once this steps is done you will be able to access admin section from http://yourwebsitename.dev/administration/ and frontend at http://yourwebsitename.dev/
Behat tests
Run Behat using the following command to test backend:
$ bin/behat
Karma tests
Karma unit tests:
$ grunt karma:unit
Karma midway testing:
$ grunt karma:midway
Karma e2e testing:
$ grunt karma:e2e
Task: php app/console aisel:sitemap:generate
This command will generate sitemap.xml
Example: http://demo.aisel.co/sitemap.xml
http://www.responsinator.com/?url=http%3A%2F%2Fdemo.aisel.co%2F%23%21%2Fpage%2Fabout-aisel%2F
Check Google index status: https://www.google.com/search?q=site%3Ademo.aisel.co
To make JS website indexable by Google you need to generate page snapshots
Snapshots handled by https://github.com/localnerve/html-snapshots
To generate snapshots run in terminal: node snapshots.js
Task will create snapshots in directory web/snapshots. In the end you will need to test like this:
For page http://demo.aisel.co/#!/pages/ you need type in terminal:
curl http://demo.aisel.co/?_escaped_fragment_=/pages/
Full info how to make SEO for JS website read here: https://developers.google.com/webmasters/ajax-crawling/docs/specification
Project uses GitHub issues. If you have found bug, please create an issue.
License can be found here.
Aisel was originally created by Ivan Proskuryakov. List of contributors.
To support ongoing development you may send BitCoin to 1DmBssUeNGXC8VC3BFm3VB3Qc9wmSB7DrK
Clean Ubuntu with 512 RAM
Symfony2 in DEV environment
No server or MySQL tweaks
http://tools.pingdom.com/fpt/#!/dpgreK/http://demo.aisel.co/#!/ - 539ms
http://tools.pingdom.com/fpt/#!/OVkNs/http://demo.aisel.co/#!/pages/ - 1.05s
http://tools.pingdom.com/fpt/#!/c7MfRS/http://demo.aisel.co/#!/page/userpage-10/ - 501ms