https://github.com/lilactown/graphql-demo
GraphQL demo using Clojure + Pedestal + Lacinia
https://github.com/lilactown/graphql-demo
clojure graphql graphql-demo lacinia pedestal
Last synced: 3 months ago
JSON representation
GraphQL demo using Clojure + Pedestal + Lacinia
- Host: GitHub
- URL: https://github.com/lilactown/graphql-demo
- Owner: lilactown
- Created: 2017-05-31T00:05:24.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2017-06-03T03:17:10.000Z (over 8 years ago)
- Last Synced: 2025-02-15T18:48:33.281Z (8 months ago)
- Topics: clojure, graphql, graphql-demo, lacinia, pedestal
- Language: Clojure
- Size: 9.77 KB
- Stars: 0
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# graphql-demo
An example GraphQL service written in Clojure using [Pedestal](http://pedestal.io/) and [Lacinia](https://github.com/walmartlabs/lacinia).
## 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/graphql_demo/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/graphql_demo/service_test.clj.
5. Learn more! See the [Links section below](#links).## Configuration
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 graphql-demo .`
3. Run your Docker image: `docker run -p 8080:8080 graphql-demo`### [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 graphql-demo; capstan build`
## Links
* [Other examples](https://github.com/pedestal/samples)