heyarne.all-my-friends.app/README.md
2021-04-19 19:30:51 +02:00

38 lines
1.4 KiB
Markdown

# All my Friends
This is scratching a weird itch that started when I saw my friends mostly online.
## What is happening?!
The project is built via [shadow-cljs](https://shadow-cljs.github.io/docs/UsersGuide.html).
You can run a dev build like so:
``` sh
npx shadow-cljs server :app
```
This starts a web server at localhost:8080 and also starts an nRPL server that you can connect to in your editor
Similarly, a production-optimized app can be generated via
``` sh
npx shadow-cljs release :app
```
If you want to get detailed info about bundle size, try:
``` sh
npx shadow-cljs run shadow.cljs.build-report :app report.html
```
The server component has to be started separately.
You probably want to do this from within your editor while developing (see below).
## Important paths
* `src/heyarne/all_my_friends/server.clj`: Contains a simple HTTP server that serves static files and has a handler for uploads
* `src/heyarne/all_my_friends/client.cljs`: Is the starting point for the client application
* `resources/config.edn`: Uses [aero](https://github.com/juxt/aero/tree/1ecae6465405643aaacd54b9b45b4fdb92d1cf7a) for configuration.
* `resources/public`: Contains HTML and CSS files. `resources/public/js` is automatically compiled.
* `deps.edn`: Client and server dependencies and build configuration
* `shadow-cljs.edn`: Client-side build config for [shadow-cljs](https://shadow-cljs.github.io/docs/UsersGuide.html)