Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gsuke/api-platform
Generic REST API platform that allows you to create REST resources dynamically
https://github.com/gsuke/api-platform
asp-net aspnetcore csharp docker dotnet json-schema postgresql webapi
Last synced: about 22 hours ago
JSON representation
Generic REST API platform that allows you to create REST resources dynamically
- Host: GitHub
- URL: https://github.com/gsuke/api-platform
- Owner: gsuke
- License: mit
- Created: 2021-12-29T05:36:12.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2022-01-26T09:22:02.000Z (almost 3 years ago)
- Last Synced: 2023-07-30T10:34:16.779Z (over 1 year ago)
- Topics: asp-net, aspnetcore, csharp, docker, dotnet, json-schema, postgresql, webapi
- Language: C#
- Homepage:
- Size: 249 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.adoc
- License: LICENSE
Awesome Lists containing this project
README
= API Platform
ユーザが動的にリソースを作成および利用できる汎用的なAPI基盤。
任意のリソースを作成し、そのリソースに対してCRUDを実行できます。※ 開発中
== Demo
. 試しに、ToDo管理のためのリソース「**todo**」を作成してみます。
+
image::docs/imgs/demo-001.png[]
+
.todoリソースのデータスキーマの詳細
|===
|プロパティ名|型|役割|id|文字列|主キーになる
|task_name|文字列|タスクの名前
|===. 作成したToDo管理リソースに対して、Postメソッドを実行してタスクを追加します。
+
image::docs/imgs/demo-002.png[]. Getメソッドを実行することで、追加したタスク一覧を確認できます。
+
image::docs/imgs/demo-003.png[]. 他にもDeleteなどのCRUDが実装されています。データスキーマを好きな形に変更することによって、様々なユースケースで活用できます。
== Usage
=== Requirements
.実行環境
* https://docs.microsoft.com/ja-jp/dotnet/core/install/[.NET 6]
* Docker.ツール
* https://code.visualstudio.com/[Visual Studio Code] (開発環境)
* https://www.postman.com/[Postman] などの Web API テストツール
* https://dbeaver.io/[DBeaver] などのSQLクライアントツール=== Installation
. docker ディレクトリ内で `docker-compose up -d` を実行する。
. docker/.env ファイルのデータベース接続情報を書き換える。
. DBeaver を用いてデータベースにアクセスする。アクセス情報の例は以下。(.envファイルを書き換えていない場合)
+
* Host: localhost
* Port: 5432
* データベース名: db
* ユーザ名: root
* パスワード: pass. docker/ddl.sql ファイルのテーブル生成SQLを実行する。
. VS Code で Gsuke.ApiPlatform ディレクトリを開く。
. Ctrl + F5 キーを押下してプロジェクトを実行する。
. Postman を用いて https://localhost:7033/resource にアクセスし、 `[]` が返却されることを確認する。
+
image::docs/imgs/installation-001.png[]
+
image::docs/imgs/installation-002.png[]=== Tutorials
※ 執筆中
=== Documents
link:docs/index.adoc[※ 執筆中]
== License
link:LICENSE[MIT LICENSE]
== 今後の予定
* 自動テストを実装
* デプロイ