GithubHelp home page GithubHelp logo

codingtrain / website-archive Goto Github PK

View Code? Open in Web Editor NEW
5.7K 382.0 5.7K 108.82 MB

Archive of the Coding Train website (first version)

Home Page: https://codingtrain.github.io/website-archive/

License: MIT License

HTML 0.60% JavaScript 97.39% Processing 1.22% GLSL 0.02% Ruby 0.01% CSS 0.01% Shell 0.01% Java 0.70% Sass 0.05% SCSS 0.01%
learning youtube education art design hacktoberfest

website-archive's Introduction

The Coding Train Logo


Current Status

This repository is no longer maintained as we have moved to a new website and repo. Please note it is still accessable through github.io but should only be used for archive purposes.

Repository Content

Hello and welcome to the GitHub repository for The Coding Train website! This houses all of the content at thecodingtrain.com as well as source code for corresponding videos. The site welcomes contributions from the community in a variety of ways! More information at CONTRIBUTING.md.

Other links

Live Streams

Live streams are announced as events on YouTube, please subscribe and press the bell icon to receive notifications for events!

Add your own variation

If you want to share your own variation based on a Coding Train video, visit the page corresponding to the video on our website. Check out the Community Contributions Guide to see how it is done. It will then be featured right under the video on the website for everyone to see!

Help by adding pages for video tutorials

We are currently in the process of migrating videos and community contributions to our new system. If you want to help with this, have a look at the Content Contribution Guide. Thanks for helping us out!

website-archive's People

Contributors

abhay2008 avatar anuraghazra avatar ashikpaul avatar blinkityblank avatar dependabot-preview[bot] avatar dependabot[bot] avatar duskvirkus avatar edorfaus avatar friskydev avatar gruselhaus avatar gypsydangerous avatar jcponce avatar kobeliesenborgs avatar maxpelly avatar meaningof42 avatar meiamsome avatar merijn-dh avatar mikakruschel avatar n4g1 avatar ndmj avatar nonas-hunter avatar sarvagya230 avatar shiffman avatar simon-tiger avatar spencerstith avatar tahsintariq avatar turqdevdesign avatar vimkat avatar weinzierl-florian avatar zwergb avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

website-archive's Issues

star field doesn't work with WEBGL in p5js

Hi!

I was toying with the star field example here,
and I wanted to add some planets, etc., so I turned on WEBGL.

However, as soon as I enable WEBGL,
the stars disappear, and I get:
"7790: Uncaught TypeError: undefined is not a function"

I tried turning a few things on and off to fix it, but no luck.

I'm using 0.6.1 on a MacBook with El Capitan (and I'm using the p5.js editor).

[Not sure if I should be posting this here or on the p5 page,
apologies if I chose the wrong one!]

p5.js tutorial - 7.14 drag and drop a file - example file - strange console message

Running the following code, I made form your video tutorial, everything seems to work fine, but the console gives me a series of strange messages.

// this is the message I get from the console: 18693: Uncaught TypeError: Cannot read property '0' of undefined

// and here's the code
function setup() {
var canvas = createCanvas(200, 200);
background(100);

canvas.drop(gotFile);
}

function gotFile(file){
createP(file.name +" "+file.type+" "+file.size);
var img = createImg(file.data);
img.hide();

image(img, 0, 0, 200, 200);
}

Please help me map the time to the arcs angle

function updateTimer(deadline){
  var time = deadline - new Date();
  return {
    'minutes': Math.floor( (time/1000/60) % 60 ),
    'seconds': Math.floor( (time/1000) % 60 ),
    'total' : time
  };
}

var o = 350;


function setup() {
 createCanvas (850,400);
  
}

function draw() {
  background (200,200,200,0);

  r = map (mouseX,0.00009,850,0.0,TWO_PI)
  
  
  //ellipse
  fill (250, 200, 200);
  ellipse (width/2,height/2,o,o);
  
  

  push();
  translate(425,200);
  rotate(4.712);
  fill(255,100,50);
  arc(0,0,o,o,0.0,r); 
  pop();
 
  

}


function animateClock(span){
  span.className = "turn";
  setTimeout(function(){
    span.className = "";
  },700);
}

function startTimer(id, deadline){
  var timerInterval = setInterval(function(){
    var clock = document.getElementById(id);
    var timer = updateTimer(deadline);

    clock.innerHTML = '<span>' + timer.minutes + '</span>' + '<span>' + timer.seconds + '</span>';

    //animations
    var spans = clock.getElementsByTagName("span");
    animateClock(spans[3]);
    if(timer.seconds == 59) animateClock(spans[2]);
    if(timer.minutes == 59 && timer.seconds == 59) animateClock(spans[1]);

    //check for end of timer
    if(timer.total < 1){
      clearInterval(timerInterval);
      clock.innerHTML = '<span>0</span><span>0</span>';
    }


  }, 1000);
}


