vitrivr / vitrivr-engine

vitrivr's next-generation retrieval engine. It is capable of extracting and retrieving a wider range of multimedia objects such as audio, video, images or 3d models.
https://vitrivr.org
MIT License
6 stars 3 forks source link

Bootstrap RESTful API and CLI #11

Closed ppanopticon closed 1 year ago

ppanopticon commented 1 year ago

Task Description

The use of RESTful API and CLI should be bootstrapped:

Dependencies

None

Boundary Conditions

RESTful API should use Open API if possible.

ppanopticon commented 1 year ago

I have now (re-)structured the project (yet again) as follows:

The argument for splitting this is as follows:

The API offered by the vitrivr-engine-server is now structured as follows:

@lucaro Any thoughts if this makes sense?

lucaro commented 1 year ago

Sounds reasonable to me. I guess this is largely in line with previous discussions. From a build-pipeline point of view, this would mean that we would build vitrivr-engine-index and vitrivr-engine-query as libraries and push them to a maven repository, build vitrivr-engine-base as a library and release it on github and build vitrivr-engine-server as an application and release it on github. For the application, I guess there would be two flavors, one that includes the vitrivr-engine-base and hence comes with 'batteries included' and one that does not, in case people just want to load their own libraries. Thoughts?