Skip to content

micheam/todo-web-app-clj-sample

Repository files navigation

Todo Web App with clojure

簡単なタスク管理WEBアプリケーションの実装サンプルです。

以下の構成で実装されています。

  • clojure
  • compojure
  • java.jdbc
  • postgres

仕様

タスクの一覧取得

GET /api/
GET /api/?limit=10

タスクの登録

POST /api/
{
  "title": "awesome task",
  "link": "http://example.com/detail/of/awesome/task",
  "due_date": "2019-02-09T00:00:00Z",
  "done": false
}

タスクの取得

GET /api/:task_id

タスクの更新

PATCH /api/:task_id
{
  "title": "updated my awsome task",
  "done": true
}

タスクの削除

DELETE /api/:task_id

APIの詳細仕様については、api-spec を参照してください。

ローカル実行方法

以下がインストールされている必要があります。

WEBサーバを起動する場合には、以下を実行してください :

$ docker-compose up -d
$ lein ring server

Heroku環境での実行方法

以下にデプロイされています。
https://todo-web-app-clj-sample.herokuapp.com

実際にAPIの動作を確認してみる場合には、 以下の様にアクセスしてみてください:

$ curl -X POST \
  -d '{"title","Hello, World."}' \
  https://todo-web-app-clj-sample.herokuapp.com/api

$ curl https://todo-web-app-clj-sample.herokuapp.com/api

以下のボタン使ってあなたのHeroku環境にデプロイすることもできます。

Deploy

参考

Building a Database-Backed Clojure Web Application - devcenter.heroku.com

License

MIT License

Copyright (c) 2019 Michito Maeda

michito.maeda+github@gmail.com