Ruby on Rails + Angular code template for Banana Coding
- Create a new repo on github
- Open Terminal
- Create a bare clone of the repository.
git clone --bare git@github.com:BananaCoding/yellowprint
- Mirror-push to the new repository.
cd yellowprint.git
git push --mirror git@github.com:BananaCoding/new-repository.git
Where new-repository is the name of your new github repo.
5. Remove template folder from your local machine.
cd ..
rm -rf yellowprint.git
- Clone new repo to your local machine.
git clone git@github.com:BananaCoding/new-repository.git
- install rbenv
brew install rbenv
brew upgrade rbenv ruby-build
- ruby 2.5.0
rbenv install 2.5.0
rbenv global 2.5.0
- nodejs
brew install node - yarn
brew install yarn
- Mac user have to install Xcode command line tool first
- xcode-select --install # Install Command Line Tools if you haven't already.
- sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
- install yarn https://yarnpkg.com/lang/en/docs/install
- install ruby 2.5.0(Windows: https://rubyinstaller.org/, Mac: https://github.com/rbenv/rbenv#homebrew-on-macos)
- clone code from YellowPrint repo "git clone git@github.com:BananaCoding/yellowprint.git"
- create config/application.yml you can copy sample config from config/application.sample.yml
- create config/database.yml you can copy sample config from config/database.sample.yml
- run "yarn install"
- run "gem install bundler"
- run "sudo bundle install"
- run "rake db:setup" to setup database
- start server with "rails s" command
- open "localhost:3000" on your web browser
We're using Figaro as a Rails app configuration, so please create your own 'config/application.yml' by running
bundle exec figaro install
you can see the required ENV in 'config/initializer/figaro.rb'
ps. please also check 'config/application.sample.yml'
- link project to Heroku repo by using command
git remote add heroku git@heroku.com:project.git
where project is the name of your Heroku project
- deploy to Heroku by using command
git push heroku master
We are using Drone as CI (Continuous Integration). Please check .drone.yml file
You also have to setup your Drone project and environment variables at http://drone.bananacoding.com
Following are required variables
- HEROKU_API_KEY (You can get the key from Heroku website > Account Setting > API Key)
- HEROKU_LOGIN (Your email)
- HEROKU_GIT_URL (https://git.heroku.com/your-app-name.git ** where
your-app-nameis your Heroku app name) - EMAIL_HOST
- EMAIL_USERNAME
- EMAIL_PASSWORD
You can enable rails admin by adding rails_admin_path variable into your application.yml file
We are using i18n and i18n-js together, which means you can use ruby I18n translation on client side like this javascript code
I18n.t("KEY")
- add node module name into package.json
- run
yarn install - import js file(of installed module) into
app/javascripts/packs/app.js - import css file(of installed module) into
app/javascripts/app.scss