This project is a community based metadata registry. With it your community can have a full data store with an api, data validation and search capabilities, by just providing a simple config with a json-schema definition.
It is used as the API engine underneath the CE/Registry. Also comprises the new implementation of the Learning Registry API, using a widely-used database and providing a more developer-friendly, REST-oriented environment.
We organize any info into community
buckets.
All data inside a community is abstracted in envelopes
. These envelopes can yield any type of resource
, encoded using JWT
.
You can define a schema (via a json-schema
file) for your resources.
With these configs in hand we can validate the resources, and provide a search api.
This project is currently in testing phase. It is not for production use at this time. A running developer testbed node is located at lr-staging.learningtapestry.com
You can see more info on the development and future releases on:
Refer to the SETUP GUIDE for info on how to install, setup and run this project.
You can read more on the docs folder:
- Getting Started
- CE/Registry walkthrough
- API Info
- Paradata
- Backup and Restore
- Integration Samples
- Search
- Schemas
The official Swagger documentation describing the API is available at http://lr-staging.learningtapestry.com/swagger/index.html. It uses Swagger UI to present the spec in a visually pleasant format, and also allows you to inspect and call the available endpoints from the staging node.
For development, you can install the swagger-ui locally with:
bin/install_swagger
then access on http://localhost:9292/swagger/index.html.
We also provide a Postman collection that contains the most up to date API modifications. You can grab it from here: https://www.getpostman.com/collections/bc38edc491333b643e23
We back up daily transactions to Archive.org. The packages are available at the ce-registry archive (S3-compatible bucket).
(c) Learning Tapestry, Inc. 2021
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
- Primary architecture and design (from version 1+): Steve Midgley (@science), Joe Hobson (@joehobson), Abraham Sanchez (@aspino), RM Saksida (@rmsaksida), Jason Hoekstra (@jasonhoekstra), Jim Klo (@jimklo), Walt Grata (@wegrata), Marie Bienkowski (@marbienk), Dan Rehak, Suraiya Suliman (@ssuliman), John Weatherley, Susan Van Gundy, Paul Jesukiewicz
- Software design and implementation (this version): Abraham Sanchez (@aspino), Steve Midgley (@science), Anderson Cardoso (@andersoncardoso), RM Saksida (@rmsaksida), Alex Nizamov (@excelsior)