Skip to content

Instantly share code, notes, and snippets.

I may be slow to respond.

Boopathi Rajaa boopathi

I may be slow to respond.
View GitHub Profile
boopathi /
Last active Aug 29, 2015
Differentiate between an arrow function, class, method, generator and a normal function in ES6
boopathi /
Created Jun 20, 2015
A simple git workflow that works
  • git pull --rebase always
  • git checkout -b feature/my-awesome-feature before committing anything
  • git commit --amend whenever possible
  • git commit --fixup and git commit --squash in case you pushed to origin and you don't want to force push now
  • Write long and meaningful commit messages
  • Create a Pull Request and continue pushing more commits till review is accepted
  • git rebase -i --autosquash master feature/my-awesome-feature and squash all unwanted commits
  • git push --force-with-lease origin my-awesome-feature when branches have diverged
  • Merge the Pull Request
boopathi / index.js
Last active Aug 29, 2015
requirebin sketch
View index.js
var State = require('ampersand-state');
var Person = State.extend({
props: {
firstName: 'string',
lastName: 'string'
derived: {
cachedFullName: {
deps: ['firstName', 'lastName'],
boopathi / index.js
Last active Aug 29, 2015
requirebin sketch
View index.js
// require() some stuff from npm (like you were using browserify)
// and then hit Run Code to run it on the right
var Model = require('ampersand-state');
var Collection = require('ampersand-collection');
var Item = Model.extend({
props: {
name: 'string'
boopathi /
Last active Jul 22, 2021
Creating a Swift-ReactNative project


  1. Create a project in XCode with the default settings
    • iOS > Application > Single View Application
    • Language: Swift
  2. Under project General settings, add ReactKit to Linked Framework and Libraries
    • + > Add Other... and choose /path/to/react-native/ReactKit/ReactKit.xcodeproj
  3. Now ReactKit would have been imported. Link it by choosing it from the list.
    • + > lib.ReactKit.a
  4. Under project Build Settings,
# Install pathogen
git clone .vim
mkdir .vim/bundle
cd .vim/bundle
# Install SuperTab
git clone
# Install Syntastic
View sw.js
self.CACHE_NAME = ["cats-v", 14];
var cache_name = self.CACHE_NAME[0] + self.CACHE_NAME[1];
self.addEventListener('fetch', function(event) {
var cacheRequest = event.request.clone();
event.respondWith(caches.match(cacheRequest).then(function(response) {
if(response) return response;
var fetchRequest = event.request.clone();
return fetch(fetchRequest).then(function(response) {
View index.html
<!DOCTYPE html>
<meta charset="utf-8">
<title>JS Bin</title>
<div class="inverter">
<script id="jsbin-javascript">
View q-bluebird.js
var B = require("bluebird/js/main/promise")();
var Bproto = B.prototype;
var deferredPrototype = B.pending().constructor.prototype;
deferredPrototype.makeNodeResolver = function() {
return this.asCallback;
function bind(fn, ctx) {
boopathi / output
Last active Apr 14, 2019
File descriptors - stdin and stdout - isTTY ? in a forked process
View output
Case I: node parent
Parent: true From tty: true
Parent: true From tty: true
TTY: true From tty: true
TTY: true From tty: true
Case II: node parent > asdf
Parent: true From tty: true
Parent: undefined From tty: true
TTY: true From tty: true