(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
| /*Custom Radio Buttons and Checkboxes using Font Awesome*/ | |
| input[type=radio], | |
| input[type='checkbox'] { | |
| display: none; | |
| } | |
| input[type=radio] + label { | |
| display: block; | |
| } | |
| input[type='checkbox'] + label:before, |
(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
| 'use strict'; | |
| var gulp = require('gulp'), | |
| gutil = require('gulp-util'), | |
| tslint = require('gulp-tslint'), | |
| typescript = require('gulp-tsc'), | |
| watch = require('gulp-watch'), | |
| plumber = require('gulp-plumber'), | |
| //livereloadEmbed = require('gulp-embedlr'), |
| # To be inside the /Directory | |
| <IfModule mod_rewrite.c> | |
| RewriteEngine On | |
| RewriteBase / | |
| RewriteRule ^index\.html$ - [L] | |
| RewriteCond %{REQUEST_FILENAME} !-f | |
| RewriteCond %{REQUEST_FILENAME} !-d | |
| RewriteRule . /index.html [L] | |
| </IfModule> |
| /* | |
| a shader executes per pixel | |
| so every thing you see here is he function for every pixel | |
| raymarching is in principe a function that finds the closest point to any surface in the world | |
| then we move our point by that distance and use the same function, | |
| the function will probably be closer to an object in the world every time | |
| and after about 40 to 200 iterations you'll either have found an object or | |
| missed them all into infinity |
| var gulp = require("gulp"); | |
| var gutil = require("gulp-util"); | |
| var rename = require('gulp-rename'); | |
| var webpack = require("webpack"); | |
| var nodemon = require('nodemon'); | |
| var typescript = require('gulp-typescript'); | |
| // These tasks setup nodemon. | |
| gulp.task("start", function(cb) { | |
| var options = { |
| /*! | |
| * Copyright 2015 Google Inc. All rights reserved. | |
| * | |
| * Licensed under the Apache License, Version 2.0 (the "License"); | |
| * you may not use this file except in compliance with the License. | |
| * You may obtain a copy of the License at | |
| * | |
| * http://www.apache.org/licenses/LICENSE-2.0 | |
| * | |
| * Unless required by applicable law or agreed to in writing, software |
| function logClass(target: any) { | |
| // save a reference to the original constructor | |
| var original = target; | |
| // a utility function to generate instances of a class | |
| function construct(constructor, args) { | |
| var c : any = function () { | |
| return constructor.apply(this, args); | |
| } |
| /// <binding AfterBuild='build' Clean='clean' /> | |
| "use strict"; | |
| var path = require('path'); | |
| var gulp = require('gulp'); | |
| var del = require('del'); | |
| var typescript = require('gulp-typescript'); | |
| var inlineNg2Template = require('gulp-inline-ng2-template'); | |
| var sourcemaps = require('gulp-sourcemaps'); |