Projects

Currently Funded Projects

Long-term (USD 1.5k/month)

Bozhidar Batsov

Michiel Borkent

Dragan Djuric

Thomas Heller

David Nolen

Nikita Prokopov

USD 9k

maria.cloud open in new tab icon

a coding environment for beginners

mathbox-cljs open in new tab icon

Clojurescript extensions and utilities for Mathbox.

Clojure Data Cookbook open in new tab icon

A book about how to do common data manipulation, analysis, and visualization tasks in Clojure

ClojureDart open in new tab icon

A port of Clojure that compiles to Dart

clj-kondo, babashka, SCI, nbb, scittle and related open in new tab icon

Clj-kondo is a static analyzer and linter for Clojure code that sparks joy

kaocha and related open in new tab icon

Full featured next gen Clojure test runner

USD 2k

portal open in new tab icon

A clojure tool to navigate through your data.

Exo (unreleased) open in new tab icon

ClojureScript library for fetching and caching data using EQL

cljfx open in new tab icon

Declarative, functional and extensible wrapper of JavaFX inspired by better parts of react and re-frame

Biff open in new tab icon

A Clojure web framework for solo developers.

Clojupedia open in new tab icon

Community knowledge graph of the Clojure ecosystem

Previously Funded Projects

Q1 2022

Practicalli open in new tab icon

A collection of open books, workshops and tutorials on software development for Clojure.

Clojure-LSP open in new tab icon

Clojure & ClojureScript Language Server (LSP) implementation.

Deep Diamond open in new tab icon

A fast Clojure Tensor & Deep Learning library.

Datahike Server open in new tab icon

Datahike remote system.

Tablecloth open in new tab icon

Dataset manipulation library built on the top of tech.ml.dataset.

Clj-kondo, babashka, and other related projects open in new tab icon

A linter for Clojure code that sparks joy.

Conjure open in new tab icon

Interactive evaluation for Neovim (Clojure, Fennel, Janet, Racket, Hy, MIT Scheme, Guile).

Reveal open in new tab icon

Reveal is a Clojure-oriented data inspection toolbox that aims to remove the barrier between you and objects in your VM.

Overtone Playground open in new tab icon

Overtone Playground is a library that opens the door for learning and exploring music with Clojure and Overtone.

Biff open in new tab icon

A simple and easy web framework for Clojure.

Orchard open in new tab icon

A fertile ground for Clojure tooling.

Typed Clojure open in new tab icon

An optional type system for Clojure.

Q3 2021

Shadow CLJS open in new tab icon

ClojureScript compilation made easy

clojure-lsp open in new tab icon

Clojure & ClojureScript Language Server (LSP) implementation

Malli open in new tab icon

Data-Driven Schemas for Clojure/Script.

Clojurians-log-v2 open in new tab icon

Capturing, conserving, and making this discourse of Clojurians slack community complete, easily accessible, and searchable.

PCP open in new tab icon

Clojure Processor – A Clojure replacement for PHP

Holy Lambda open in new tab icon

The extraordinary simple, performant, and extensible custom AWS Lambda runtime for Clojure.

Dependabot Core open in new tab icon

The core logic behind Dependabot’s update PR creation.

Typed Clojure open in new tab icon

An optional type system for Clojure

Polylith open in new tab icon

A tool used to develop Polylith based architectures in Clojure.

Q4 2020

O’Doyle Rules open in new tab icon

Clojure needs another good rules engine. Clara is great but the lack of ability to update facts makes it difficult to use outside of “pure” logic problems. O’Doyle implements the same RETE algorithm but makes it more useful for general purpose “messy” use cases like managing the state of a frontend app or a game.

clj-kondo/babashka/sci open in new tab icon

Clj-kondo is a Clojure linter that is used by a wide variety of individual users and companies.

Babashka is a scripting environment that can execute a significant subset of JVM Clojure programs with instant startup. It is used by individual users and companies. It is currently my project with the most stars on Github.

Sci is the Clojure interpreter powering babashka and several other projects.

ClojisR open in new tab icon

The purpose of this project is to take an active part in improving Clojure’s data science stack, especially in aspects of usability, user-facing features, and documentation.

A large part of that effort is happening in the Scicloj community with which this project is associated.

The work that we’ll be doing with this funding will enable us to get closer to our goal of making Clojure a beginner-friendly solution for data science, thereby allowing us to expose the Clojure ecosystem to a different culture and to more diverse groups of users/programmers - starting with new developers and data scientists studying R as their main language.

Calva open in new tab icon

We’ve seen that Calva helps new Clojurists get up and running with Clojure without having to worry so much about tooling. Perhaps more importantly, VS Code has become such a major platform for developers and it’s important to have Clojure(Script) support in the developers' editor of choice.

Q3 2020

