Liking cljdoc? Tell your friends :D

Wedge

Rationale

Starting a Clojure project requires fiddling with a number of pieces. You add ClojureScript to your project, spend an hour figuring out how to serve it. You do a refresh… and you’ve got some protocol error, gah! Another 3 hours later and you’ve found the relevant JIRA and put a workaround in place.

Then you hear about this great feature in cider that lets you do a jack-in automatically and start your ClojureScript REPL. You set it all up, but you keep getting this very strange "Port already in use" error.

Later, you go to production. You can’t seem to get your system to stay up. Every time it runs, it immediately exits. A few hours later, you add @(promise) to the end of your main and call it a day.

You add a junior to your team. You watch them painfully use the terminal REPL and make a note to teach them how to start nREPL later.

Wedge aims to take a lot of this low-level infrastructure "stuff" and make it go away.

Usage

There’s instructions on add Wedge to your project in the installation instructions. If you’ve done this before, see the quickstart.

Overview

You configure a system, and Wedge will give you a main and dev system in exchange. That system have been maintained by multiple other people meaning it fixes common bugs like race conditions during automated start. In addition, Wedge will try and load useful functionality such as populating the clj-kondo cache to make low-level maintenance go away. Finally, Wedge has extensive documentation suitable for beginners to Clojure all the way up to experienced developers who just want to skim the reference.

Wedge is essentially the library version of the hacks, features and bug fixes that are normally copied between projects.

Documentation

Documentation is available in the doc/ folder, and there’s extensive namespace documentation too. Hosted documentation is graciously provided by Cljdoc.

doc/contributing.adoc provides information on where to find Wedge on the web, and how to contribute.

Can you improve this documentation?Edit on sourcehut

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close