Skip to content
This repository has been archived by the owner on Nov 2, 2018. It is now read-only.

Onboarding Resources

Jimmy Lin edited this page Apr 28, 2018 · 8 revisions

Tutorials:

Depending on which part of the app you want to work on you will want to focus on learning different technologies:

Want to work on UI?

Learn the basic languages: HTML, CSS, Javascript & DOM manipulation at https://www.w3schools.com/

Learn to use pre-built UI from the Bootstrap library https://getbootstrap.com/docs/4.0/getting-started/introduction/

Learn SASS for more concise stylesheet definitions

Learn ES6 module imports and exports for Javascript dependencies

Learn to build client-side rendered UI using VueJS https://vuejs.org/v2/guide/

Learn to use server-side rendering using embedded Ruby http://guides.rubyonrails.org/action_view_overview.html

You will also need to organize JS, CSS, and template assets using Webpack and external JS libraries using Sprockets

Learn how to stub data when necessary

Be nice to your client-logic developer

Want to work on client-logic?

Learn the basic languages: Javascript & DOM manipulation at https://www.w3schools.com/

Learn ES6 module imports and exports for Javascript dependencies

Learn how to send and receive data using AJAX, understand how to write asynchronous code using promises

Understand the structure and purpose of HTTP requests & responses, and REST verbs

Learn how to write stubs for your UI developer

Be nice to your API developer and UI developer

Want to work on API?

Learn Ruby https://www.ruby-lang.org/en/documentation/quickstart/

Learn about Rails Routing, ActionControllers, Request parameters, and the ActiveRecord Query Interface https://www.railstutorial.org/book/beginning

Learn how to write SQL statements and translate them to ActiveRecord Relations

Learn how to setup starting pages so your front-end developers have a initial page to work on

Write tests for your endpoints to ensure your authorization logic is complete and sound

Be nice to your client-logic developer and data model developer

Want to work on data modelling and database design?

Learn Ruby https://www.ruby-lang.org/en/documentation/quickstart/

Learn about Rails Model Validations, Migrations, Associations https://www.railstutorial.org/book/beginning

Learn how to write SQL statements and translate them to ActiveRecord Relations

Write model validation tests to make sure your database follows integrity constraints

Be nice to your API developer

Reference docs to keep open:

Javascript, CSS, and HTML reference: https://www.w3schools.com/

VueJS Guide: https://vuejs.org/v2/guide/

Ruby Standard Library: http://ruby-doc.org/core-2.5.0/Enumerable.html (Starting with enumerable because you'll use this the most)

Rails-specific API: http://api.rubyonrails.org/

Setup:

Installing Ruby & Rails

curl -L https://get.rvm.io | bash -s stable --auto-dotfiles --autolibs=enable --rails

Set your default Ruby version

rvm --default use 2.5.0

Installing all libraries

bundle install

Common commands:

Update your libraries:

bundle update && bundle install

run local copy of server

rails s

interactive console

rails c

run test suite

rails test

run database migrations

rails db:migrate

generate a new model

rails g model <model_name>

generate a new controller

rails g controller <controller_name>

generate a new migration

rails g migration <migration_name>