Skip to content

GitHub Sponsors Matching Fund

To boost community funding, GitHub will match your contribution! Learn more.

Become a sponsor to davidchambers

I have been developing open-source projects in the JavaScript ecosystem since 2010. I became a member of the Ramda team in 2014. I released Sanctuary in 2015, and have since spent significant energy refining the library, creating related projects, and maintaining the Fantasy Land specification.

I am passionate about learning, teaching, and practising functional programming. I frequently answer questions on Gitter and Stack Overflow, and occasionally speak at conferences. In 2018 I introduced Sanctuary to a broad audience at ReactiveConf in Prague.

Programming Safely in an Uncertain World

In addition to the many sanctuary-js projects, I maintain several other useful projects:

  • async-problem – solutions and non-solutions to JavaScript’s async problem
  • Base64.js – polyfill for browsers that don’t provide window.btoa and window.atob
  • doctest – doctests for JavaScript (and CoffeeScript)
  • Transcribe – generate Markdown documentation from code comments
  • Tutor – JavaScript interface for the Gatherer card database
  • xyz – publish npm packages with fewer screw-ups

I have ambitious goals for improving the Sanctuary ecosystem, including:

  • adding type-aware search to;
  • creating a tutorial to show how to set up a project that includes sanctuary-def and custom types;
  • adding lens functions to Sanctuary;
  • documenting and releasing sanctuary-argv, a principled argument parser;
  • releasing a new version of the Fantasy Land specification with fully-qualified type representatives;
  • creating and releasing sanctuary-set and sanctuary-map; and
  • creating and releasing a testing library that does not rely on throwing and catching exceptions.

I will complete these projects, but this could take years of evenings and weekends. My dream is to work on Sanctuary and related projects full-time, which would dramatically reduce the time frame.

My living expenses are low but non-zero. By becoming a fan or a supporter, or by encouraging your company to become a partner, you will enable me to focus on improving the JavaScript ecosystem. You, your company, and the community will then have access to the principled, well-tested features and packages I release. Your generosity will benefit thousands of people. :)


7 sponsors


Pinned projects

Select a tier

$2 a month



You appreciate my ongoing efforts to improve the JavaScript ecosystem and want me to know it.

$10 a month



You wish to make a meaningful monthly contribution to sustain development of Sanctuary and related projects.

Your name will be added to a list of supporters at

$200 a month



Your company understands that by using principled, well-tested dependencies, more time can be spent addressing your customers’ needs. Your company uses Sanctuary and wishes to see the project and surrounding ecosystem thrive.

Your company’s logo will be displayed at to let Sanctuary users know that your company embraces functional programming.

You can’t perform that action at this time.