clearlydefined / clearlydefined/service
Enable Service to run locally
- Dominant language
- TypeScript
- Stars
- 51
- Forks
- 46
- PR merge metrics
- No merged PRs in 30d
Description
In some scenarios teams want to run the Service locally
* maintains privacy as the users never have to tell ClearlyDefined what components they are using
* insulates the consumers from downtime in api.clearlydefined.io
* takes load off of the public service
There are several topics around doing this
- [ ] Replicating the data. The data layer of ClearlyDefined is not exposed and is subject to change. As such, we do not want to go give local services direct access to the shared data storage. In addition, using the shared data would still have the issues raised above. As such, we need a way of periodically or continuously updating a local data store. See #386 for more info.
- [ ] Local scenarios should be read-only. It is critical that there is one source of truth and we not introduce data inconsistencies.
- [ ] Local scenarios may have different data stores from the main service. A simple version would just put the data in the local file system.
- [ ] Local servers, being read-only, need not ever compute a definition
- [ ] lazy harvesting. Should accessing a missing definition on a local machine trigger harvesting in the public service. That could be a switch as it does leak some amount of what the team is using.
Contributor guide
Assessment
This issue has not been assessed yet.