You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

2.6 KiB

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