window.onload = function(){
  var deadline = new Date("1/1/20 3:01:00");
  startTimer("clock", deadline);
};

In 7.13.3 and 7.13.4 folder, images won't load from data folder

Hi Dan,

both folders work fine at the moment. But l want images to be stored in the folder called data, so I created a fold named data, and put the image file into it. However, the image won't load. Images are loaded fine outside of data folder.

What did I do wrong?

Thanks

10.2 issue

Hi,

I am getting this error and am not sure what is causing it:

p5.min.js:6 Uncaught TypeError: Failed to execute 'drawImage' on 'CanvasRenderingContext2D': The provided value is not of type '(HTMLImageElement or HTMLVideoElement or HTMLCanvasElement or ImageBitmap)'

I have tried this in Chrome and Firefox, and tried with the github example as well.

Github pages links in README

This repo is now set to have github pages enabled. So might make sense for p5.js example to link in the README to the example running in the browser.

Re-organization?

Is the code easy to find here based on the corresponding video? I'm open to any and all ideas for reorganizing this repo.

Mitosis in Processing - "function copy()" does not exist.

I was very thrilled to see that there was a Processing version of the Mitosis project. I copied it down, and ran the program. There was an error. Here is what it said: "The function copy() does not exist". It said that the error was coming from this line of code: this.pos = pos.copy();. I don't understand the issue, but it would be nice if someone could help me out.

(Im using Processing 2.2.1, that might be an issue...)

Smart Rockets issue: parentA is undefined

Hi, i just copied your "Smart rockets" code and when running it , after the first 200 iterations, it has an error: "parentA is undefined". i tried it in different browsers and dunno if this is happening only to me or what. It's weird since the code is the same as in your video, so dunno where the problem should be.

Anyway, thx a lot for all your videos!

Coding Challenge: Diffusion Reaction - P5.js

Just a few things I noticed:

  • Variable c, on line 71, is not used - it's then constrained but not used again. Thought this should maybe be used as part of colour and pixel allocation line 72,75

Thanks!

A potential problem to be noticed!

If there are two sketch.js files such as sketch.js and sketch2.js, when we run command R we will only see sketch.js work; if we add sketch2.js onto html, we won't see sketch.js work. Does it mean, there will be either one of them is visible at a time? If so, every time we want to see one we need to comment out the other sketch in html file?

circle without overlap and press r moves and when collide dissapears

int n = (int)random(5, 20); //number of lines

float[] x1 = new float[n];
float[] y = new float[n];
float[] r = new float[n];
float[] xspeed = new float[n];
float[] yspeed = new float[n];
color[] c = new color[n];
float [] circles ;
boolean[] direction = new boolean[n];
//boolean[] overlap = new boolean[n];
boolean stop = false;

void initialize() {

for (int i=0; i < n; i++) { //for each line
// circles = {x1[i],y[i],r[i]};

//randomize all attributes 
r[i] = random(10, 50);
x1[i] = random(r[i], width-r[i]);
// x2[i] = random(width);
y[i] = random(r[i], height-r[i]);
c[i] = color(random(0, 255),random(0, 255),random(0, 255));

//by default direction[i] = false
if (random(1) < 0.5) { //with 50% probablity
  direction[i] = true; //flip it
  xspeed[i] = random(0.5, 2);
} else { //50% probability
  xspeed[i] = random(-2, -0.5);
}
if (random(1) < 0.5) { //with 50% probablity
  direction[i] = true; //flip it
  yspeed[i] = random(0.5, 2);
} else { //50% probability
  yspeed[i] = random(-2, -0.5);
}

}
}

void drawLines() {
for (int i=0; i < n; i++) {
for (int j=0; j < n; j++) {

int count = 0;

boolean overlap=false;
float d= dist(x1[i],y[i],x1[j],y[j]);
if (d< r[i]+r[j]){
overlap =true;
}
if (!overlap) {
count++;
}
}
//draw the line
noStroke();
fill (255);
ellipse (x1[i], y[i], r[i]*3, r[i]*3);
fill(c[i]);
ellipse(x1[i], y[i], r[i]*2, r[i]*2);
collide (i,i);

}

keyPressed();
//overlapping (random(width)) ;
}

