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.) cd to your website directory and download composer with:
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 set aisel as current directory with cd aisel/ and finish installation with commands bellow:
3.) Create database with GUI tool like phpmyadmin or with command
php app/console doctrine:schema:create
3.) Load initial data in database with
php app/console doctrine:fixtures:load
5.) Clear Symfony cache directory
php app/console cache:clear --env=dev
6.) Install frontend dependencies with
bower install
7.) Important: webserver needs permissions to write cache in aisel/app/cache/
Mac users:
sudo chmod +a "_www allow delete,write,append,file_inherit,directory_inherit" app/cache app/logs
sudo chmod +a "whoami allow delete,write,append,file_inherit,directory_inherit" app/cache app/logs
Linux users:
sudo chown -R www-data:www-data app/cache app/logs
8.) Add Links to CSS and JS files
php app/console assets:install web --symlink
Once this steps is done you will be able to access admin section from http://websitename.dev/administration/ and frontend at http://websitename.dev/
Behat tests
Run Behat using the following command to test backend:
$ bin/behatKarma tests
Karma unit tests:
$ grunt karma:unitKarma midway testing:
$ grunt karma:midwayKarma e2e testing:
$ grunt karma:e2eTask: php app/console aisel:sitemap:generate
This command will generate sitemap.xml
Example: http://demo.aisel.co/sitemap.xml
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. See the list of contributors.
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
