- Notifications
You must be signed in to change notification settings - Fork90
💡 dokieli is a clientside editor for decentralised article publishing, annotations and social interactions
License
dokieli/dokieli
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
dokieli is a clientside editor for decentralised article publishing, annotations, and social interactions.
It is built with the following principles in mind: freedom of expression, decentralisation, interoperability, and accessibility. There is no root, authority, or centralisation here. Control yourself!
Welcome! Check out the:
dokieli can be used as a:
- single-page application - open any dokieli embedded article
- browser extension - import dokieli from your Web browser's extensions (see alsoinstructions.
Clone your work repository, for example:
git clone git@github.com:YOUR-USERNAME/dokielicd dokieli
Install packages:
yarn
Make your code updates atsrc/
,media/
etc.
Build eg. to createscripts/dokieli.js
:
yarn build
or automatically rebuild when files change:
yarn watch
or create a minifiedscripts/dokieli.js
:
yarn minify
To serve static files, you can use any HTTP server, e.g.:
npx serve
For more details on our development process, including tests and code quality guidelines, see ourContributing Guide
- For brave developers and authors: the canonicaldocumentationexplains dokieli's principles, architectural and design patterns.
- In-browser document authoring and formatting, and semantic enrichments (RDFa annotations).
- Content negotiation is possible for RDFa, Turtle, JSON-LD, RDF/XML.
- Uses author's information from their online profile (WebID).
- Creation of new documents from any existing dokieli document - part ofself-replication.
- Save document and its dependencies to a new location (anywhere on the Web given access) - part ofself-replication.
- Open and edit URLs containing HTML.
- Individually assign the language of articles and annotations and parts within.
- Assignment of URI fragments (to any unit of significance) so that other resources on the Web can link to it.
- Implements versioning and has the notion of immutable resources.
- Embedding data blocks, e.g., Turtle, N-Triples, JSON-LD, TriG (Nanopublications).
- Embedding of media objects, tables, and interactions.
- Graph visualisation of linked data.
- Import GPX and extension data and view tracks on map.
- 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.
- Message log.
- Document metadata.
- Views for screen and print (e.g., ACM, LNCS) - yes, you can output to apaper user interface: PDF
- .. andmany more on the way.
Let's make it so together! You are welcome to createissues,discuss, or pull requests.
- Access request.
- Annotating andsharing.
- Matchingresource's target audience with user's occupations.
- Citations
- Generate and publish web feed.
- Robustify links.
- Sparqlines towards better data journalism.
- Accessiblelink tabbing, hover, and focus.
- Bookmarkcreate andread.
- Open digital rights contrastingstorage description and personal policies,agreements and actions between people.
- Share an article by announcing it toa contact from addressbook andentering a contact directly.
- Specificationrequirements, test coverage, version diff, change log.
- Geo and statistical data importing and viewing.
See the growing list ofexamples in thewild. Addthe URLs of your articles or interactions to the list.
This repository is published and accessible fromhttps://dokie.li/. dokie.li is intended to demo andexemplify what we can do with this technology. You are welcome to use andexperiment with dokieli there, or anywhere else you come across a dokielidocument.
For the scholars among us, see the authoring guidelines below. View theACM SIG Proceedings Paper using theLNCS Author Guidelines (typographical rules), and vice versa (see the menu) ;)
- Information is represented and retrieved following theLinked Data design principles.
- WebID for personal/agent identities.
- WebID-TLS andWebID-OIDC for authentication.
- Web Access Control/ACL to set permissions on Web resources.
- W3CLinked Data Platform andSolid Protocol servers to read and write Web resources.
- W3CLinked Data Notifications for inbox notifications for annotations and social sharing.
- W3CActivityPub client to read/write from/to profile's outbox.
- W3CWeb Annotation Model, W3CWeb Annotation Vocabulary, W3CEmbedding Web Annotations in HTML, and W3CSelectors and States to model and identify annotations (eg. replies, peer-reviews, liking, resharing, bookmarking)
- W3CActivity Streams 2.0 vocabulary for social activities.
- W3CODRL Information Model and W3CODRL Vocabulary & Expression to represent statements about the usage of content and services.
- Memento for resource management eg. TimeMap.
- Creative Commons to assign license to individual contributions and annotations.
- Robust Links for hyperlinks eg. citations, and to show Link Decoration.
- schema.org,SPAR Ontologies,PROV-O, and various other vocabularies.
- NLnet (2024-02–present)
Help the project grow by sponsoring it onOpen Collective or reach out to us.
The following organisations have supported a part of the research and development on dokieli:
- Massachusetts Institute of Technology (2015–2016)
- Qatar Computing Research Institute (2015–2016)
- Deutsche Forschungsgemeinschaft (2016–2017)
- University of Bonn (2017)
- TIB – Leibniz-Informationszentrum Technik und Naturwissenschaften (2017-2019)
We would also like to express our gratitude to the following individuals for their support:
About
💡 dokieli is a clientside editor for decentralised article publishing, annotations and social interactions
Topics
Resources
License
Code of conduct
Security policy
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors10
Uh oh!
There was an error while loading.Please reload this page.