/*
void overlapping () {

int count = 0;
boolean overlap=false;
for (int j=0;j<circles.length;j++) {
float other = circles[j];

float d= dist(circles.x1[j],circles.y,other.x1,other.y);
if (d< circle.r+other.r){
overlap =true;
}
if (!overlap) {
count++;
}
}
*/

void keyReleased () {
if (key== 'r') {
stop=!stop;
}
}

void keyPressed () {
for (int idx=0; idx < n; idx++) {
if (stop== true) {
if (key=='r') {
x1[idx]=x1[idx]+xspeed[idx];
y[idx]=y[idx]+yspeed[idx];
if (direction[idx] == true) { //right
//move
if (x1[idx] >= width - r[idx] || x1[idx] <= r[idx] ) {
xspeed[idx] = -xspeed[idx];
//direction[idx] = false;
}
//else {
//move
// x1[idx]--;
// y[idx]--;
//y[idx]=y[idx]+yspeed[idx];
//x2[idx]--;

    //if reached left border
    if (y[idx] >= height -r[idx] || y[idx] <=  r[idx]) {
      yspeed[idx] = -yspeed[idx];
      //direction[idx] = true; //set it up to move right next time
    }
  } else {
    direction[idx]=!direction[idx] ;
  }
}

}
}
}

void collide (int d1,int d2) {
// if () {
// }

}

void setup() {
size(500, 300);
background(255);
initialize();

/*
for (int i=0; i<25;i++){
circles = new float [25];
float r = random(10, 50);
float x1= random(r, width-r);
// x2[i] = random(width);
float y = random(r, height-r);
}

int count = 0;
boolean overlap=false;
for (int j=0;j<circles.length;j++) {
float other = circles[j];
float r = random(10, 50);
float x1= random(r, width-r);
// x2[i] = random(width);
float y = random(r, height-r);

float d= dist(circles.x1,circles.y,other.x1,other.y);
if (d< circles.r+other.r){
overlap =true;
}
if (!overlap) {
count++;
}

}
*/
}

void draw() {
background(255);
drawLines();
}

Agario socket error

server.js:75
        blob.x = data.x;
               ^

TypeError: Cannot set property 'x' of undefined

I'm getting this error on the agario socket challenge.

Virtual Oscilloscope visualizer for sound in p5.js

I have an old oscilloscope that has a way to configure it for audio frequency measurement. There are some cool things you can do with drawing images using sound, but the scope I have is broken. It would be cool as a learning exercise to recreate how the oscilloscope draws to a screen in p5.js which can take a sound signal (so a more advanced version of your sound in p5.js series). I just don't know how to convert how the oscilloscope works into code.

In 6.9_p5.js_checking_objects_intersection_1 Lines 12-13 are wrong

Lines 12-13 should be:

b1 = new Bubble(250, 200);
b2 = new Bubble(350, 200);

instead of:

var b1 = new Bubble(250, 200);
var b2 = new Bubble(350, 200);

otherwise you get the error:
19: Uncaught TypeError: Cannot read property 'update' of undefined

Variables b1 & b2 are already defined in lines 6-7.

P.S. Daniel, thanks SO MUCH for your effort in making these videos. I'm learning a lot!!
Keep it up, you rule, man!
Greetings from Spain.

7.13.3 and 7.13.4 are not working due to `this.parent()` ?

Hi Dan,
both programs have the same error and I don't know where is the problem:
12684: Uncaught TypeError: Cannot read property 'appendChild' of undefined

I think both programs may have something to do with:

  var paragraph = this.parent();
  img.parent(paragraph);

Also I don't have the apple image you used.

Thanks,
kenny

No Device Connected Cannot Find Devices

Hi Dan,
I have Xbox one and kinect adapter for windows. And I've all ready installed the windows kinect SDK 2.0.But when I run your demo on processing 3.0 ,it warned me: "No Device Connected" " Cannot Find Devices" I have already downloaded the kinectV2 library.

Thanks,
Nicole

Tic-Tac-Toe

Make a Tic-Tac-Toe, using p5.js and firebase.

A bot who follow and tweet images (from Processing)

Hi! I want to know if it's possible to combine this two bot.js files : "node4_b_followbot" and "node5"
Thank you very much!

Processing bot:

console.log('The image bot is starting');

var Twit = require('twit');

var config = require('./config');

var T = new Twit(config);

var exec = require('child_process').exec;
var fs = require('fs');

tweetIt();
// setInterval(tweetIt, 1000*20);

