• Stars
    star
    107
  • Rank 323,587 (Top 7 %)
  • Language
    HTML
  • License
    Creative Commons ...
  • Created over 8 years ago
  • Updated 10 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Content for the book - Clojure Development with Spacemacs
██████╗ ██████╗  █████╗  ██████╗████████╗██╗ ██████╗ █████╗ ██╗     ██╗     ██╗
██╔══██╗██╔══██╗██╔══██╗██╔════╝╚══██╔══╝██║██╔════╝██╔══██╗██║     ██║     ██║
██████╔╝██████╔╝███████║██║        ██║   ██║██║     ███████║██║     ██║     ██║
██╔═══╝ ██╔══██╗██╔══██║██║        ██║   ██║██║     ██╔══██║██║     ██║     ██║
██║     ██║  ██║██║  ██║╚██████╗   ██║   ██║╚██████╗██║  ██║███████╗███████╗██║
╚═╝     ╚═╝  ╚═╝╚═╝  ╚═╝ ╚═════╝   ╚═╝   ╚═╝ ╚═════╝╚═╝  ╚═╝╚══════╝╚══════╝╚═╝

Clojure development with Spacemacs

Spacemacs Practicalli - interactive development with Clojure and Emacs, using CIDER

This is an introduction to developing Clojure applications using Emacs, specifically based on the Spacemacs configuration for Emacs and CIDER. The aim is to help you be productive with those tools as quickly as possible.

Spacemacs is a community-driven project that provides a simple way to add lots of extra functionality to Emacs, without having to manage packages yourself or spend time writing common configuration code.

Discuss this guide on #practicalli channel of the Clojurians Slack community.

Create a free Clojurians Slack community account.

This workshop will cover the following topics:

  • Emacs basics, common commands and tools
  • Powerful editing and refactor tools (iedit, narrowing, helm-ag, multiple cursors, visual undo)
  • Adding and enhancing the Clojure layer
  • Running the REPL, evaluating code, inspecting data, debug, reloaded workflow
  • Running tests & test reports
  • Structural editing (smartparens/evil-cleverparens)
  • Clojure docs, auto-completion, snippets
  • Clojurescript development, figwheel-main and reagent
  • Org-mode for project documentation, literate programming & presentations

This is not a guide to customising Emacs for Clojure development, except were there are useful additions to be made to Spacemacs and the Clojure layer.

Book status

Publish Book MegaLinter GitHub commit activity

Ideas & issues Pull requests

Creative commons license

Creative Commons License This work is licensed under a Creative Commons Attribution 4.0 ShareAlike License (including images & stylesheets).

Contributing

Please read the contributing section of the book before raising an issue or pull request

By submitting content ideas and corrections you are agreeing they can be used in this workshop under the Creative Commons Attribution ShareAlike 4.0 International license. Attribution will be detailed via GitHub contributors.

Sponsor Practicalli

Sponsor practicalli-john

The majority of my work is focused on the Practicalli series of books and videos and an advisory role with several communities

Thank you to Cognitect, Nubank and a wide range of other sponsors for your continued support

GitHub Actions

The megalinter GitHub actions will run when a pull request is created,checking basic markdown syntax.

A review of the change will be carried out by the Practicalli team and the PR merged if the change is acceptable.

The Publish Book GitHub action will run when PR's are merged into main (or the Practicalli team pushes changes to the default branch).

Publish book workflow installs Material for MkDocs version 9

Local development

Install mkdocs version 9 using the Python pip package manager

pip install mkdocs-material=="9.*"

Install the plugins used by the Practicalli site using Pip (these are also installed in the GitHub Action workflow)

pip3 install mkdocs-material mkdocs-callouts mkdocs-glightbox mkdocs-git-revision-date-localized-plugin mkdocs-redirects pillow cairosvg

pillow and cairosvg python packages are required for Social Cards

Fork the GitHub repository and clone that fork to your computer,

git clone https://github.com/<your-github-account>/<repository>.git

Run a local server from the root of the cloned project

make docs

The website will open at http://localhost:8000

If making smaller changes, then only rebuild the content that changes, speeding up the local development process

make docs

More Repositories

1

clojure-cli-config

User aliases and Clojure CLI configuration for deps.edn based projects
Makefile
495
star
2

spacemacs-config

rich Clojure & LSP config for Spacemacs
Emacs Lisp
126
star
3

clojure

Practicalli Clojure REPL Driven Development
Markdown
86
star
4

clojure-through-code

Examples of Clojure code to explain core aspects of the language - typically evaluated in a REPL
Clojure
64
star
5

spacemacs-manual-deploy

How to use Spacemacs, a community configuration for Emacs, for Clojure development
HTML
47
star
6

neovim-config-redux

First attempt at a Fennel based configuration for Neovim 0.8.0, aimed mainly at Clojure developers (project on-hold)
Fennel
40
star
7

clojure-manual-deployment

A practical introduction to Clojure (created with Gitbook.IO)
HTML
35
star
8

project-templates

Clojure CLI Production level templates for seancorfield/deps-new
Clojure
24
star
9

clojurescript

Practical guide to ClojureScript
HTML
19
star
10

practicalli-clojurescript-landingpage

Landing Page for Practicalli for broadcasts, books and guides on Clojure, ClojureScript, Emacs, Spacemacs and more. Developed with ClojureScript and reagent, using figwheel.main
Clojure
19
star
11

