Main Page
Welcome to the NeoWiki demo wiki!
NeoWiki turns your wiki into a collaborative graph database by letting you store and query structured information. Information is stored in versioned document form inside of wiki pages. The latest version is also stored in graph databases via which it can be queried.
NeoWiki is in the experimental proof of concept phase. It is not production ready, public interfaces will change, big structural changes will happen, and key functionality is still missing.
This demo exists to gather feedback to inform further development. (Contact Professional Wiki)
You can find technical documentation in the NeoWiki git repository.
Discover NeoWiki Step by Step
Terminology is explained in the glossary.
As a reader:
- View a Subject: Professional Wiki
- View a Schema: Schema:Company
As an editor:
- Edit a Subject: Professional Wiki (login required)
- Edit a Schema: either via a Subject using it, i.e. Professional Wiki, or directly on the Schema page, i.e. Schema:Company
- Create a Subject: TODO
As a developer:
- View Subject JSON: Special:NeoJson/ACME_Inc (developer UI, normal users will not see JSON. View docs)
- Query the graph database: Cypher raw example
- Explore the REST API
Demo pages
- Simple page with automatic infobox and edit form: NeoWiki, ProWiki
- Subject with relations: Professional Wiki
- Multiple subjects per page: ACME Inc
- Wikibase Statement emulation: Berlin
- Displaying data from other pages: Company Infoboxes
- Reactive UI example
Schemas allow you to define the structure of your data. For instance, you can define that a Employee has a compensation in EUR with a value between 0 and 1000000.
REST API endpoints
We will have OpenAPI docs later. For now, you can find a complete and up-to-date list by looking at the MediaWiki API route definitions. Search for "RestRoutes".
Example URL: https://neowiki.dev/w/rest.php/neowiki/v0/subject/s1demo4sssssss1
Read endpoints
GET /neowiki/v0/subject/{subjectId}Gets the JSON definition of a subjectGET /neowiki/v0/schema/{schemaName}Gets the JSON definition of a schema
Write endpoints
These require a CSRF token, first obtained via api.php?action=query&format=json&meta=tokens&type=csrf
POST /neowiki/v0/page/{pageId}/mainSubjectCreates a new main subjectPOST /neowiki/v0/page/{pageId}/childSubjectsCreates a new child subjectPATCH /neowiki/v0/subject/{subjectId}Updates a subjectDELETE /neowiki/v0/subject/{subjectId}Deletes a subject
These endpoints are designed for the NeoWiki frontend. They are not a complete general purpose API yet.