https://github.com/cloudle/hive-core
https://github.com/cloudle/hive-core
Last synced: about 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/cloudle/hive-core
- Owner: cloudle
- Created: 2017-07-01T20:58:20.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2017-09-16T07:48:56.000Z (over 8 years ago)
- Last Synced: 2025-02-15T19:22:44.154Z (over 1 year ago)
- Language: Clojure
- Size: 38.1 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Getting Started
1. Start the application: `lein run`
2. Go to [localhost:8080](http://localhost:8080/) to see: `Hello World!`
3. Read your app's source code at src/hive/service.clj. Explore the docs of functions
that define routes and responses.
4. Run your app's tests with `lein test`. Read the tests at test/hive/service_test.clj.
5. Learn more! See the [Links section below](#links).
## Scripts
- lein datomic start
- lein datomic initialize
## REPL
1. open Proto-REPL on Atom
2. run `(def dev-serv (hive.server/run-dev))`
3. Command + Shift + Alt + F to re-eval current file.
4. Server is hot updated! try it.
## Configuration
https://stackoverflow.com/questions/26619362/lein-install-datomic-peer-library-on-mac
To configure logging see config/logback.xml. By default, the app logs to stdout and logs/.
To learn more about configuring Logback, read its [documentation](http://logback.qos.ch/documentation.html).
## Developing your service
1. Start a new REPL: `lein repl`
2. Start your service in dev-mode: `(def dev-serv (run-dev))`
3. Connect your editor to the running REPL session.
Re-evaluated code will be seen immediately in the service.
### [Docker](https://www.docker.com/) container support
1. Build an uberjar of your service: `lein uberjar`
2. Build a Docker image: `sudo docker build -t hive .`
3. Run your Docker image: `docker run -p 8080:8080 hive`
### [OSv](http://osv.io/) unikernel support with [Capstan](http://osv.io/capstan/)
1. Build and run your image: `capstan run -f "8080:8080"`
Once the image it built, it's cached. To delete the image and build a new one:
1. `capstan rmi hive; capstan build`
## Links
* [Other examples](https://github.com/pedestal/samples)
* https://github.com/mrmcc3/firebase-wrappers
## Datalog questions:
- Find movie title by year
- Given a list of movie titles, find the title and the year that movie was released.
["Lethal Weapon" "Lethal Weapon 2" "Lethal Weapon 3"]
- Find all movie ?titles where the ?actor and the ?director has worked together
- Write a query that, given an actor name and a relation with movie-title/rating, finds the movie titles and corresponding rating for which that actor was a cast member.
- What attributes are associated with a given movie.
- Find the names of all people associated with a particular movie (i.e. both the actors and the directors)