-
Notifications
You must be signed in to change notification settings - Fork 1
Overview
This has been built to help both technical and non-technical users of the platform to orient themselves and understand how to build and run the project.
The VPIA uses Node and MySQL on the backend - React on the front.
The platform is technically split up into large separate chunks.
A wiki engine is premade code that supports basic Wikipedia-esque functions. This involves:
- Creating content connected to a user or even anonymously
- Revision history - the ability to see who, when and what changed in content and to return to an earlier form
- Allows multiple users to edit content
The VPIA currently uses Matterwiki, a simple functional wiki engine that supports revision, content creation and editor and even a basic search functionality.
One challenge is allowing the public to view content without modifying - Matterwiki only allows the admin to add users at the moment. This is due to all of the API routes being protected with a JSON web token.
There's also no support for user profile viewing.
Literally stands for "What you see is what you get", this is usually content editor software. Most Wiki editors use Markup languages - meaning if you want to, for example, bold a sentence, you have to manually put some kind of tag - such as *Word* or [b]word[\b].
The benefit of WYSIWYG is that what you write is exactly the same as the finished product and you don't need to mark up your content manually.
The editor that came bundled with Matterwiki has been removed.
The VPIA framework currently uses CKEditor5. It currently has basic formatting support and image support.
Currently the Dataset has been transcribed into Airtable, a visually friendly and simple way of depositing information. The problem is we must be able to add in this content into a software database to pull in content. At the moment, there's no elegant solution to integrating.
The VPIA platform currently uses MySQL. We have implemented Caminte that allows us to switch between regular SQL databases and NoSQL databases.
Search is usually either a file that does database queries to return certain files the user requested or it can be an engine like ElasticSearch. Currently the search is done through simple query search. As we grow with need for advanced search, we must consider either adding an engine or manually modifying the existing code.
A large, customised part of the VPIA will be adding in a Force-directed graph. A force directed graph is a way of drawing graphs in a nice visualization. It will show the connection between the nodes, the researchers, the museums, the tribes and onwards. This does not come bundled with Matterwiki, so this will have to be investigated.
D3.js and Sigma.js are two proposed technologies to use.
We would like to have some kind of way to put up articles and allow people to comment on them. This will most likely be done through a package. We still need to plan out the design of this.
The VPIA-Storage is a separate Node project running as a fileserver. In order for the WYSIWYG editor to upload images, it needs to have access to the VPIA-Storage node server.
User/Internal Documentation: