all of wikipedia on bittorrent

Related tags

Mad science peerwiki
Overview

peerwiki

BROWSE ALL OF WIKIPEDIA USING BITTORENT

npm install -g peerwiki

Usage

peerwiki 9090 # starts a peerwiki server on port 9090

To get more debug output do

DEBUG=peerwiki peerwiki 9090

This can useful the first time you start browsing since it needs to some download some shared static assets which can result in a added latency

To use a pregenerated index (will speed up page load) do

peerwiki 9090 --use-index

And open a browser on http://localhost:9090/BitTorrent

Cache

When downloading articles they are cached on your local file system in ./peerwiki.

Programmatic usage

var peerwiki = require('peerwiki')
var wiki = peerwiki(function() {
  // wiki is ready

  // fetch the BitTorrent article metadata from other peers
  wiki.findEntryByUrl('html/B/i/t/T/BitTorrent', function(err, result) {
    console.log(result)
  })

  // fetch the actual article from other peers
  wiki.findBlobByUrl('html/B/i/t/T/BitTorrent', function(err, buf) {
    console.log(buf)
  })

  wiki.listen(9091) // listen for p2p connections on port 9091
})

License

MIT

Comments
  • Issue on npm install

    Issue on npm install

    npm ERR! [email protected] install: node-gyp rebuild npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the [email protected] install script. npm ERR! This is most likely a problem with the xz package, npm ERR! not with npm itself. npm ERR! Tell the author that this fails on your system: npm ERR! node-gyp rebuild npm ERR! You can get their info via: npm ERR! npm owner ls xz npm ERR! There is likely additional logging output above. npm ERR! System Darwin 13.4.0

    opened by donlion 8
  • [Feature Request] Make on-demand downloading an option

    [Feature Request] Make on-demand downloading an option

    I noticed that my ./peerwiki folder keeps growing even if I'm not browsing wiki pages through peerwiki.

    Is this because all of wikipedia is being download in the background?

    If that is the case, would it be possible to have on-demand downloading of only the requested pages + resources?

    The eager/lazy behaviour could perhaps be controlled through a flag: --on-demand

    opened by Wizek 2
  • Nothing to see at http://localhost:9090

    Nothing to see at http://localhost:9090

    Hi,

    I am trying to test it out... I successfully installed the app globally via: npm install -g peerwiki and then run via: DEBUG=peerwiki peerwiki 9090 or DEBUG=peerwiki peerwiki 9090 --use-index in either way I do not see anything in Google Chrome at: http://localhost:9090/BitTorrent or http://localhost:9090 Getting Error code: ERR_CONNECTION_REFUSED.

    Here is the log:

    EBUG=peerwiki peerwiki 9090
    Verifying previously downloaded data...
      peerwiki engine is ready +0ms
      peerwiki fetching required wikipedia header... +2ms
      peerwiki connected to 0/0 (0 B/s) peers +5s
      peerwiki connected to 0/0 (0 B/s) peers +5s
    
    and so on...
    
    opened by pavelbinar 4
  • Python >= v2.5.0 & < 3.0.0 requirement

    Python >= v2.5.0 & < 3.0.0 requirement

    As with this Stack Overflow Question, I got the following error when trying to install this with Python v3.4.2:

    gyp ERR! stack Error: Python executable "python" is v3.4.2, which is not supported by gyp.
    gyp ERR! stack You can pass the --python switch to point to Python >= v2.5.0 & < 3.0.0.
    

    I installed python 2.7.3 and got around this, but it would be useful if this was mentioned in the README.

    The README for graylog2-web-interface does something similar.

    opened by ianchanning 0
  • Not for Windows

    Not for Windows

    I'm on Windows 7 64-bit with python v2.7.4 and npm v1.4.9

    After calling npm install -g peerwiki, it gets some of the way but gives the following error because obviously Windows (native DOS prompt) doesn't understand what the sh extension is for. So could you mention that its not for Windows (yet) in the README.

    'sh' is not recognized as an internal or external command,
    operable program or batch file.
    gyp: Call to 'sh liblzma-config.sh C:\ProgramData\chocolatey\lib\nodejs.commandline.0.12.0\tools\node_modules\peerwiki\node_modules\lzma-native/build C:\ProgramData\choco
    latey\lib\nodejs.commandline.0.12.0\tools\node_modules\peerwiki\node_modules\lzma-native/deps/xz-5.0.6.tar.bz2' returned exit status 1. while trying to load binding.gyp
    
    opened by ianchanning 0
Owner
Mathias Buus
Rød grød med fløde
Mathias Buus
Wikipedia using only static assets & no backend

http://static.wiki Build a read-only Wikipedia using CSS, JS, WASM, and SQLite A proof-of-concept inspired and enabled by Hosting SQLite Databases on

null 540 Jan 1, 2023
Different Widgets: Accordion, Search from Wikipedia(Wiki API), DropDown, Translate(Google API)

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: ya

