Skip to content

Instantly share code, notes, and snippets.

@ryansmith3136
ryansmith3136 / index.html
Last active August 29, 2015 14:02
An example for how to authenticate against Chain using CORS
<!doctype html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
</head>
<body>
<p>Balance: <span id="balance"></span></p>
</body>
select txn_summary(data) from txns limit 1;
$ ruby x.rb
Address: 1FBVmnKtjgA676Xbatqx42dcGzaaPV4BU4 contains 4 transactions.
Address: 17j92xE73rEyexJSB4gwavd2YkpTKZWfAv contains 7 transactions.
@ryansmith3136
ryansmith3136 / cond_test.go
Last active August 29, 2015 14:04
sync.Cond test cases
package main
import (
"testing"
"sync"
"sync/atomic"
)
type EasyCond struct {
m *sync.Mutex
@ryansmith3136
ryansmith3136 / webhooks.js
Last active June 20, 2016 08:17
Chain.com Webhooks Example
/*
Chain's Webhooks system will send an HTTP request
to our app with an event type of 'address-transaction'.
The body of the request will contain Chain's transaction
object. We can use this payload to do whatever we want!
*/
app.post('/', function (req, res) {
if (req.body['event'] == 'address-transaction') {
sendSMS(req.body.transaction)
res.send('OK\n');
@ryansmith3136
ryansmith3136 / confidence.js
Last active August 29, 2015 14:05
Demonstrate transaction confidence using Chain.com's Bitcoin API
var chain = require('chain-node');
var confidant = function(txid, retries, cb) {
chain.getTransaction(txid, function(err, resp) {
if(resp.propagation_level > 0.9) {
cb(resp.propagation_level);
} else {
if(retries > 60) {
cb(null);
} else {
@ryansmith3136
ryansmith3136 / s_queue.rb
Last active August 29, 2015 14:07
Multi-threaded SQS Ruby Worker. I have tests. Maybe this is a gem? Lemme know if you find it useful.
require 'aws-sdk'
require 'json'
module SQSW
class SQueue
MissingQueue = Class.new(StandardError)
def initialize(url = nil)
raise(MissingQueue, "Missing queue_url") if url.nil?
@q = find_queue(url)
@ryansmith3136
ryansmith3136 / chain-notifications.js
Created November 29, 2014 20:07
Chain Node.js Notifications Example
var express = require('express');
var bodyParser = require('body-parser');
var chain = require('chain-node');
chain.apiKeyId = 'YOUR-API-KEY-ID';
chain.apiKeySecret = 'YOUR-API-KEY-SECRET';
var app = express();
app.use(bodyParser.json());
app.post('/', function (req, res) {
@ryansmith3136
ryansmith3136 / chain-websockets.html
Created November 30, 2014 00:24
Chain jQuery Notifications Websockets Example
<!doctype html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.1/jquery.min.js"></script>
</head>
<body>
<ul id="thashlist"></ul>
</body>
<script type="text/javascript">
$(function() {
@ryansmith3136
ryansmith3136 / op-return.js
Created December 8, 2014 03:57
Creating op-return transactions
var util = require('util');
var bitcoin = require('bitcoinjs-lib');
var Chain = require('chain-node');
var chain = new Chain({blockChain: "testnet3"});
var b = new Buffer("Hello, world.");
var t = new bitcoin.Transaction();
t.addInput("ca7e12c753bd2a268e6f038509d72f3c44fd24064ed5ef8cde13ec987d495a64", 0);