An open API service indexing awesome lists of open source software.

https://github.com/jocelio/projects-catalog

A simple rest service built in clojure & pedestal http framework
https://github.com/jocelio/projects-catalog

clojure leiningen repl

Last synced: 8 months ago
JSON representation

A simple rest service built in clojure & pedestal http framework

Awesome Lists containing this project

README

          

# Projects Catalog

A simple rest service built in clojure & pedestal http framework.

## 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/projects_catalog/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/projects_catalog/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 projects_catalog .`
3. Run your Docker image: `docker run -p 8080:8080 projects_catalog`

### [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 projects_catalog; capstan build`

## Links
* [Other examples](https://github.com/pedestal/samples)