clj-kondo/babashka/sci open in new tab icon

Clj-kondo is a Clojure linter that is used by a wide variety of individual users and companies.

Babashka is a scripting environment that can execute a significant subset of JVM Clojure programs with instant startup. It is used by individual users and companies. It is currently my project with the most stars on Github.

Sci is the Clojure interpreter powering babashka and several other projects:

Datahike open in new tab icon

Within the Clojure Datalog database world Datahike provides a persistent open source solution for medium-sized projects with a relatively small and extensible code base. It supports a variety of persistent storages like JDBC or Redis. Additionally Datahike supports parts of the well-known Datomic API to better adapt to its functionality.

By adding ClojureScript support in the future, Datahike goes beyond the backend market with a vision of a distributed cross-platform system environment that speaks Datalog everywhere. With two commercial projects in progress, Datahike becomes more battle-tested in production environments.

Malli open in new tab icon

Clojure is a data-oriented language and we should have a solid fully data-driven schema library too! Besides validation and value transformations, we should be able transform, persist, generate and infer schemas just like normal data. Malli tries to be develop-friedly library to companion to other data-driven libs like EQL, Bidi, HoneySQL, Hiccup, Integrant, Reagent and Reitit.

Malli has an open development model, design decions are discussed in slack (#malli) and in GitHub issues. Not a top goal, but eventually, Malli should be spec-compatible.

Practicalli open in new tab icon

Practicalli helps the community to grow by providing quality content for people to learn, share and help others more readily discover the joy of Clojure.

Q2 2020

re-frame open in new tab icon

re-frame is one of the most widely used ClojureScript projects with 4.3k stars on GitHub and 1.1 million downloads on Clojars. This work will do some spring cleaning and TLC for the project, reviewing open issues and PRs. Also, creating an EP, and doing work on related re-frame projects.

Practicalli open in new tab icon

High quality and up to date information helps any developer using Clojure find the help they need, whether they are experienced or new to Clojure. Finding the time to teach developers how to work with Clojure is time consuming for developers, so a reliable source of information speeds up on-boarding and skilling-up of developers.

CIDER/nREPL/Orchard open in new tab icon

CIDER’s the most popular IDE in the Clojure community, and nREPL and CIDER’s Orchard are at the heart of most other tools that exist out there.

Figwheel open in new tab icon

lein-figwheel has 1.1 million downloads on clojars and figwheel-main has 100k downloads. They are widely used and influential in the ClojureScript and wider programming communities.

Q1 2020

Ring open in new tab icon

Ring is the most commonly used HTTP abstraction layer for Clojure. Clojurists Together funded James Reeves, Ring’s maintainer to build out a draft spec and experimental alpha for Ring 2.0. This will add better support for asynchronous HTTP connections, and pave the way to support HTTP/2 and HTTP/3 in future. As a secondary objective, he is also working on removing the provided dependency on Java servlets from Ring core

Reagent open in new tab icon

Based on Clojars downloads Reagent is the most used ClojureScript React wrapper. Reagent is also one of the most popular ClojureScript projects on GitHub with 3.7k stars. Juho Tepieri is a maintainer of Reagent and will be working on supporting React Hooks, and a configurable Reagent Hiccup compiler.

Calva open in new tab icon

Calva is a Clojure IDE plugin for VS Code. Calva helps new Clojurists get up and running with Clojure without having to worry so much about tooling. VS Code has become a major platform for developers and its important to have Clojure(Script) support in the developers' editor of choice. We funded Brandon Ringe, a Calva maintainer to work on supporting large data sets and Clojure debugging support.

fireplace.vim open in new tab icon

Tim Pope is the maintainer of Fireplace.vim, a Clojure plugin for Vim. In the most recent Clojure survey it was used by 10% of respondents. We funded Tim to work on: Leveraging Vim’s recently added asynchronous APIs for user facing features, providing better automatic configuration for projects, notably Shadow CLJS, and working on outstanding feature requests.

Q4 2019

Expound open in new tab icon

Expound is a widely used tool for helping developers more quickly understand spec error messages. Expound is maintained by Ben Brinckerhoff.

Deep Diamond open in new tab icon

Deep Diamond is a lean, high performance, infrastructure for working with tensors in Clojure, with an emphasis on Deep Learning. Dragan Djuric is the maintainer of Deep Diamond.

Oz open in new tab icon

While ClojureScript offers a first class front-end development experience, data visualization specifically has long been an under-served need in both Clojure & ClojureScript. Oz gives ClojureScript developers the ability to leverage Vega-Lite and Vega, with their Clojuresque data-driven/declarative design, and close this gap. Oz is maintained by Chistopher Small.

Q3 2019

CIDER open in new tab icon

CIDER is a very popular programming environment and its infrastructure (nREPL, cider-nrepl, piggieback and orchard) powers many of the other tools out there (e.g. vim-fireplace, vim-iced, calva, etc). Improvements to CIDER and its foundational pieces generally benefits most of the Clojure community. It is maintained by Bozhidar Batsov.

Meander open in new tab icon

Meander provides a uniquely transparent way of performing data manipulation that aims to be declarative, performant, and safe. These properties are important because they enable Clojure developers to write correct data manipulation code using a common language which encourages collaboration and thoughtful design without sacrificing dynamism. And because Meander has been designed with both transparency and accuracy in mind, Clojure code written with it can be an asset to a development team and, thus, a business. It is maintained by Joel Holdbrooks.

Calva open in new tab icon

VS Code is the editor of choice for many developers and having good Clojure and ClojureScript support on the platform helps newcomers find the joy of Clojure faster. VS Code also is easier to use than many other development environments, and by leveraging this, Calva can make Clojure more accessible generally. It is maintained by Peter Strömberg.

Q2 2019

fireplace.vim open in new tab icon

Fireplace is a vim plugin for Clojure. It adds REPL integration and was used by 10% of Clojure developers in the most recent Clojure survey. It is the most popular Clojure REPL integration for vim. Tim Pope is going to work on cleaning up the issue tracker, implementing support for Vim 8 and Neovim job support, looking at ClojureScript improvements, and various other fixes and improvements to fireplace.vim and sibling projects like salve.vim

Q1 2019

Neanderthal open in new tab icon

Neanderthal is a fast native-speed matrix and linear algebra library written in Clojure. Matrices and linear algebra are the infrastructure for high performance scientific software, including machine learning. Dragan Djuric is going to be working on adding higher-level tutorials that give people the bigger picture and shows them good practices.

Aleph open in new tab icon

Aleph is one the best options for creating high-performance communication systems in Clojure, including but not limited to HTTP & websocket clients & servers. It is based on Netty, a high performance network application framework.

Development of Aleph also has an impact on the entire server-side libraries ecosystem, including direct influence by backporting bug fixes to such projects like clj-http (Clojure), Netty (Java) and potentially Ring (Clojure); and indirect influence by pushing boundaries and expending interest in the field.

Q4 2018

Kaocha open in new tab icon

Kaocha is a Clojure test tool. Kaocha raises the bar for what to expect from tools and provides a platform for innovation and collaboration. Clojure does not have the strongest testing culture, and has not had as much investment into test tooling as other communities. Better tooling would encourage better testing practices, a better testing culture would encourage investing in tooling. Arne Brasseur is the main (and sole) developer of Kaocha.

Datascript open in new tab icon

Datascript is a Clojure and ClojureScript database. DataScript has been around for 3+ years, has gotten massive interest from the community, is used in in several production projects (listed on GitHub page), and has been starred on GitHub 3000+ times. Nikita Prokotov is the project creator, and currently maintains Datascript.

Q3 2018

cljdoc open in new tab icon

cljdoc is a website that builds and hosts documentation for Clojure and ClojureScript libraries. Poor and out-of-date documentation has long been a complaint of Clojure developers. cljdoc improves the state of Clojure documentation by providing minimal-effort documentation building and hosting for all Clojure jars on Clojars and Maven. In our most recent survey, improving documentation was a common request. Martin Klepsch maintains cljdoc.

Shadow CLJS open in new tab icon

Shadow CLJS is a ClojureScript build tool that covers the entire spectrum from development and testing to production builds. It assumes no prior knowledge of the JVM or Clojure to get started, which makes it more accessible to a broader audience. Thomas Heller maintains Shadow CLJS.

Q2 2018

CIDER open in new tab icon

CIDER is the most widely adopted Clojure development environment. In the most recent Clojure survey CIDER was the primary development environment for 50% of survey respondents. Additionally, in our most recent survey, it featured highly as a project important to our members workflows. It is maintained by Bozhidar Batsov.

ClojureScript open in new tab icon

ClojureScript probably needs little introduction to most readers here. It is a dialect of Clojure that compiles to JavaScript to be able to target the browser, NodeJS, and the dozens of other platforms where JavaScript has a runtime. 83% of our members use ClojureScript in their work. We are funding Mike Fikes to continue his excellent work on the ClojureScript compiler. Mike is the number 2 or 3 contributor to ClojureScript (depending on how you count).

Q1 2018

clj-http open in new tab icon

clj-http is one of the most popular Clojure open source projects, with over 3 million downloads on Clojars. It is maintained by Lee Hinman. It’s used by quite a few other clients as a base HTTP client.

Figwheel open in new tab icon

Figwheel is one of ClojureScript’s secret weapons, enabling ridiculously high productivity via live-reloading ClojureScript code. It is maintained by Bruce Hauman. It is one of the most used ClojureScript tools in the community.