~pukkamustard/eris

1

ERIStekt - a browser extension

Details
Message ID
<865y6mkwp4.fsf@posteo.net>
DKIM signature
missing
Download raw message
Dear followers of ERIS,

I'm happy to announce an initial version 0.1.0 of ERIStekt, a browser
extension for encoding and decoding ERIS content.

The source code is available on Codeberg:

https://codeberg.org/eris/eristekt

The extension can be added to your Firefox-based browser from the
official Mozilla store:

https://addons.mozilla.org/en-US/firefox/addon/eristekt/

Currently ERIStekt supports:

- Encoding a file with ERIS.
- Storing encoded blocks in a local IndexedDB database.
- Decode ERIS content using blocks in the local database.

Content can be decoded by simply entering the ERIS URN in the address
bar. This works by installing a custom protocol handler. The browser
automatically attempts to detect the mime-type of the decoded content
and will mostly do the right thing (e.g. decoded PDFs will be
displayed).

The goal of ERIStekt is to make ERIS URNs that appear on existing web
content and in web applications, just work.

ERIStekt was developed in lieu of developing a Javascript implementation
of ERIS that can be used by NPM developers. Such a library would need to
be properly integrated into existing Javascript applications. By
developing a browser extension we hope to forgoe this: Existing web
applications can transparently decode ERIS encoded content.

Currently there are some major limitations:

- Only content that was encoded in the same browser can be decoded as
  there is no transfer protocol. This will be fixed by adding support
  for CoAP over Websockets.

- Only ERIS URNs entered in the address bar are decoded. It would also
  be possible to proxy the Fetch API to support dereferencing ERIS URNs
  as well as dereferencing media content with an ERIS URN `src`.

Still, please give it a try and let me know what you think. I'm grateful
for feedback and ideas.

Some areas where input and help is especially appreciated:

- How to make the UI more accessible and approachable?
- Implementation of ERIS CoAP protocol over WebSockets (in your existing
  ERIS implementation).
- Ideas on how WebRTC could be used.
- Experience with the Javascript Streams API (see
  https://codeberg.org/eris/eristekt/issues/1)

Stay tuned for blocks over WebSockets!

Thanks to NLnet for supporting this work via the NGI Assure Fund.

-pukkamustard
Details
Message ID
<86mszha97i.fsf@posteo.net>
In-Reply-To
<865y6mkwp4.fsf@posteo.net> (view parent)
DKIM signature
missing
Download raw message
Hello,

I'm very happy to announce the release of version 0.2.0 of ERIStekt - a
Firefox extension for working with ERIS. This version includes support
for an initial peer protocol. Blocks can be transported from remote
peers using the ERIS CoAP protocol over WebSockets.

The extension is available for installation from Codeberg:

https://codeberg.org/eris/eristekt/releases/tag/v0.2.0

Note that ERIStekt is no longer available on the Mozilla store (we can
publish updates quicker and Mozilla is a bit skeptical about our build
system). The extension is still signed by Mozilla.

The source code is available on Codeberg:

https://codeberg.org/eris/eristekt

Currently an unreleased version of Oebstly
(https://codeberg.org/eris/oebstly) supports the CoAP protocol over
WebSockets. I am running an instance for demonstration purposes that can
be accessed at following URL:

coap+ws://inqlab.net:8683/.well-known/eris

or via Yggdrasil (preferred):

coap+ws://qfwfq.inqlab.net:8683/.well-known/eris 

You can add the peer from the ERIStekt options page.

After adding the peer you can decode ERIS encoded content with blocks
from inqlab.net. For example try entering following URNs in the address
bar:

urn:eris:B4A77FN5YXYZUVR3MXYNR6AAHLQII3MKZMEX6QEWTHMG6CD4T2EQVVGJ47VDRALFZYAMZQH7H7AUSTP22ISZTOEUWGF6KD6EXNCPQ5I74E
urn:eris:B4A6WPZBEQGB2WFSKGHZW3YRCA6OZQYIVZHW7DC237ZMVNMBW47GFFK3N7IKUULWB6KQ4DMSIGA4RHIWBRGPZOXECI42L2CNLFNFD5AE5A
urn:eris:B4A4JMBOIMHNRYBZJ6OKFUQSS4S57J42EVEEM3O5TAYKU3QPMW6O5C3JBO7MZBJTZNFEPJASRRY7APN4SLV647VGJD4ID4ZWEUJBJGSFVQ
urn:eris:B4AUR7Z52MZ4NDKG5YK7HI2MBAPFQHD5J5OM7OXHJRC5TFYEMMOK325XID5MWU6C6QQIEAO5ZQUYEWGIM3E6URIWH6TZVSTINXZRNFJ7AM

A proper release of Oebstly with WebSockets support will follow. Work
towards supporting WebSockets over CoAP from eris-go is also in-progress
(https://codeberg.org/eris/eris-go/src/branch/websockets).

Happy hacking,
pukkamustard


pukkamustard <pukkamustard@posteo.net> writes:

> Dear followers of ERIS,
>
> I'm happy to announce an initial version 0.1.0 of ERIStekt, a browser
> extension for encoding and decoding ERIS content.
>
> The source code is available on Codeberg:
>
> https://codeberg.org/eris/eristekt
>
> The extension can be added to your Firefox-based browser from the
> official Mozilla store:
>
> https://addons.mozilla.org/en-US/firefox/addon/eristekt/
>
> Currently ERIStekt supports:
>
> - Encoding a file with ERIS.
> - Storing encoded blocks in a local IndexedDB database.
> - Decode ERIS content using blocks in the local database.
>
> Content can be decoded by simply entering the ERIS URN in the address
> bar. This works by installing a custom protocol handler. The browser
> automatically attempts to detect the mime-type of the decoded content
> and will mostly do the right thing (e.g. decoded PDFs will be
> displayed).
>
> The goal of ERIStekt is to make ERIS URNs that appear on existing web
> content and in web applications, just work.
>
> ERIStekt was developed in lieu of developing a Javascript implementation
> of ERIS that can be used by NPM developers. Such a library would need to
> be properly integrated into existing Javascript applications. By
> developing a browser extension we hope to forgoe this: Existing web
> applications can transparently decode ERIS encoded content.
>
> Currently there are some major limitations:
>
> - Only content that was encoded in the same browser can be decoded as
>   there is no transfer protocol. This will be fixed by adding support
>   for CoAP over Websockets.
>
> - Only ERIS URNs entered in the address bar are decoded. It would also
>   be possible to proxy the Fetch API to support dereferencing ERIS URNs
>   as well as dereferencing media content with an ERIS URN `src`.
>
> Still, please give it a try and let me know what you think. I'm grateful
> for feedback and ideas.
>
> Some areas where input and help is especially appreciated:
>
> - How to make the UI more accessible and approachable?
> - Implementation of ERIS CoAP protocol over WebSockets (in your existing
>   ERIS implementation).
> - Ideas on how WebRTC could be used.
> - Experience with the Javascript Streams API (see
>   https://codeberg.org/eris/eristekt/issues/1)
>
> Stay tuned for blocks over WebSockets!
>
> Thanks to NLnet for supporting this work via the NGI Assure Fund.
>
> -pukkamustard
Reply to thread Export thread (mbox)