Solutions

What solutions NextGraph offers to end-users and developers

NextGraph is data/content centric

NextGraph is an ecosystem that offers as primary feature: create documents that can be edited concurrently and shared among groups of users. The documents are rich-text documents, or plaintext, or structured data (JSON/RDF) that can be linked between each other thanks to the semantic web technology. They can then be queries with the SPARQL language, signed, and organized into containers and sites.

This data/content layer can serve as database for any higher level application.

At first, we will provide end-users with the ability to collaborate live/real-time on rich-text documents.

Then we will develop more applications, with the help of the open source community, that will be based on NextGraph ecosystem.

One particular application that could be easily developed would be similar to LogSeq / AthensResearch / RoamResearch “A note-taking tool for networked thought”.

Then we envision the development of all necessary apps to replace the centralized or federated cloud services we all use today. Here is a list of what is waiting for us. Long-term goals include developing or integrating wikis, knowledge bases, search engines, groupware, productivity tools, supply chain solutions, marketplaces and e-commerce solutions, social networks and DAOs.

The list of features described here form a long term goal. Not all features can possibly be delivered in the near future. But we do aim at providing a strong set of basic features and opening the ecosystem to the developer community that will help us achieve this vision and features list.

Transversal features

Chat

one-to-one chat, group chat, bot chat (REPL) . The chat feature is the same as the one for comments. Presence. Gateway to emails and other chat protocols (XMPP, matrix, Signal).

Like, Comment, Share

on any type of content

Video and audio call

one-to-one, conference call, screencast, remote slides

Live audio and video

broadcast

Translation

and spellchecking.

There are currently no open source software capable of providing translation in many languages as google translate does. This is out of scope of this project, but still remains a high priority.

Search & Discovery

decentralised search & discovery

  • search content in overlays
  • discover content globally based on interest or search queries

General features

  • live collaboration (rich text & canvas)
  • CRDTs
  • semantic web data (RDF/SPARQL)
  • history, undo, revisions, and diff
  • local first
  • offline first
  • E2EE
  • automatic replication between devices, if desired
  • mobile first interfaces
  • end-user programming
    • user-defined views based on queries
    • hooks for update operations to perform tasks, defined using visual programming
  • box : small device installed at home behind router, stores data of user.
  • two-tier P2P network: store&forward brokers, edge nodes. global overlay for topic searches; direct connections on local networks
  • each groups have their sub-overlay network
  • 4P: 4 levels of data access: Public, Protected, Private (only for me and my devices), and grouP.
  • capability-based access control
  • pub/sub: subscribe to channels/content/people
  • static generation and publishing of content on some website based on the content of a container
  • framework for app developers
  • services (RPC, REST, SPARQL, GraphQL, LDP) to access data and business logic
  • frontend in webbrowser (SPA), mobile (cordoba), and desktop (electron)
  • offers a no-javascript version of the content
  • backward-compatibility with web 2.0 (gateways, URL-based RDF, server side rendering and static html hosted on domain)

Domain specific applications

provide some reusable apps, models, ontologies, view components for :

  • e-commerce and marketplace management
  • ERP, productivity and supply chain solutions
  • social networks
  • democratic decision making, DAO, consensus

Content types we will support

Rich text documents / notes

can contain:

  • formatting: bold, italic, headings, underline, strikethrough, sub, links, lists, tables with merge cells, tasks lists, blockquote, inline code, divider, span highlight, notice box (codimd calls them containers), code block with syntax highlighting, emoji, icons, text color
  • mentions (people, hashtag)
  • likes, backlinks
  • footnotes. see markdown-footnote
  • abbreviations
  • definition list
  • annotations / comments (uses the chat feature)
  • transclusion (embed another document)
  • images, including with custom sizes
  • math formulas | how it is done in matrix
  • argdown
  • video / audio embeds
  • vectorial embeds
  • map embeds
  • chart embeds
  • custom component embeds
  • semantic data within the text (similar to RDFa)
  • live data/properties of semantic objects, bound to some placeholders (template, interpolation a-la react/vue)
  • semantic relations between documents and within document to indicate meaning.

Contacts

contact information about the people and groups I interact with. > connects with the Chat, Audio/video call features.

Agenda & events

calendar, keep track of my events, appointments, meetings, dates, and create events that i can share (mobilizon)

Meeting scheduler

find the date for the next meeting (doodle)

Polls and votes

ask some questions and get answers with multiple choices

Forms

enter and modify arbitrary form and semantic data (react admin, rdf-form, solid forms)

Tasks & kanban

organise my cards of todos, tasks, in a kanban mode. Team work organisation.

Whiteboard & infinite canvas

  • vectorial draw, sketch, graphs, arrange any type of content into the canvas
  • PinBoards (cards on a canvas)

Diagrams, Charts

d3, bind it to some data. draw SVG. UML…

Spreadsheet

calc/excel …

Slides

for presentations

Math formulas

Code

write code with syntax highlight, and run the code in the browser? (Codemirror, Atom, Monaco)

PDF & books

view PDF & ebooks, generate PDF from document

Maps

leaflet maps

Images

view and edit images (crop, draw, filter, rotate). galleries, carousel/slideshow

Video and audio

create, keep and watch videos and audios (peertube)

Attachments

files to upload and download

to webpages and documents/content, with link preview/snapshot (oembed/iframely). keep a webpage’s archive. gateways to web 2.0 content: youtube-dl, yewtu.be, nitter… see here for a list

Semantic visual maps and graphs

visualise the semantic data. mindmap

Containers

organise my content into spaces, blog, containers, collections, trees, TOC, wiki, forum (Discourse), PinBoards (cards on a canvas), kanban

Share: