Hi! 🤖 I'm James, I'm a generalist software developer interested in full stack app architectures. I'm currently working on a query language for UI state management, and trying to understand…
Hi! 🤖
I'm James,
I'm a generalist software developer interested in full stack app architectures.
I'm currently working on a query language for UI state management, and trying to understand datalog a bit better.
I recently rewrote a typed / structured router for web apps check it out
I help run Harth Systems.
- We maintain our own construction project management app Odin
- Build new products as partnerships
- And we do ad-hoc consulting too (postgres, web services, web apps)
I'm always up for a chat, so hit me up and ask me anything!
If you like, you can follow my work on my website https://james-forbes.com.
- 📖 Using DuckDB to parse and process directories of metadata and JSON into well formatted mdx files: https://james-forbes.com/posts/cohost-export
- 📖 On Streams being an all round better abstraction than React's Hooks: https://james-forbes.com/posts/hooks-and-streams
- 🔍 Check out my clean room implementation of S.js - a research project to understand it better.
- 🧝 If you have questions relating to mithril.js / web app development hit me up on the https://mithril.zulipchat.com/
-
sum-type
A simple, serializable sum-type format
JavaScript ★ 42 2y agoExplain → -
pgmg
Simple postgres.js migrations
JavaScript ★ 14 1y agoExplain → -
pointer-stream
A tiny stream API for both mouse and touch events.
JavaScript ★ 14 8y agoExplain → -
flagon
A tiny utility to make using bitwise operations readable by mere mortals. Drink up!
JavaScript ★ 9 10y agoExplain → -
mithril-map-router
Map over route changes like you map over arrays!
JavaScript ★ 9 9y agoExplain → -
pr-release
Manage releases with pull request descriptions and metadata instead of config.
JavaScript ★ 7 1y agoExplain → -
mithril-live-edit
A demonstration of a live editing using mithril + electron
JavaScript ★ 7 10y agoExplain → -
S
No description.
TypeScript ★ 6 3y agoExplain → -
autocomplete
(Hyperscript + CSS + data model) neutral Autocomplete component
JavaScript ★ 6 9y agoExplain → -
super-mithril-css
No description.
TypeScript ★ 4 1y agoExplain → -
stagnant
Measure your slow code, make it fast.
JavaScript ★ 4 4y agoExplain → -
pgzx
zx + postgres.js
JavaScript ★ 3 4y agoExplain → -
superouter
A side effect free router
TypeScript ★ 2 1y agoExplain → -
streaming-js-dags
A starting point for
★ 2 4y agoExplain → -
ld46
Ludum Dare 46
JavaScript ★ 2 4y agoExplain → -
jason
Convert JSON to C structs
JavaScript ★ 2 11y agoExplain → -
qtree
A QuadTree with a static and OO API
JavaScript ★ 2 8y agoExplain → -
o
A functional object literal
JavaScript ★ 1 12y agoExplain → -
JAForbes
No description.
★ 1 1y agoExplain → -
postcss-resolve-nested-selector ⑂
Resolve a nested selector in a PostCSS AST
JavaScript ★ 1 4y agoExplain → -
z4
A very experimental, but very futuristic state management system
JavaScript ★ 1 4y agoExplain → -
exec2
Just a simple, better, exec for node.js
★ 1 4y agoExplain → -
zxrun ▣
No description.
JavaScript ★ 1 4y agoExplain → -
postgres ⑂
Postgres.js - The Fastest full featured PostgreSQL client for Node.js
★ 1 3y agoExplain → -
fxio ⑂
Break out of the lifecycle loop with steps!
★ 1 4y agoExplain → -
cf-ddns
A dynamic DNS systemd service for cloudflare.
JavaScript ★ 1 4y agoExplain → -
HashQL ⑂
No description.
★ 1 5y agoExplain → -
classies ⑂
Simple css class builder
JavaScript ★ 1 4y agoExplain → -
ricardo-tortora
No description.
★ 1 4y agoExplain → -
vh-fill
Testing out viewport heights on mobile
HTML ★ 1 4y agoExplain → -
modal-test
Testing out modal rendering on mobile
HTML ★ 1 4y agoExplain → -
swarm-test
No description.
HCL ★ 1 4y agoExplain → -
dag-experiments
Messing around with ASTs and DAGs
★ 1 4y agoExplain → -
avsc ⑂
Avro for JavaScript :zap:
JavaScript ★ 1 3y agoExplain → -
hnza ⑂
No description.
★ 1 3y agoExplain → -
jmsfbs.com
New website
Svelte ★ 1 2y agoExplain → -
provider
A HTML5 action game about the difficulty of providing for your family.
JavaScript ★ 1 5y agoExplain → -
searchexample
No description.
JavaScript ★ 1 12y agoExplain → -
proxyLog
Log function arguments without editing your functions.
JavaScript ★ 1 11y agoExplain → -
appleseedtouch
Fooling around with the new HammerJS API
JavaScript ★ 1 12y agoExplain → -
never-never
Never Never
JavaScript ★ 1 9y agoExplain → -
e
A Javascript Entity Component System Library
JavaScript ★ 1 11y agoExplain → -
tomFrancisTutorial
No description.
JavaScript ★ 1 9y agoExplain → -
conff
Generate command line flags from a standard config file.
JavaScript ★ 1 10y agoExplain → -
launcher
An experiment writing desktop software using traditional client server separation.
JavaScript ★ 1 9y agoExplain → -
css-game-experiment
No description.
JavaScript ★ 1 10y agoExplain → -
ld29
Ludum Dare 29 Entry. Theme: Beneath the Surface
JavaScript ★ 1 12y agoExplain → -
dphoto-lambdas
No description.
JavaScript ★ 1 10y agoExplain → -
breakout
A breakout implementation using an Entity Component System
JavaScript ★ 1 11y agoExplain → -
Frame
A Sprite Sheet Library for Javascript
JavaScript ★ 1 11y agoExplain → -
formulaic
A bad excel formula engine.
TypeScript ★ 0 1y agoExplain → -
impervious
A simple and opinionated proxy for state management.
TypeScript ★ 0 1y agoExplain → -
rem ⑂
A starting point for big dreams
JavaScript ★ 0 2y agoExplain → -
superhistory
A tiny history API with nested contexts.
TypeScript ★ 0 2y agoExplain → -
superlib
A simple template for simple typescript libraries
TypeScript ★ 0 2y agoExplain → -
zecret
Messing around with secret storage/sharing
TypeScript ★ 0 2y agoExplain → -
evstuff ⑂
No description.
★ 0 3y agoExplain → -
opa-wasm-issue
A small reproducible test case for issues I'm having with wasm builds of rego
Open Policy Agent ★ 0 3y agoExplain → -
now-builders ⑂
Official Now Builders created by the ZEIT team
JavaScript ★ 0 7y agoExplain → -
jkview ⑂
Jedi Knight & MotS 3D Preview
★ 0 6y agoExplain → -
bss ⑂
🎨 Better Style Sheets
JavaScript ★ 0 5y agoExplain → -
wsu-blink
Measuring blink time perception.
★ 0 6y agoExplain → -
vella ⑂
No description.
★ 0 6y agoExplain → -
how-to-mithril ⑂
Collection of example how to do things in mithril
JavaScript ★ 0 7y agoExplain → -
awesome-mithril ⑂
A curated list of Mithril awesome
★ 0 7y agoExplain → -
wright ⑂
🚀 Work Fast Work Wright
JavaScript ★ 0 7y agoExplain → -
mithril.d.ts ⑂
Types for mithril.js
TypeScript ★ 0 7y agoExplain → -
react-hyperscript ⑂
Hyperscript syntax for React.js markup
JavaScript ★ 0 8y agoExplain → -
exceljs ⑂
Excel Workbook Manager
JavaScript ★ 0 10y agoExplain → -
1337-xss
No description.
★ 0 7y agoExplain → -
docco ⑂
Literate Programming can be Quick and Dirty.
CSS ★ 0 7y agoExplain → -
upload
No description.
JavaScript ★ 0 8y agoExplain → -
podcast
Nothing to see here
JavaScript ★ 0 8y agoExplain → -
tachyons ⑂
Functional css for humans
CSS ★ 0 8y agoExplain → -
npm-run-all ⑂
A CLI tool to run multiple npm-scripts in parallel or sequential.
JavaScript ★ 0 9y agoExplain → -
pomodorable
Some silly, hacky scripts for trying out the pomodoro technique.
Shell ★ 0 9y agoExplain → -
vim ⑂
Vim settings and plugins
Vim script ★ 0 9y agoExplain → -
vagabond-throne
No description.
★ 0 9y agoExplain → -
mithril-glass
An optics library for mithril
JavaScript ★ 0 9y agoExplain → -
goliath
"Go ahead Tachyon"
HTML ★ 0 9y agoExplain → -
snabbdom ⑂
A virtual DOM library with focus on simplicity, modularity, powerful features and performance.
JavaScript ★ 0 10y agoExplain → -
basic-isomorphic-app
Generate static HTML via a build script
JavaScript ★ 0 10y agoExplain → -
sanctuary ⑂
:see_no_evil: Refuge from unsafe JavaScript
JavaScript ★ 0 10y agoExplain → -
DefinitelyTyped ⑂
The repository for high quality TypeScript type definitions.
TypeScript ★ 0 10y agoExplain → -
bottle-shop
A Java bottle shop. Why? Because.
Java ★ 0 10y agoExplain → -
java-exceptions
Exploring Java Exceptions - Why? Because.
Java ★ 0 10y agoExplain → -
imperative
Trying to write imperative code again.
JavaScript ★ 0 10y agoExplain → -
cluster-logger
Get your worker child processes logs to show up in Cloudwatch or Papertrail when using cluster in NodeJS
JavaScript ★ 0 10y agoExplain → -
spawt
Spawn commands in a cross platform manner. Good spawt!
JavaScript ★ 0 10y agoExplain → -
nlp_compromise ⑂
natural language processing in the browser
JavaScript ★ 0 11y agoExplain → -
canyon-backup
A backup of an old website I used to have. Has lots of experiments and odd projects within.
CoffeeScript ★ 0 10y agoExplain → -
extract-iptc ⑂
Extracts IPTC/XMP metadata from images
JavaScript ★ 0 10y agoExplain → -
gamepad-micro ⑂
Library that interfaces with the Gamepad API and publishes gamepad update events.
JavaScript ★ 0 10y agoExplain → -
circular
An example of using circular dependencies via lazy evaluation of a parent context.
JavaScript ★ 0 10y agoExplain → -
BreakingTheTower
No description.
Java ★ 0 11y agoExplain → -
rx-experiments
Playing around with webpack, hot module reloading, and rxjs for game development
JavaScript ★ 0 10y agoExplain → -
discoveries
Discoveries
★ 0 10y agoExplain → -
james-forbes-mi9
A functional approach to the mi9 coding challenge
JavaScript ★ 0 10y agoExplain → -
geneva
A model validator that works with any regime.
JavaScript ★ 0 10y agoExplain → -
ld33
Ludum Dare 33
JavaScript ★ 0 10y agoExplain → -
twitter_archive
Archive of my Twitter account
JavaScript ★ 0 10y agoExplain → -
excel
No description.
JavaScript ★ 0 11y agoExplain → -
breakouts ⑂
A collection of JS engine implementations of Breakout
JavaScript ★ 0 11y agoExplain → -
heap.js ⑂
A binary heap implementation in CoffeeScript/JavaScript.
CoffeeScript ★ 0 11y agoExplain → -
vector
Vector drawing thing
JavaScript ★ 0 11y agoExplain → -
canyongames
All the src code and files used for canyongames.tumblr.com
HTML ★ 0 11y agoExplain → -
cssTransforms
A CSS Death Star
★ 0 11y agoExplain → -
three.js ⑂
JavaScript 3D library.
JavaScript ★ 0 11y agoExplain → -
service-worker
A very simple proxy example.
JavaScript ★ 0 11y agoExplain → -
ld32
Ludum Dare 32
JavaScript ★ 0 11y agoExplain → -
combinations
Combinations for n combination length
JavaScript ★ 0 11y agoExplain → -
keynames
A customizable function that returns an array of names of a keyboard key.
JavaScript ★ 0 10y agoExplain → -
paintchart
A rudimentary experiment with CSS transitions.
HTML ★ 0 11y agoExplain → -
musicapp
A simple music app
JavaScript ★ 0 11y agoExplain → -
voyager
Recursively traverse a directory and yield a JSON tree of file sizes.
JavaScript ★ 0 11y agoExplain → -
miniMAL ⑂
A Lisp implemented in < 1 KB of JavaScript with macros, TCO, interop and exception handling.
JavaScript ★ 0 11y agoExplain → -
jsfx ⑂
Javascript Sound Effect Generator
JavaScript ★ 0 11y agoExplain → -
grappling
No description.
JavaScript ★ 0 11y agoExplain → -
lyrics-1 ⑂
Lyrics to Baby X songs
★ 0 11y agoExplain → -
boards ⑂
Infinite whiteboards
★ 0 11y agoExplain → -
devserver
A basic static web server.
JavaScript ★ 0 11y agoExplain → -
paginationExperiment
Experimenting with Pagination
JavaScript ★ 0 11y agoExplain → -
sat-js ⑂
A simple JavaScript library for performing 2D collision detection
JavaScript ★ 0 11y agoExplain → -
zoeappleseed ⑂
A responsive website for artist Zoe Appleseed. Makes use of BlueImp's Gallery and the Tumblr API.
CSS ★ 0 11y agoExplain → -
xmas2014
Christmas presents for my family.
★ 0 11y agoExplain → -
terra
No description.
JavaScript ★ 0 11y agoExplain → -
yang
Categorise your file system! (yay!)
JavaScript ★ 0 11y agoExplain → -
geo
A map that tracks your location.
★ 0 11y agoExplain → -
CS3113 ⑂
NYU CS3113 [Intro To Game Programming]
C++ ★ 0 11y agoExplain → -
ld31
Paper Scissors Rock, in Spaaaaaace!
JavaScript ★ 0 11y agoExplain → -
FunctionalCollision
A collision detection library that is purely functional.
JavaScript ★ 0 11y agoExplain → -
threesjs ⑂
Life-ruining game Threes for the browser.
JavaScript ★ 0 12y agoExplain → -
ziggurat
Ziggurat Algorithm - ported to JS by http://www.filosophy.org/labs/
JavaScript ★ 0 11y agoExplain → -
ramda ⑂
Practical functional Javascript
★ 0 11y agoExplain → -
FileSaver.js ⑂
An HTML5 saveAs() FileSaver implementation
★ 0 11y agoExplain → -
cv
The source code for my CV
JavaScript ★ 0 11y agoExplain → -
tableau
A small, dependency free, evented table. That's all.
JavaScript ★ 0 11y agoExplain → -
_mixins
Re-occuring underscore/lodash mixins.
JavaScript ★ 0 11y agoExplain → -
mousetrap ⑂
Simple library for handling keyboard shortcuts in Javascript
JavaScript ★ 0 11y agoExplain → -
Levenshtein ⑂
Javascript implementation of the L-diggity.
★ 0 12y agoExplain → -
thingstokeepinmind
No description.
★ 0 10y agoExplain → -
precipice
The Post Competition version of my LD30 game.
JavaScript ★ 0 11y agoExplain → -
ld30
No description.
JavaScript ★ 0 11y agoExplain → -
binomial.js ⑂
Generate binomial coefficients with optional memoization. Works in the browser and node.js.
★ 0 12y agoExplain → -
temple
Simple Javascript Templating functions
JavaScript ★ 0 12y agoExplain → -
touchtest
No description.
JavaScript ★ 0 12y agoExplain → -
Leaflet ⑂
JavaScript library for mobile-friendly interactive maps
★ 0 12y agoExplain → -
downplay
A simple, human readable, level markup.
JavaScript ★ 0 12y agoExplain → -
babyx
A basic website for the band Baby X
CSS ★ 0 12y agoExplain → -
canyon
My blog.
JavaScript ★ 0 12y agoExplain → -
crescent
No description.
CoffeeScript ★ 0 12y agoExplain → -
blendmodes
No description.
JavaScript ★ 0 12y agoExplain → -
displace
Fooling around with touch/touchpad control schemes and prototypal inheritance.
JavaScript ★ 0 12y agoExplain → -
spacetoproceed
You are a robot prisoner. You only have only one chance to escape a facility designed to keep you captive, in order to research teleportation.
★ 0 12y agoExplain →
No repos match these filters.