日本語のREADMEはこちらです: README.ja.md
A simple open data platform that allows anyone to register a dataset, generate a unique URL, and update it anytime.
- Demo: https://push.sabae.cc/
- Simple Web UI: Register and update data through an easy-to-use web form. No database required.
- Shareable URLs: Each dataset gets a unique, persistent URL.
- Flexible Data Types: Use predefined types like
facility,store, andevent, or create your own custom types using thegenericschema. - Data Aggregation: Combine multiple datasets into a single endpoint using the
containertype. - Multiple Formats: Access data as a human-readable HTML page, or in machine-readable JSON and CSV formats.
- Go to the demo site.
- Select an existing data type (e.g., 施設/facility, 店舗/store) or create a new one by starting with 種別/generic.
- Fill in the form and click "オープンデータ登録" (Register Open Data).
- A unique ID and a
パスコード(passcode) for future updates will be generated.
- Select the 集約/container data type.
- In the
IDsfield, enter the numeric IDs of the datasets you want to bundle, separated by commas. - Registering this will create a new container ID that provides a single endpoint for all included data.
Data can be accessed via simple GET requests.
-
Get HTML View:
https://push.sabae.cc/ID- Renders a human-readable HTML page for one or more datasets.
- Example:
https://push.sabae.cc/1
-
Get JSON Data:
https://push.sabae.cc/ID1,ID2.json- Returns aggregated data in JSON format. If an ID for a
containeris included, its contents are automatically fetched and included. - Example:
https://push.sabae.cc/1.json
-
Get Raw JSON Data:
https://push.sabae.cc/ID.raw.json- Returns the raw, unprocessed JSON file for a single dataset.
-
Get CSV Data:
https://push.sabae.cc/ID1,ID2.csv- Returns aggregated data in CSV format.
-
List All Datasets:
https://push.sabae.cc/- Returns a JSON array with metadata for all public datasets.
-
Register or Update Data:
POST /- The web UI sends a JSON payload to this endpoint to create or update a dataset. To update, the correct
パスコードmust be included.
- Clone the repository.
- Run the application server. The
run_push.shscript includes awhileloop to automatically restart the server if it crashes.sh run_push.sh
- For production, you can run the server in the background using
nohup:nohup sh run_push.sh &
The server will start on port 8006 by default. Data is stored as flat files in the data/ directory.
This project is available under the CC BY license.
Created by @taisukef / Code for FUKUI