Renders echomail messages from Fidonet in IPFS (the Distributed Web).
npm install fidomail2ipfs
This module (fidomail2ipfs) renders echomail messages from Fidonet (generating a HTML5 representation) and saves them in IPFS (InterPlanetary File System, aka the Permanent Web, aka the Distributed Web).
This module is written in JavaScript and requires Node.js to run. It uses the second version of Fidonet HTML engine, and thus a relatively recent Node.js (v6.0.0 or newer) is required.
fido2rss puts URLs in headers of RSS entries
fido2twi posts URLs in microblog entries in Twitter
fidomail2ipfs) mainly depends on the following Node.js modules to perform the necessary steps of its process:
npm install fidomail2ipfs
npm install https://github.com/Mithgol/fidomail2ipfs/tarball/master
README because the package's version is not planned to grow after changes when they happen in README only. (And npm publish --force is forbidden nowadays.)
node-webcrypto-ossl (an optional dependency of JavaScript IPFS API) could not be installed. It happens if you do not have C++ build tools for Windows (or their Linux or macOS counterparts) required to build that dependency on your system, or if such tools are incomplete or outdated.
(err, URL) that receives the URL of an IPFS-stored HTML5 page. That URL starts with the gateway's address https://ipfs.io/
server — the address of the IPFS server that is used to publish the message. This property is optional; if it is missing, 'localhost' is used by default.
port — the port of the IPFS server that is used to publish the message. This property is optional; if it is missing, '5001' is used by default.
messageText — the Fidonet message's text. That text is expected to be given in a JavaScript string (a Unicode string, not a binary) and with LF line endings ('\n', i.e. hexadecimal 0A). This property is optional; if it is missing, '' is used by default. (However, that default value is not very useful.)
twitterUser — a username of a Twitter's user that the message should be attributed to. (By default, false.) If some username is given, a Summary Card with Large Image will be generated for future references and stored in HTML5 representation's , but only if an image for that card can be found in the Fidonet message's text. Notes:
avatarWidth, avatarURL, from, to, origAddr, origTime, procTime, subj, URL). However, the EFGH's messageHTML is not expected because it is generated from the aforementioned messageText.
procTime (leave it undefined) if you prefer the headers of the same Fidonet message to be exactly the same on different Fidonet systems (i.e. to not depend on the processing's time). It helps to prevent redundant copies of the message in the global content-addressable storage of IPFS.
npm install jshint -g) or locally (npm install jshint in the directory of fidomail2ipfs).
npm test (in the directory of fidomail2ipfs). Only the JS code errors are caught; the code's behaviour is not tested.
LICENSE file).
bootstrap contains Bootstrap version 3.3.7 (customized to not contain Glyphicons) under its own MIT license.