Skip to content

Commit

Permalink
install: update overview and related project links
Browse files Browse the repository at this point in the history
Signed-off-by: John Practicalli <250870+practicalli-john@users.noreply.github.com>
  • Loading branch information
practicalli-johnny committed Jul 9, 2023
1 parent 75a4e00 commit 842b807
Showing 1 changed file with 10 additions and 6 deletions.
16 changes: 10 additions & 6 deletions docs/install/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,18 @@

Clojure CLI is the minimum Clojure environment, although a [Clojure aware editor](/clojure/clojure-editors/) with [Clojure LSP server](/clojure/clojure-editors/clojure-lsp/) is highly recommended.

Clojure CLI provide the foundation for Clojure development, providing a simple and configurable way to:
Clojure CLI provide the foundation for Clojure development, providing a declarative approach to:

* Run Clojure programs and tools
* Run a REPL process (Read-Eval-Print Loop) and provides a basic interactive terminal UI
* Manage packaged dependencies from Maven (jars) and use Git repositories as dependencies

[Practicalli Clojure CLI config](clojure-cli/#practicalli-clojure-cli-config) extends Clojure CLI with tasks to create, develop, build and deploy Clojure applications and services. Configuration for [Clojure LSP](/clojure/clojure-editors/clojure-lsp/) and cljstyle are also included.
[Practicalli Clojure CLI config](clojure-cli/#practicalli-clojure-cli-config) provides a user configuration that extends Clojure CLI with tasks to create, develop, build and deploy Clojure applications and services. Configuration for cljstyle Clojure format tool is also included.

[Clojure aware editors](/clojure-editors/) provide the most effective way to write and maintain Clojure projects, connecting to (or even starting) a Clojure REPL and evaluating code as its typed and seeing the results instantly in line with the code.

[Practicalli Clojure LSP configuration](/clojure/clojure-editors/clojure-lsp/) for static code analysis with Clojure LSP server and live code formatting with cljfmt.

[Clojure aware editors](/clojure-editors/) provide the most effective way to write and maintaine Clojure projects, connecting to (or even starting) a Clojure REPL and evaluating code as its typed and seeing the results instantly in line with the code.

## Complete Clojure environment

Expand All @@ -22,19 +25,20 @@ Establish an effective Clojure development environment by installing the followi
| [Clojure CLI](clojure-cli.md) | Run Clojure REPL and other tools for development and production |
| [Practicalli Clojure CLI config](clojure-cli/#practicalli-clojure-cli-config) | Curated aliases providing common development tasks and tools across all projects (used heavily in this guide) |


| Recommended Tools | Purpose |
|-------------------------------------------------------------|------------------------------------------------------------------------------------------|
| [Clojure aware editors](/clojure/clojure-editors/) | Editors providing a complete Clojure development environment |
| [Clojure LSP server](/clojure/clojure-editors/clojure-lsp/) | Lint tool to detect syntax bugs and suggest idiomatic code |
| [Data browsers](/clojure/data-browsers/) | Visualize results of Clojure code, navigate nested data and page through large data sets |
| [Data inspectors](/clojure/data-inspectors/) | Visualize results of Clojure code, navigate nested data and page through large data sets |

!!! HINT "Aliases in Practicalli Clojure provided by Practicalli Clojure CLI config"
[:fontawesome-solid-book-open: Practicalli Clojure CLI Config](clojure-cli/#practicalli-clojure-cli-config) provides a user configuration of over 50 aliases to support Clojure development. These aliases are used heavily in the Practicalli Clojure book.

If the Practicalli Clojure CLI config is not used, review the [`deps.edn` file](https://github.com/practicalli/clojure-deps-edn/blob/live/deps.edn){target=_blank} from the GitHub repository and add relevant aliases definitions to your own Clojure CLI configuration.

??? INFO "optional: clj-kondo static analysis tool"
[Code analysis (clj-kondo)](/clojure/reference/code-analysis.md){target=_blank} is a Clojure syntax analysis tool that can detect syntax bugs and suggest idiomatic code. clj-kondo is included in Clojure-lsp so is an optional install
[Code analysis (clj-kondo)](/clojure/reference/code-analysis.md){target=_blank} is a Clojure syntax analysis tool that can detect syntax bugs and suggest idiomatic code. clj-kondo is included in clojure-lsp, so only recommended if clojure-lsp is not available.

??? INFO "Alternative development tools"
[Leiningen](https://leiningen.org){target=_blank} is the classic development tool for Clojure. All the code examples in this book should work with Leiningen when a correctly configured `project.clj` file is created which includes all the necessary library dependencies. Libraries included via aliases should be added as either `:dev-dependencies` or `:aliases` in the Leiningen `project.clj` file.
[Leiningen](https://leiningen.org){target=_blank} is the long-standing development tool for Clojure. All the code examples in this book should work with Leiningen when a correctly configured `project.clj` file is created which includes all the necessary library dependencies. Libraries included via aliases should be added as either `:dev-dependencies` or `:aliases` in the Leiningen `project.clj` file.

0 comments on commit 842b807

Please sign in to comment.