2018-04-11 12:29:26 +02:00

padArchiver Go Report Card

Tool to store pads (from url) into local directory and IPFS.

The tool is composed by different tools around the library:

  • webServer
  • listPadsImporter
  • apiServer
  • cli

All the necessary files are in the /build directory. Can be build using the 'bash build.sh' script.

1.- webServer

This is a webserver that automatically generates a web from the pads directories and files stored. To run, inside 'build' directory:

./webServer

padArchiver-webServer

The html template can be easily changed.

2.- listPadsImporter

This is to import all pads from the json file 'list.json'. Just need to edit the json file, for example:

{
  "repoid": "repo01",
  "pads": [
    {
      "link": "http://board.net/p/pad1",
      "dir": "Group1",
      "title": "Pad1"
    },
    {
      "link": "http://board.net/p/pad2",
      "dir": "Group1",
      "title": "Pad2"
    },
    {
      "link": "http://board.net/p/pad3",
      "dir": "Group2",
      "title": "Pad3"
    }
  ]
}

To run, inside 'build' directory:

./importFromList

3.- apiServer

This is an API to run in localhost.

Run

To run using the compiled binary:

  • The Git repo needs to be initialized, and with the remote already configured.
  • The IPFS daemon needs to be running:
> ipfs daemon
  • Edit the file config.json to configure the desired port:
{
  "port": "3080"
}
  • Execute the API server, inside the directory 'build':
> ./padArchiver-APIserver

API Routes

- GET /repos

this returns:

[
  'repo01',
  'repo02'
]
- GET /repos/{repoid}

this returns:

[
  'repo01',
  'repo01/Group1',
  'repo01/Group1/Pad1.md',
  'repo01/Group2',
  'repo01/Group2/Pad2.md',
  'repo01/Group2/Pad3.md',
  'repo02/GroupA/Pad1.md'
]
- POST /repos/{repoid}/pad

data to send:

json: {
  "link": "http://board.net/p/pad1",
  "dir": "Group1",
  "title": "Pad1"
}

this returns:

{
  "link": "http://board.net/p/pad1",
  "dir": "Group1",
  "title": "Pad1",
  "ipfsHash": "QmVyp4JSREK5syLmNRCafkZkhzC7CfvS9qYWKfvfffqK2B"
}

The IPFS hash is also added to the first line of the document, before adding the document to Git.

4.- cli

To run the CLI, just need to run inside the directory 'build':

./padArchiver-cli

And follow the instructions.

padArchiver-cli

Description
No description provided
Readme GPL-3.0 19 MiB
Languages
Go 63%
HTML 30.1%
Python 5%
Shell 1.9%