Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lambrospetrou/create-shadow-cljs-app
Easy creation of ClojureScript applications using Shadow-CLJS
https://github.com/lambrospetrou/create-shadow-cljs-app
aws-lambda clojure clojurescript closure nodejs shadow-cljs
Last synced: 3 months ago
JSON representation
Easy creation of ClojureScript applications using Shadow-CLJS
- Host: GitHub
- URL: https://github.com/lambrospetrou/create-shadow-cljs-app
- Owner: lambrospetrou
- License: mit
- Created: 2019-08-24T16:39:51.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2022-03-24T13:32:55.000Z (almost 3 years ago)
- Last Synced: 2024-10-20T02:52:33.286Z (4 months ago)
- Topics: aws-lambda, clojure, clojurescript, closure, nodejs, shadow-cljs
- Language: Clojure
- Size: 1.07 MB
- Stars: 16
- Watchers: 5
- Forks: 1
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# create-shadow-cljs-app
This is an NPM initializer to ease the creation of projects using the **awesome** [Shadow-CLJS](https://shadow-cljs.github.io/docs/UsersGuide.html).
The default template provides out-of-the-box setup for a Node script, a standard `commonjs` library, and a browser-compatible output.
## Get started
To create a project named `cljs-app`, run any of the following commands:
```
npx create-shadow-cljs-app cljs-app# or
npm init shadow-cljs-app cljs-app
```This will create a directory `cljs-app` with code for the three main targets supported.
To create release artifacts for all of the available targets run `npm run release`.
Check the `README.md` of the created project for more details on what you get.
## Options
To see all the options available run `npx create-shadow-cljs-app --help`.
## Contributing
The goal of this project is to provide a no-fuss starting template for projects to use `Shadow-CLJS`.
I am happy to accept pull requests as long as the goal of the projects remains as is.
When choosing between simplicity and features, always prefer simplicity.
### Local testing
In order to test the initializer locally you can use [`npx`](https://github.com/npm/npx) to simulate the flow using a local directory.
```bash
# Checkout the initializer code
mkdir -p ~/dev && cd ~/dev
git clone https://github.com/lambrospetrou/create-shadow-cljs-app.git
pushd create-shadow-cljs-app && npm install && npm pack && popd# Create the new app using the local version of the initializer (use the right version in the `*.tgz` file)
npx ~/dev/create-shadow-cljs-app/create-shadow-cljs-app-1.1.1.tgz --name cljs-app
```