function tweetIt() {
  var cmd = 'processing-java --sketch=`pwd`/rainbow --run';
  exec(cmd, processing);

  function processing() {
    var filename = 'rainbow/output.png';
    var params = {
      encoding: 'base64'
    }
    var b64 = fs.readFileSync(filename, params);

    T.post('media/upload', { media_data: b64 }, uploaded);

    function uploaded(err, data, response) {
      var id = data.media_id_string;
      var tweet = {
        status: '#codingrainbow live from node.js',
        media_ids: [id]
      }
      T.post('statuses/update', tweet, tweeted);

    }

    function tweeted(err, data, response) {
      if (err) {
        console.log("Something went wwrong!");
      } else {
        console.log("It worked!");
      }
    }
  }
}

And follow bot:


console.log('The follow bot is starting');

var Twit = require('twit');

var config = require('./config');
var T = new Twit(config);

// Setting up a user stream
var stream = T.stream('user');

// Anytime someone follows me
stream.on('follow', followed);

function followed(eventMsg) {
  console.log("Follow event!");
  var name = eventMsg.source.name;
  var screenName = eventMsg.source.screen_name;
  tweetIt('.@' + screenName + ' do you like rainbows?');
}


function tweetIt(txt) {

    var tweet = {
      status: txt
    }

    T.post('statuses/update', tweet, tweeted);

    function tweeted(err, data, response) {
      if (err) {
        console.log("Something went wwrong!");
      } else {
        console.log("It worked!");
      }
    }
}

"initDevice()" and "depthWidth" not working on Processing3 with kinect1

Hi, when I try to compile, processing says that the function "initDevice()" does not exist.
The same with "depthWidth" and "depthHeight": The global variable depthWidth does not exist.

It seems to work on kinect2 but not on kinect1.

Is there another way to select the depth width on a kinect1?

thanks

how to syn base with my fork?

I have noticed a message on my fork:

This branch is 2 commits ahead, 1 commit behind shiffman:master.

Then I went back to git pull and git fetch, my terminal says:

Already up-to-date

  • Why am I still one commit behind? Did I miss something?

Also, after I pushed another commit a moment ago, and clicked pull requrest on my fork, then the page went to your repo, but this time there is no Create pull request button to click, even though the page lists two commits needed to be merged:

  • Did I miss something?
  • Or only one commit can be created with pull request at a time?

Help Porting to Lua

I need help in porting this code for learning in lua. Using the Love2D framework, up until the checkNeighbors function work, although instead of checking and highlighting random tiles next to the current one, the next cell is sometimes diagonal and very random. Here is the repo. Thanks

maze.zip

p5.js Tutorial - 6.4 The Constructor Function in JavaScript

Hi there!

I was trying to make a timer object in p5JS to practice with the contructor function: everything seems to work fine with the timer but I get a wired error message from the console:

"77: Uncaught SyntaxError: Failed to construct 'AudioContext': number of hardware contexts reached maximum (6)."

I don't really know why I get this, and what does it means... 'AudioContext'? Gulp! I don't even have 77 lines of code?
It would be great to understand what I have done wrong here.

Following the code of the two js files I am using for this:

//first one for the timer object 
function Timer(tempTotalTime) {
  this.savedTime; // When timed started
  this.totalTime = tempTotalTime; // How long timer should last

  //starting the timer
  this.start = function() {
    this.savedTime = millis();
  }

  this.checkTime = function() {
    // check how much time has passed  
    var passedTime = millis() - this.savedTime;
    if (passedTime > this.totalTime) {
      return true;
    } else {
      return false;
    }
  }
}

// and another one for the "main program"
var timer;

function setup(){
  timer = new Timer(2000);
  timer.start();
}

function draw(){
  if (timer.checkTime()){
    println("time is finished");
    //timer.start();
  } 
}

p5.js Tutorial 10.4: Brightness Mirror - Bug?

when copying pixels from the video to my canvas, it looks like I am copying pixels from the video at the original size, not scaled down at 320x240. Maybe a Bug? Me running latest p5.js complete - March 4 2016 release on Mac OSX 10.11.3
But not just the scale is wrong, please see the image attached.

screen shot 2016-04-02 at 21 24 57

Now, since I remeber I sow something similar in processing, I found Daniel's code of the learning processing exercises ported in p5js, give them a try and they worked perfectly, so I decided to go line by line and see what was wrong with my code.
After 1 hour of complete frustration, I decided to change the only thing left: the libraries folder itself.
And It worked! As soon as I overwrite the DOM library with the older libraries, from the learning processing exercise, all problems are fixed.

