Giter Site home page Giter Site logo

alexanderkhivrych / tutorials Goto Github PK

View Code? Open in Web Editor NEW

This project forked from codebar/tutorials

0.0 1.0 0.0 44.26 MB

๐Ÿ—’ codebar's tutorials

Home Page: http://tutorials.codebar.io/

JavaScript 60.01% Ruby 0.07% CSS 15.28% HTML 24.64%

tutorials's Introduction

This is the source code for http://tutorials.codebar.io/

Getting started

This is a GitHub Pages repo, so you can render the pages with Jekyll. First make sure to install the version of Ruby indicated in .ruby-version, as well as the bundler gem. Then:

  1. bundle install, which will install Jekyll
  2. bundle exec jekyll serve --watch
  3. go to http://localhost:4000/

(you could also use your favourite manager, chruby, rbenv, rvm, etc. See instructions for rvm at the end of this README)

If you are just updating or adding new tutorials, follow steps 1 to 3 only.

If you also want to make changes to the structure of the site (i.e. if you want to modify the site's Javascript files) and run the tests, you need to install Node (follow the link for installation instructions). Then:

$ npm install
$ gulp

and go to http://localhost:4000/test/specrunner.html to run the tests. Tests should be green.

Gulp is only used for development, not in production. In your local copy of this repo, it will concatenate and minify the files inside the javascripts-dev folder, as well as watch for changes in that folder. The concatenated and minified JS file will be generated inside the javascripts folder. You can push both folders when you are finished with your changes. GitHub pages will then generate the site in production with whatever is inside the javascripts folder.

Getting in Touch

You can go to the general codebar Slack channel here or the dedicated tutorials channel here. Use it to get in touch and chat to other codebar students/coaches, or if you need help.

If you are not on Slack use this link to get an invite.

Contributing

We encourage you to contribute with your suggestions and corrections. Head to our issues page and open a new issue or help on the existing ones.

General tutorial rule
  1. All tutorials get the students to build something that they are able to show around at the end of the workshop.

  2. All tutorials follow a structure:

    • Objectives - "In this tutorial we are going to look at..."
    • Goals - "By the end of this tutorial you will have..."
    • Then the exercises.
      • Bonus - This is not always required but if you feel there is something that could be added then please include it.
      • Further reading - Again this is not always required but if you feel there was something in the tutorials that could be covered in more depth then please include any good reading materials/videos or extra tutorials.
  3. Repetition is good. A tutorial can contain multiple exercises that ask the students to take similar steps (e.g. for HTTP Requests one exercise introduces GET, another has GET and POST etc).

  4. Explaining and getting the students to focus on one new thing at a time, presenting students with lots of new content and usage examples can be confusing.

  5. Before starting to write a new tutorial please speak with someone from codebar to see whether it is of interest to students.

To add downloadable files to a new or existing tutorial:
  • Add a folder with your exercise files inside the tutorial folder. For example, for Javascript lesson 3:
js/lesson3/
โ”œโ”€โ”€ assets/
โ”œโ”€โ”€ files/
โ”‚   โ”œโ”€โ”€ index.html
โ”‚   โ”œโ”€โ”€ jquery.js
โ”‚   โ”œโ”€โ”€ script.js
โ”‚   โ””โ”€โ”€ style.css
โ””โ”€โ”€ tutorial.md
  • Add a frontmatter variable files to the tutorial page with a list of the files you added, including folder name:
---
layout: page
title: Introduction to jQuery
files:
  - files/index.html
  - files/jquery.js
  - files/script.js
  - files/style.css
---
  • In the copy of the tutorial, add your link to the files, making it point to just download:
Download the files that you will need to work through the example
[here](download).

And you're done. Commit and push as usual.

RVM

Another way of installing the project dependencies is via RVM. Follow the quick installation guide and then run:

$ rvm install 2.2.1  # inside `codebar/tutorials` folder
$ rvm gemset use codebar-tutorial --create
$ gem install bundler -v 1.17.3
$ bundle install
$ jekyll serve  # go to http://127.0.0.1:4000/

If you also want to make changes to the JavaScript of the site, you'll need to have Node installed. This can be done with a tool like NVM.

License

codebar Tutorials are released under the Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0).

tutorials's People

Contributors

alexanderkustov avatar brmatt avatar caracolahf avatar creature avatar danielquinn avatar deniseyu avatar despo avatar ecmendenhall avatar eddiejaoude avatar fcheung avatar janedallaway avatar jkbits1 avatar jspc avatar kimberleycook avatar koddsson avatar laszpio avatar leocassarani avatar marckk avatar markcbjss avatar martyjg avatar matyikriszta avatar mikestreety avatar octopusinvitro avatar passy avatar richardwestenra avatar samsworldofno avatar steverob avatar szilvihorvath avatar trevorah avatar zoodor avatar

Watchers

 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.