neovim

Neovim, Conjure and LSP for Clojure development using Fennel configuration
HTML
18
star
12

four-clojure

Discussions on solving the 4Clojure Code challenges
Clojure
18
star
13

doom-emacs-config

Practicalli customisations to the Doom Emacs configuration
Emacs Lisp
14
star
14

banking-on-clojure-webapp

Online banking application written in Clojure, with unit tests and Clojure specifications
Clojure
14
star
15

doom-emacs

Guide to Clojure REPL Driven Development with Emacs Doom
HTML
13
star
16

clojure-web-services

Develop production grade server-side web services and APIs using Clojure and REPL driven development
HTML
11
star
17

clojurescript-manual-deployment

A basic introduction to ClojureScript
HTML
11
star
18

clojurists-together-journal

10
star
19

astronvim-config

AstroNvim version 3 only - Practicalli AstroNvim user configuration with AstroNvim Community Packages, written in Lua
Lua
9
star
20

clojure-koans

Exercises to help you discover the Clojure syntax (mediations removed)
Clojure
8
star
21

covid19-dashboard

Data Science dashboard using the Oz Clojure library and UK Government data
Clojure
8
star
22

clojure-webapps-example

A Clojure project that accompanies clojure-webapps.practical.li
Clojure
8
star
23

oz-visualisations

Discovering the visualisations that can be created with Oz
Clojure
7
star
24

tictactoe-cli

A simple Tic-Tac-Toe game that runs on the terminal command line, with a human playing agains the program.
Clojure
6
star
25

regolith-solarized-light

A Solarized-Light theme for the Regolith desktop, used for Practicalli Broadcasts and Screencasts.
Roff
6
star
26

clojure-in-fifteen-minutes

A basic guide to the syntax and common functions used in the Clojure programming language
Clojure
5
star
27

clojure-lsp-config

User level configuration for Clojure LSP
4
star
28

clojure-data-science

Techniques and tools for data science with Clojure
HTML
4
star
29

clojure-webapp-hotload-libraries

REPL driven development with hot loading of libraries to build a very simple web application server using http-kit
Clojure
4
star
30

dotfiles

Configuration files for common development tools and applications
Shell
3
star
31

exercism-clojure-guides

Design journal and solutions to the Exercism Clojure track
Clojure
3
star
32

engineering-playbook

Practical guides to common engineering tasks and tools
HTML
3
star
33

codewars-guides

Clojure
3
star
34

clojure-service-template

Clojure
3
star
35

learn-clojure

Learn the Clojure programming language - syntax, common core functions, common libraries and challenges to practice
HTML
3
star
36

clojure-study-group-website

Website for the Clojure study group plan and broadcasts
Clojure
3
star
37

blog-cryogen

Cryogen powered blog with all the content used to generate the static website.
HTML
3
star
38

leveraging-spec

Clojure
2
star
39

data-engineering-with-clojure

Data Science without the Science or Mathematics...
2
star
40

simple-repl

A simple REPL to demonstrate the basic principles of a working REPL
Clojure
2
star
41

status-monitor

Dashboard showing the operational status of various services
Clojure
2
star
42

banking-on-clojure-spec

Using Clojure spec - example project
Clojure
2
star
43

vspacecode

Clojure development with VSpaceCode (VS Code & Calva) - keyboard driven coding
HTML
2
star
44

tablecloth-playground

Trying out tablecloth functions with some sample data
Clojure
1
star
45

clojure-staging

Staging environment for the Practicalli Clojure books
HTML
1
star
46

study-group-guide

ClojureScript & reagent project created with Clojure CLI tools and figwheel-main template
Clojure
1
star
47

youtube-website

A website to display videos from Practicalli channel
Clojure
1
star
48

clojure-todo-list-example

A Todo List server-side webapp built with Ring & Compojure
Clojure
1
star
49

advent-of-clojure-code

Solutions in Clojure to the Advent of Code yearly coding challenge
Clojure
1
star
50

space-parens

Learning Clojure through the power of the immutable side
Clojure
1
star
51

clojure-style-action

GitHub action checking Clojure format with cljstyle and reporting via reviewdog
Dockerfile
1
star
52

random-clojure-function

Show a random function from the Clojure Standard library
Clojure
1
star
53

devsummer-clojure

A workshop for the - Getting started with Clojure coding - for Devoxx UK 2015 & /dev/summer 2015
HTML
1
star
54

numbers-to-words

Clojure
1
star
55

which-clojure-library

1
star
56

atom-protorepl

Atom ProtoREPL for Clojure/Script development
CSS
1
star
57

.github

Organisation profile and GitHub default configuration
1
star
58

clojure-kafka

Developing immutable event stream applications with Clojure and Kafka
HTML
1
star
59

gitbook-template

1
star
60

structurizr

Diagrams as Code using C4 Model - practicalli services and theme
ASL
1
star
61

neovim-conjure-configuration

Vim Script
1
star
62

clojure-configure-repl

Configure REPL start up for deps.edn project
Clojure
1
star
63

emacs-doom

Guide to Clojure REPL Driven Development with Emacs Doom
CSS
1
star
64

example-clojurescript-reagent-svg-website

An example Clojurescript front-end website using reagent and scalable vector graphics
Clojure
1
star
65

scicloj-notespace-simple-demo

Simple demo of Notespace, a journal for clojure
Clojure
1
star