OkConcept0
♘ 🐴
OkConcept0:
⚬ an API server for creating, reading, updating and destroying objects in MongoDB
⚬ a UI for interacting with the API
a port of Seis for MongoDB
by Dan McKeown at pacificIO copyright 2019
QuickStart
installation:
Download the app with Git:
git clone https://github.com/pacificpelican/okconcept0.git
cd okconcept0Install the app with NPM or Yarn:
npm install
# or
yarnInstall MongoDB database
brew install mongodb
# or
**install MongoDB directly**running:
Turn on MongoDB
brew services start mongodb
# or
mongodRun the app on your local system:
npm run dev
# or
yarn devOpen the app default UI in a browser (or make requests via the API):
open http://localhost:3011
curl http://localhost:3011/api/1/getdbdata/db/seisdb/object/seis
an object cycle noSQL database manager by Dan McKeown
copyright 2019
- Objectbrowser → SpreadsheetObjectbrowser → SpreadsheetCoreRecursive
- Desk → Spreadsheet → SpreadsheetCoreRecursiveClick
- View → SpreadsheetCoreRecursive
-
GET database object collection:
/api/1/getdbdata/db/seisdb/object/seisDesk, Spiralviewer -
GET one database object by locator:
/api/1/getdbdata/db/seisdb/object/seis/tuple/14206View -
POST create new database object:
/api/1/saveobjectdata/db/seisdb/obj/seis/newdata/%22%20%7B%20%5C%22name%5C%22%3A%20%5C%22Bogey%5C%22%20%7D%22Objectbrowser -
POST (shallow) create new database object:
/api/1/saveobjectdatashallow/db/spiraldb/obj/notes/newdata/%7B%22note%22%3A%22I%20love%20the%20cat!%22%2C%22savedAt%22%3A1554680275455%7DSpiral -
POST update existing database object by locator property:
/api/1/updatedata/db/seisdb/object/seis/objprop/Bogey/objkey/name/newval/Belle/tuple/99372Edit -
POST update existing database object by locator property:
/api/1.6/updatedata/db/seisdb/object/seis/objprop/%2522birds%2522/objkey/wha/newval/birbs/tuple/11749Edit2 -
POST delete existing database object by locator property:
/api/1/deletedata/db/seisdb/object/seis/tuple/15540Delete
okconcept0 is from Pacific IO and uses NextJS for front-end with custom server and routing and ExpressJS and was scaffolded using create-next-app. The UI is built with ReactJS components. The app's databases are powered by MongoDB.
This project includes the OkConceptbrowser project as published to NPM as a dependency: Okconceptbrowser (and its dependency okconceptviewer) was extracted from this project's Objectbrowser component.
- the Edit functionality will only edit top level object properties
- arrays of JSON passed into Objectbrowser will not save since they are not objects
- dev only: no ENV variables for production at the moment
- OkConcept0 started as a fork of the Seis project with the difference being that OkConcept0 uses MongoDB instead of LokiJS as its database backend (while maintaing v1 data API compatability).
