Code Monkey home page Code Monkey logo

textbook's Introduction

Ada Developer Academy "Textbook"

This project is a platform for organizing and distributing the curriculum for Ada Developers Academy in Seattle, WA, USA. This isn't a textbook in the conventional sense; the documents herein are meant to supplement lectures, workshops, exercises, and projects delivered in the Ada classroom.

This is a Middleman project; the built, static-site is available on GitHub Pages or by browsing the gh-pages branch of this repo.

Textbook Structure

Each portion of the Ada curriciulum is broken into units. Each unit into chapters, and each chapter into lectures. Every unit, chapter, and lecture is represented by a markdown file, organized in the /units directory as described by the table of contents located in /data/toc.json.

Creating New Textbook Content

To generate new lectures/chapters/units, add the appropriate structure to the toc.json, then run rake toc from the project root. That rake task will parse the table of contents, then create any missing directories or files in the appropriate paths. After that, add the lecture/notes/exercises/whatevs to the generated markdown file. There's no need to alter the Middleman config or reference the new content; everything is automatically generated/proxied/routed based on the table of contents.

Run middleman server from the project root to fire up a local web server. By pointing your browser to http://localhost:4567/ you can navigate to your new content to verify its layout and appearance before committing or deploying.

Deploying the Textbook

Run middleman deploy from the project root to automatically clean, build, and deploy the project. Deployment is a force-push of the built static site to the gh-pages branch of GitHub repo. Once pushed to that branch, GitHub pushes the new content live, typically within a minute. You may need to force-refresh your browser to see the updated content.

Please be aware that every deploy force-pushes over the existing deploy. The gh-pages branch is for deployments only. No content, markup, styles, or anything else should be manually committed/pushed to that branch. It will be overwritten and lost on the next deploy. All development should happen in forks or branches that are then pull-requested into master.

License

This project is released under the MIT License. Please see the accompanying LICENSE.md file for more details.

Ada Developers Academy's Curriculum is licensed Creative Commons Attribution-ShareAlike 4.0. Creative Commons License

textbook's People

Contributors

jnf avatar

Watchers

 avatar  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.