snippets/README.md
Travis Shears c1f984b8d0
replace XTDB references with Datomic
- Update project overview in README.md and CLAUDE.md to reference Datomic
- Replace documentation links from XTDB to Datomic
- Update database layer descriptions from XTDB to Datomic
- Simplify configuration documentation (remove XTDB-specific connection details)
- Update data model to use Datomic entity/attribute naming conventions
- Update notes section to reference Datalog instead of XTQL
- Remove XTDB dependencies and test fixtures from test suite
- Simplify test utilities to work without XTDB test nodes
2026-03-12 10:31:44 +01:00

65 lines
1.6 KiB
Markdown

# Code Snippets
Backend application to store my code snippets and make them available via REST API.
[TUI CMS / MCP server companion project](https://git.travisshears.com/travisshears/snippets_cms)
This project is written in [Clojure](https://clojure.org/) and data is stored in [Datomic](https://www.datomic.com/).
## Links
- [reitit docs](https://cljdoc.org/d/metosin/reitit/0.9.1/doc/introduction)
- [basic web development clojure tutorial](https://clojure-doc.org/articles/tutorials/basic_web_development/)
- [reitit malli coercion](https://cljdoc.org/d/metosin/reitit/0.9.1/doc/coercion/malli)
- [malli docs](https://github.com/metosin/malli)
- [Datomic docs](https://docs.datomic.com/)
## Dev
### How to run dev server
Run the server
```
$ clojure -M -m snippets.main
```
Hot reload:
```shell
$ fd -e clj | entr -r clojure -M -m snippets.main
```
### Repl
Connect to the repl of running app
```shell
$ rlwrap nc localhost 5555
```
Or start up fresh repl
```
$ rlwrap clojure
; print stuff
(clojure.pprint/pprint {:name "Alice" :age 30})
; import modules
(require 'clojure.string)
(require '[clojure.string :as str])
(require 'my.namespace :reload)
; list namespace contense
(dir clojure.string)
; Switch into a namespace
(in-ns 'my.namespace)
(in-ns 'user)
```
### How to create docker image
At this point I'm using a private AWS ECR repository for the project and deploying it in my homelab.
```shell
$ export AWS_PROFILE=personal
$ docker buildx build --platform linux/amd64,linux/arm64 -t 853019563312.dkr.ecr.eu-central-1.amazonaws.com/snippets-homelabstack:latest --push .
```