Skip to content

Instantly share code, notes, and snippets.

View rbergman's full-sized avatar

Bob Bergman rbergman

View GitHub Profile
@rbergman
rbergman / marketplace.ts
Created October 28, 2021 15:32
[ts] Ask CoPilot to render a marketplace that sells apps
Synthesizing 10/10 solutions
=======
// render a marketplace that sells apps
import { Component, OnInit } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
import { MarketplaceService } from '../marketplace.service';
import { App } from '../app';
@rbergman
rbergman / 0_reuse_code.js
Created June 7, 2014 21:38
Here are some things you can do with Gists in GistBox.
// Use Gists to store code you would like to remember later on
console.log(window); // log the "window" object to the console
@rbergman
rbergman / ccs.sh
Created January 8, 2013 18:02
Compile CoffeeScript files to JavaScript and send the result to stdout, with optional line numbers.
#!/bin/bash
if [ "$#" == "0" ]; then
echo "Usage: ccs [-n] file1 ... fileN"
echo "Compiles CoffeeScript files to JavaScript and emits the result to stdout."
echo " -n prepend line numbers"
exit 1
fi
if [ "$1" == "-n" ]; then
@rbergman
rbergman / model.coffee
Created January 31, 2012 21:50
A CoffeeScript Model base class providing declarative property support, with change listeners
{EventEmitter} = require "events"
# The Model base class
exports.Model = class Model
property = (k, events) ->
event = "change:#{k}"
fn = (v) =>
orig = if @_data[k]? then @_data[k] else null
@rbergman
rbergman / model.coffee
Created January 31, 2012 16:55
A simple CoffeeScript Model base class providing declarative property support
# The Model base class
class Model
prop = (k, props) -> (v) -> if v then props[k] = v else if v is null then delete props[k] else props[k]? or null
@properties: (defaults) -> (@::[k] = prop k, (@::_props = {}))(v) for own k, v of defaults
# Example usage by a subclass
class Foo extends Model
@properties
function r(f){/in/(document.readyState)?setTimeout(r,9,f):f()}
// OpenAjax Hub 1.0 implementation by Robert Bergman, designed to minify to under 1k.
// This code may be freely distributed under an MIT-style licence.
OpenAjax = {
hub: (function () {
var oa = 'openajax', // Literal reuse
r = 'registerLibrary', // Literal reuse
s = 'subscribe', // Literal reuse
l = 'libraries', // Literal reuse
p = 'publish', // Literal reuse
ns = 'org.' + oa + '.hub.', // Local event prefix
/*
* Copyright 2008, Robert Bergman.
* This code may be freely distributed under an MIT-style licence.
*
* A jQuery plugin to make URI parsing and creation from templates and values easy.
*
* Use:
* var uri = jQuery.uri();
* Creates a new, empty URI object
*