开源软件名称: xmaysonnave/tiddlywiki-ipfs开源软件地址: https://github.com/xmaysonnave/tiddlywiki-ipfs开源编程语言:
HTML
71.7%
开源软件介绍: IPFS with TiddyWiki
This TiddlyWiki plugin aims to help users, editors and developers to manage their wikis on IPFS .
This plugin provides the following features:
Store TiddlyWiki
's and attachments on IPFS
Access TiddlyWiki
's and attachments from IPFS
Compress TiddlyWiki
's and attachments
Encrypt, Decrypt and Sign TiddlyWiki
's and attachments
Import and Export
Publish and Manage IPNS Keys and IPNS cids
Metamask Ethereum wallets support
Publish to ENS
Share over IPFS TiddlyWiki
's Tiddlers and attachments
According to Wikipedia :
TiddlyWiki is a personal wiki and a non-linear notebook for organising and sharing complex information. It is an open-source single page application wiki in the form of a single HTML file that includes CSS, JavaScript, and the content. It is designed to be easy to customize and re-shape depending on application. It facilitates re-use of content by dividing it into small pieces called Tiddlers.
IPFS with TiddlyWiki
enhances TiddlyWiki as a decentralized application (Đapps) who uses distributed computing systems:
IPFS with TiddlyWiki
has the following ĐApp characteristics:
Open Source
Decentralized
Unhackable
Unstoppable
Using IPFS with TiddlyWiki
Latest IPFS with TiddlyWiki
assets
$:/boot/boot.js
$:/ipfs/documentation
$:/library/ipfs
$:/plugins/ipfs
Latest TiddlyWikis
editions
bluelightav.eth
empty
tidlywiki.com
Release
$:/ipfs/documentation
$:/plugins/ipfs
bluelightav.eth
Recommended Plugins
Getting Started
These instructions will get you a copy of the project up and running on your local machine.
Prerequisites
Users
Getting running IPFS with TiddlyWiki
in your browser
Starting from the file system, Follow the developer instructions Running TiddlyWiki
To resolve .eth domains you need an Ethereum capable browser:
Use Metamask as a browser extension or as an Android mobile application
To update ENS domains you need an Ethereum wallet:
Use Metamask as a browser extension or as an Android mobile application
To run a local IPFS node, you need:
More informations about IPFS:
Remarks:
EthDNS and EthLink are able to resolve bluelightav.eth.link to IPFS.
Run a local IPFS node with IPFS Desktop
According to the ipfs-desktop
README.md , IPFS Desktop allows you to run your IPFS Node on your machine without having to bother with command line tools
.
Use a browser extension with IPFS Companion
According to the ipfs-companion
README.md , This add-on enables everyone to access IPFS resources the way they were meant: from locally running IPFS node :-)
.
Supported ENS Ethereum Networks
Goerli
: Ethereum Test Network (PoA)
Mainnet
: Ethereum Main Network
Rinkeby
: Ethereum Test Network (PoA)
Ropsten
: Ethereum Test Network (PoW)
Developer
Setup a nodejs environment to build tiddlywiki instances bundled with IPFS with TiddlyWiki
.
Environment
Node.js
Resource
jsDelivr, A free CDN for Open Source:
https://www.jsdelivr.com/
Node Documentation:
https://nodejs.org/en/docs/
Npm Repository:
https://www.npmjs.com/
SriHash:
https://www.srihash.org/
Yarn Documentation:
https://classic.yarnpkg.com/en/docs/
Install
On Debian Buster we don't use the default Debian repositories or the Nodesource repositories.
We use nvm .
Setup
Follow the nvm installation and update tutorial :
Current installation and update script:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
or
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
As we are using zsh , here is an excerpt of our .zshrc
# nvm initialization!
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
# place this after nvm initialization!
autoload -U add-zsh-hook
load-nvmrc() {
local node_version="$(nvm version)"
local nvmrc_path="$(nvm_find_nvmrc)"
if [ -n "$nvmrc_path" ]; then
local nvmrc_node_version=$(nvm version "$(cat "${nvmrc_path}")")
if [ "$nvmrc_node_version" = "N/A" ]; then
nvm install
elif [ "$nvmrc_node_version" != "$node_version" ]; then
nvm use
fi
elif [ "$node_version" != "$(nvm version default)" ]; then
echo "Reverting to nvm default version"
nvm use default
fi
}
add-zsh-hook chpwd load-nvmrc
load-nvmrc
Check:
This repository contains a .nvmrc who describes the node version to use.
Install the recommended node
version.
Check:
Install yarn
.
https://classic.yarnpkg.com/en/docs/install/#debian-stable
On Debian setup the yarn
repository:
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
As we are using nvm
, we avoid the node
installation:
sudo apt update
sudo apt install --no-install-recommends yarn
Or Upgrade yarn
.
Check your environment:
Repository install
Clone this repository in a local folder, the following command pulls the main branch:
git clone https://github.com/xmaysonnave/tiddlywiki-ipfs --depth 1
Change directory:
Install dependencies, Node.js should be installed and setup:
Building TiddlyWiki
The repository contains several scripts who build TiddWiki instances bundled with IPFS with TiddlyWiki
.
The package.json references several options:
build
build-bluelightav
build-tiddlywiki-ipfs
download
precommit
prepare
prettier-standard
publisher
semver
snyk-monitor
snyk-protect
test
testc
testw
tiddlywiki-ipfs
updater
uploader
upload-tree
Use the build
script to build IPFS with TiddlyWiki
.
Use the test
script to run the tests.
This project is integrated with Travis CI:
Contributor Covenant Code of Conduct
Please read CODE_OF_CONDUCT.md for details on our code of conduct.
Authors
See also the list of contributors who participated in this project.
License
This project is licensed under the GPL-3.0-or-later - see the LICENSE file for details.
Acknowledgments
Hat tip to anyone who support this project
Inspiration
请发表评论