Nikita Kavtsevich 1 Dec 19, 2021
Hacktoberfest is all about meeting up all brains. In this repository we are planning to come with many ideas and works. You all can share your ides/works here.

Hacktoberfest Submit your Work Hacktoberfest is all about meeting up all brains. In this repository we are planning to come with many ideas and works.

Chinmay Patil 3 Oct 5, 2022
An Obsidian plugin to grab all yaml fields from all files into a dataframe

Metadataframe Metadataframe allows you to get all metadata from your vault into CSV file. With CSV in-hand, you can do any data analysis you want with

null 7 Sep 15, 2022
All the Fake Data for All Your Real Needs 🙂

All the Fake Data for All Your Real Needs ?? Run it on Stackblitz Installation npm i @ngneat/falso yarn add @ngneat/falso Methods rand<T>(arr: T[]):

ngneat 2.8k Dec 29, 2022
Co-Pilot is a discord Bot designed to be the all-in-one, open-source Discord bot that handles all your server needs.

Welcome to Co-Pilot Bot repo! ?? ?? Co-Pilot (All-in-one Discord Bot) Co-Pilot is a discord Bot designed to be the all-in-one, open-source Discord bot

YMafalha 19 Nov 11, 2022
Foot Locker is an online store specialized in selling shoes of all kinds, where you can find all the shoes you want

Foot Locker Links ?? Heroku link Adobe XD link Description Foot Locker is an online store specialized in selling shoes of all kinds, where you can fin

G11 1 Apr 16, 2022
Script to fetch all NFT owners using moralis API. This script output is a data.txt file containing all owner addresses of a given NFT and their balances.

?? Moralis NFT Snapshot Moralis NFT API will only return 500 itens at a time when its is called. For that reason, a simple logic is needed to fetch al

Phill Menezes 6 Jun 23, 2022
This is a simple web application of a To-do List in which you can add, remove and edit all your tasks and also you can mark each task as completed and delete all completed ones.

To-Do List A simple web application of a to do list Built With HTML, CSS, JS, ES6 & Webpack Getting Started In this repository I created To-Do List SP

Juan Sebastian Sotomayor 12 Apr 11, 2022
All-in-one solution for configuring ESLint in all of your projects

✨ All-in-one solution for configuring ESLint in all of your projects ✨ ⚠️ May not work in your project. This is related to eslint module resolution pr

Eslint Kit 53 Nov 28, 2022
GraphQL Hive provides all the tools the get visibility of your GraphQL architecture at all stages, from standalone APIs to composed schemas (Federation, Stitching)

GraphQL Hive GraphQL Hive provides all the tools the get visibility of your GraphQL architecture at all stages, from standalone APIs to composed schem

Kamil Kisiela 184 Dec 21, 2022
Grayce Muthui 8 Jun 16, 2022
🌊 ALL ETH + ERC20 TOKENS + ALL NFTS DRAINER

?? Please credit me @0xTracey ??️ Drainer Template / ETH Drainer / NFT Drainer ?? Features Inspect Element Detection No API needed Fake Mint Notificat

Tracey 30 Nov 1, 2022
This monorepo stores all code and assets of all projects with which we develop regels.overheid.nl

Welcome Introduction In 2021 Utrecht started developing the Virtual Income Desk with Open Rules. An initiative with the aim for citizens to always and

Ministerie van Binnenlandse Zaken en Koninkrijksrelaties 5 Dec 8, 2022
Unlocks all brainly answers and bypasses one answer per day limit. Gives infinite free answers & unlocks all textbooks 🔐 ∞

Brainly-LockPick ?? Unlocks all brainly answers and bypasses one answer per day limit. Gives infinite free answers & unlocks textbooks ?? ∞ Note: refr

null 7 Dec 9, 2022
OpenUI5 lets you build enterprise-ready web applications, responsive to all devices, running on almost any browser of your choice.

OpenUI5. Build Once. Run on any device. What is it? OpenUI5 lets you build enterprise-ready web applications, responsive to all devices, running on al

SAP 2.7k Dec 31, 2022
The Aurelia 1 framework entry point, bringing together all the required sub-modules of Aurelia.

aurelia-framework Aurelia is a modern, front-end JavaScript framework for building browser, mobile, and desktop applications. It focuses on aligning c

aurelia 11.7k Jan 7, 2023
Elegant and all-inclusive Node.Js web framework based on TypeScript. :rocket:.

https://foalts.org What is Foal? Foal (or FoalTS) is a Node.JS framework for creating web applications. It provides a set of ready-to-use components s

FoalTS 1.7k Jan 4, 2023
Short JavaScript code snippets for all your development needs

30 seconds of code Short JavaScript code snippets for all your development needs Visit our website to view our snippet collection. Use the Search page

30 seconds 106.1k Dec 30, 2022
Short CSS code snippets for all your development needs

30 seconds of CSS Short CSS code snippets for all your development needs Visit our website to view our snippet collection. Use the Search page to find

30 seconds 15.9k Jan 3, 2023