Git Product home page Git Product logo

rails-api-cookbook-lab's Introduction

General Assembly Logo

Rails API: Cookbook API (Lab)

This is part of the Rails API sequence of talks. Each talk has its own repository with a reference README.

Each talk is designed to walk through the creation of a real Rails API, feature-by-feature, using "error driven development". Developers should have completed the introductory Rails API talk. This sequence ends with Rails API: Behavior-Driven Development, where error-driven-development is replaced by automated testing.

Each talk covers three domains, and therefore, three APIs. The demonstration API, developed by consultants, is followed by a code-along API, in which developers and consultants work together to build the API. Finally, developers are expected to build their own API as part of the laboratory portions of each talk.

These API repositories contain a few important branches:

  • master contains starter code.
  • solution contains a feature-complete reference API. History is not canonical.
  • tutorial contains detailed commit history, and tags for where each talk should end.

Preparation

  1. Fork and clone this repository.
  2. Create a new branch, training, for your work.
  3. Checkout to the training branch.
  4. Install dependencies with bundle install.
  5. Create a .env for sensitive settings (touch .env).
  6. Generate new development and test secrets (bin/rake secret).
  7. Store them in .env with keys SECRET_KEY_BASE_<DEVELOPMENT|TEST> respectively.
  8. Setup your database with bin/rake [db:drop] db:create db:migrate db:seed db:examples.
  9. Run the API server with bin/rails server.

Tasks

Developers should run these often!

  • bin/rake routes lists the endpoints available in your API.
  • bin/rake test runs automated tests.
  • bin/rails console opens a REPL that pre-loads the API.
  • bin/rails db opens your database client and loads the correct database.
  • bin/rails server starts the API.
  • scripts/*.sh run various curl commands to test the API. See below.
  1. All content is licensed under a CC­BY­NC­SA 4.0 license.
  2. All software code is licensed under GNU GPLv3. For commercial use or alternative licensing, please contact [email protected].

rails-api-cookbook-lab's People

Contributors

payne-chris-r avatar jrhorn424 avatar laurenfazah avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.