Вижте официалния сайт www.grada.me за описание на проекта
Проектът е написан с технологии изцяло използващи JavaScript. Причина за това е всички процеси (frontend, backend и работа база данни) да имат общ език и популярността му да увеличава надеждността за продължителна разработка.
Backend частта от проекта е написана на Node.js и Express.js, и използва MongoDB. Frontend частта от проекта е написана на Angular js.
Нужни са ви единствено:
- Vagrant, ако нямате – сваляте и инсталирате
- VirtualBox, ако нямате – сваляте и инсталирате
В директорията на проекта пускате 1 команда:
vagrant up
С vagrant ssh
се логвате във виртуалната машина, а в ~/.pm2/logs се намират логовете.
Това може да отнеме няколко минути, след което имате работещ сайта на адрес: http://10.3.3.3:3000/
Може би vagrant
не може да намери основата, на която базираме автоматичната инсталация (hashicorp/precise32 VM). В този случай изпълнете:
vagrant box add hashicorp/precise32 https://vagrantcloud.com/hashicorp/precise32/version/1/provider/virtualbox.box
При проблем с NFS файлова система (Vagrant казва, че машината не може да намери nfsd
), трябва да се инсталират следните неща:
sudo apt-get install nfs-kernel-server nfs-common
След това нещата ще тръгнат.
Автоматичната настройка създава виртуална машина заемаща 384MB RAM памет и 2GB на диска. Може да я спирате и пускате с команди от директорията на проекта:
vagrant halt # изключва
vagrant up # включва
За още детайли вижте какво се инсталира в нея.
Имплементация е базирана на шаблони/boilerplates:
- mean.js
- passport-api-tokens
- angularjs-token-auth (stackoverflow)
- sass
За компилиране на sass се ползва ruby gem-a sass
Препоръчителна инсталация в linux среда със zsh:
# ruby
git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(rbenv init -)"' >> ~/.zshrc
source $HOME/.zshrc
git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
rbenv install 2.1.1
rbenv global 2.1.1
# sass as CSS precompiler
gem install sass
gem install compass --pre
- app/
- routes/
- controllers/
- models/
- views/
- config/
- env/
- strategies/
- public/
- css/
- img/
- js/
- controllers/
- services/
- lib/
- views/