Jump to content

Main Page: Difference between revisions

From NeoWiki Demo
No edit summary
 
NeoWiki (talk | contribs)
Importing NeoWiki demo data
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
<strong>MediaWiki has been installed.</strong>
<div style="max-width:1200px; font-size: 1.15rem">
Welcome to the NeoWiki demo wiki!


Consult the [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents User's Guide] for information on using the wiki software.
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.


== Getting started ==
NeoWiki is in the experimental proof of concept phase. It is not production ready, public interfaces will change,
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Configuration settings list]
big structural changes will happen, and key functionality is still missing.
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ MediaWiki FAQ]
 
* [https://lists.wikimedia.org/postorius/lists/mediawiki-announce.lists.wikimedia.org/ MediaWiki release mailing list]
This demo exists to gather feedback to inform further development. ([https://professional.wiki/en/contact Contact Professional Wiki])
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Localise MediaWiki for your language]
 
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Learn how to combat spam on your wiki]
You can find [https://github.com/ProfessionalWiki/NeoWiki/tree/master/docs technical documentation] in the
[https://github.com/ProfessionalWiki/NeoWiki NeoWiki git repository].
</div>
 
== Discover NeoWiki Step by Step ==
 
Terminology is explained in [https://github.com/ProfessionalWiki/NeoWiki/blob/master/docs/Glossary.md 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: Create a new page with any content and click "Create subject". That button is there just for the PoC.
 
'''As a developer:'''
 
* View Subject JSON: [[Special:NeoJson/ACME_Inc]] (developer UI, normal users will not see JSON. [https://github.com/ProfessionalWiki/NeoWiki/blob/master/docs/SubjectFormat.md View docs])
* Query the graph database: [[Cypher|Cypher raw example]]
* [[#REST_API_endpoints|Explore the REST API]]
 
== European Museums ==
 
A dataset of European museums, artists, and artworks showcasing cross-schema relations and rich property types.
 
'''Museums:''' [[Musee dOrsay|Musée d'Orsay]], [[Rijksmuseum]], [[Kunsthistorisches Museum]], [[Museo del Prado]]
 
'''Artists:''' [[Claude Monet]], [[Vincent van Gogh]], [[Johannes Vermeer]], [[Diego Velazquez|Diego Velázquez]], [[Gustav Klimt]]
 
'''Artworks:''' [[Water Lilies]], [[Starry Night Over the Rhone|Starry Night Over the Rhône]], [[The Milkmaid]], [[Las Meninas]], [[The Kiss]], [[The Art of Painting]]
 
'''Exhibitions:''' [[Impressionist Masters]], [[Dutch Golden Age Highlights]]
 
'''Cities:''' [[Paris]], [[Amsterdam]], [[Vienna]], [[Madrid]]
 
'''Overview:''' [[Museum Collection]]
 
== Other 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.
 
* [[Schema:Company]]
* [[Schema:Product]]
* [[Schema:Employee]]
* [[Schema:Museum]]
* [[Schema:Artist]]
* [[Schema:Artwork]]
* [[Schema:Exhibition]]
* [[Schema:Attendance]]
* [{{fullurl:Special:AllPages|from=&to=&namespace=7474}} View all schemas]
 
== 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
[https://github.com/ProfessionalWiki/NeoWiki/blob/master/extension.json MediaWiki API route definitions].
Search for "RestRoutes".
 
Example URL: https://neowiki.dev/w/rest.php/neowiki/v0/subject/s1demo4sssssss1
 
=== Read Endpoints ===
 
* <code>GET /neowiki/v0/subject/{subjectId}</code> Gets the JSON definition of a subject
* <code>GET /neowiki/v0/schema/{schemaName}</code> Gets the JSON definition of a schema
 
=== Write Endpoints ===
 
These require a CSRF token, first obtained via <code>api.php?action=query&format=json&meta=tokens&type=csrf</code>
 
* <code>POST /neowiki/v0/page/{pageId}/mainSubject</code> Creates a new main subject
* <code>POST /neowiki/v0/page/{pageId}/childSubjects</code> Creates a new child subject
* <code>PATCH /neowiki/v0/subject/{subjectId}</code> Updates a subject
* <code>DELETE /neowiki/v0/subject/{subjectId}</code> Deletes a subject
 
These endpoints are designed for the NeoWiki frontend. They are not a complete general purpose API yet.

Latest revision as of 14:41, 3 February 2026

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:

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: Create a new page with any content and click "Create subject". That button is there just for the PoC.

As a developer:

European Museums

A dataset of European museums, artists, and artworks showcasing cross-schema relations and rich property types.

Museums: Musée d'Orsay, Rijksmuseum, Kunsthistorisches Museum, Museo del Prado

Artists: Claude Monet, Vincent van Gogh, Johannes Vermeer, Diego Velázquez, Gustav Klimt

Artworks: Water Lilies, Starry Night Over the Rhône, The Milkmaid, Las Meninas, The Kiss, The Art of Painting

Exhibitions: Impressionist Masters, Dutch Golden Age Highlights

Cities: Paris, Amsterdam, Vienna, Madrid

Overview: Museum Collection

Other Demo Pages

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 subject
  • GET /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}/mainSubject Creates a new main subject
  • POST /neowiki/v0/page/{pageId}/childSubjects Creates a new child subject
  • PATCH /neowiki/v0/subject/{subjectId} Updates a subject
  • DELETE /neowiki/v0/subject/{subjectId} Deletes a subject

These endpoints are designed for the NeoWiki frontend. They are not a complete general purpose API yet.

This page defines 0 NeoWiki subjects.
View or edit JSON