There is no root, authority, or centralisation here. Control yourself!
dokieli is a decentralised article authoring, annotation, and social notification tool which works from Web browsers. It is built with the following principles in mind: freedom of expression, decentralisation, interoperability.
It can be used as a:
- single-page application - open any dokieli article
- browser extension - import this repository in your Web browser or install Web Extension from Add-ons for Firefox or Chrome Web Store
- For brave developers and authors: the canonical documentation explains dokieli's principles, architectural and design patterns.
- For academics: Decentralised Authoring, Annotations and Notifications for a Read-Write-Web with dokieli
- In-browser document authoring and formatting, and semantic enrichments (RDFa annotations)
- Content negotiation is possible for RDFa, Turtle, JSON-LD, RDF/XML.
- Information is represented and retrieved following the Linked Data design principles
- Employs WebID, WebID+TLS, Web Access Control/ACL and personal online datastore where applicable (compliant with Linked Data Platform and Solid servers)
- Uses author's information from their online profile (WebID)
- Creation of new documents from any existing dokieli document - part of self-replication
- Save document and its dependencies to a new location (anywhere on the Web given access) - part of self-replication
- Open and edit (HTML+RDFa) URLs
- Uses W3C Web Annotation Model and Activity Streams 2.0 vocabulary
- Annotations (e.g., replies, peer-reviews, liking, resharing, bookmarking)
- Inbox notifications for annotations and social sharing (implements W3C Linked Data Notifications)
- Assign license (e.g., Creative Commons) to the contributions/annotations
- Uses schema.org, SPAR Ontologies, PROV-O
- Assignment of URI fragments (to whatever is of interest) so that other resources on the Web can reference
- Embedding data blocks, e.g., Turtle, N-Triples, JSON-LD, TriG (Nanopublications)
- Embedding of media objects, tables, and interactions
- Automated references and citations (retrieves and reuses structured information)
- Insertion of table of contents, figures, tables, abbreviations
- Drag and drop to reorganize the document's sections and table of contents
- In-browser local storage, and document exporting
- Document metadata
- Views for screen and print (e.g., ACM, LNCS) - yes, you can output to a paper user interface: PDF
- .. and many more on the way
"Yea, okay, whatever, it doesn't do x, y, z!" You are welcome to create issues, discuss, or pull requests. Make it so!
Also available on https://dokie.li/ (with captions):
- Overview: http://dokie.li/media/video/dokieli.webm (a little old, see shorter/newer Annotation below)
- Annotation: http://dokie.li/media/video/dokieli-annotation.webm
- Share: http://dokie.li/media/video/dokieli-share.webm
- Citation: http://dokie.li/media/video/dokieli-citation.webm
- Sparqlines: http://dokie.li/media/video/dokieli.webm (see also article)
See the growing list of examples in the wild. Add the URLs of your articles or interactions to the list.
This repository is published and accessible from https://dokie.li/. dokie.li is intended to demo and exemplify what we can do with this technology. You are welcome to use and experiment with dokieli there, or anywhere else you come across a dokieli document.
For the scholars among us, see the authoring guidelines below. View the ACM guidelines using the LNCS typographical rules, and vice versa (see the menu) ;)
- Read: client either loads local HTML files or fetches remote URLs, in that case the host sends HTML etc. All content is accessible at minimum from a text-browser
- Local write: Web browser with JavaScript enabled (use export or local storage)
- Remote write and access control: above plus WebID and personal online storage
These libraries optional when dokieli is used as single-page application:
- SimpleRDF (MIT License) used for RDF
- Font Awesome (SIL OFL 1.1 / MIT License)
- MediumEditor (MIT License)
- Sarven Capadisli
- Amy Guy
- Chris Chapman
- Renato Stauffer
- Kingsley Idehen (and OpenLink Software)
- Ruben Taelman
- Nicola Greco
- Tim Berners-Lee
- Melvin Carvalho
- Andrei Vlad Sambra
- Dmitri Zagidulin
- Sandro Hawke
- Amy van der Hiel
- Henry Story
- Benjamin Young
- Gerben Treora
- Use it. Break it. Report it. Fix it! See issues.
- Improve documentation (for the website or repository)
- Publish articles with it.
- Join the dokieli chat for help and discussion.
- Encourage the ideas/movement and however else you want to contribute.