Now, this is driving me crazy. What's going on? Is there a bug on the latest libraries of p5js?

following my code that replicates the one of the tutorial.

var video;

function setup() {
  createCanvas(320, 240);
  // if you work on Hi-density display you need to add the following line
  pixelDensity(1);
  video = createCapture(VIDEO);
  video.size(320, 240);
}

function draw() {
  background(51);

  video.loadPixels();
  loadPixels();

for (var y = 0; y < height; y++){
  for (var x = 0; x < width; x++){
   var indexLoc = (x + y * width) * 4; 
   var r = video.pixels[indexLoc + 0]; // r value from the video
   var g = video.pixels[indexLoc + 1]; // g value from the video
   var b = video.pixels[indexLoc + 2]; // b value from the video
   pixels[indexLoc + 0] = r; 
   pixels[indexLoc + 1] = g;
   pixels[indexLoc + 2] = b; 
   pixels[indexLoc + 3] = 255; // alpha value 
  }
}
  updatePixels();
}

Neural Networks

Can you create videos, or one about neural network implementation?

fractal tree: mapping angle without slider in Processing

Hey man,

first off, I love your videos. The way you explain things is so refreshing and it sounds like you are a human, not just someone reading of his premade script.
I hope you can help me with my problem.
I tried to replicate the fractal tree in Processing and it works out fine, except I tried to replace your slider by just mapping mouseX in the range. The problem I now have is that one fractal tree with angle x gets drawn over another fractal tree with angle x-1 for example.
I tried resetting the background but the recursiveness makes it impossible (correct me if I am wrong).

void setup(){
  size(800,640);
  background(51);
}

void draw(){
  int len = 200;
  translate(width / 2, height);
  stroke(255);
  strokeWeight(2);
  branch(len);
}

float angle = PI/4;

void branch(float len){
  line(0,0,0,-len);
  if (len > 4) {
    pushMatrix();
    translate(0,-len);
    rotate(map(mouseX,0,width,0,2*PI));
    branch(len*0.67);
    popMatrix();
    pushMatrix();
    translate(0,-len);
    rotate(-map(mouseX,0,width,0,2*PI));
    branch(len*0.67);
    popMatrix();
  }
}

P5.js vs Processing.js

Hello,

I would like to know what are the differences between P5.js and Processing.js

Thank you...

Is there a way to have the latest editor?

Hi Dan,
As bugs are fixed along the way, but it won't be updated quickly for the version we downloaded from processing.org. I wonder whether I can also have the latest editor you are using at the moment? Do I need to fork the p5.js editor repo to do it?

Lerp function in video "Processing / p5.js Tutorial: What is lerp? (Linear Interpolation)"

Hi Dan,

Thanks for your Channel, I am learning so much out of it.

Here, I'll be referring to your video "Processing / p5.js Tutorial: What is lerp? (Linear Interpolation)" on YT.

Although the smoothing effect is really (really) cool, and although most people actually use Lerp like this (thus I'm sure I'll be heavily criticized for this message! I hope I'll still manage to get my point across), my understanding is that it's not actually what it is meant to be doing (I mean generally speaking, outside Processing).

In the video linearity is indeed used from the current position to the next... ok, fine!, point taken... (by the way, on a side note, the current position will "mathematically" never reach the target, it will tend to it). But is this really linearity?

Shouldn't lerp be used to move from a starting position to the target with the intermediate positions linearly distributed along the path? (i.e with a constant "linear" speed).

Modifying the code from the video, here's what I'm trying to say:

float start = 0;
float curr;
float target = 300;
float lerpamount;

void setup() {
  size(600,400);
  lerpamount = 0;  
}

void draw() {
  curr = lerp(start, target, constrain(lerpamount, 0, 1));
  lerpamount += 0.02;

  background(51);
  stroke(255);
  
  fill(255, 0, 175);
  ellipse(target, 200, 64, 64);
  
  fill(175, 0, 255);
  ellipse(curr, 200, 64, 64);
  
}

Again, I know lerp is often used to smooth the way, I am not arguing about that (and that doesn't make it right), but that should maybe be the goal of another function (the Vector3 moveTowards in Unity3D for instance) where we could have the speed accelerate or decelerate as needed.

I actually found another video (about Unity3D) that probably will explain it better than me (at least the first half is great : "Unity3D Learn to Lerp... Correctly!" ).

This is just my humble understanding (being only an amateur coder!) and I would be happily be proven wrong as long as I learn something out of it.

Thanks for the great work!

FredL

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.