An image hosting service on top of the LBRY protocol.
Find a file
2017-10-20 16:16:08 -07:00
auth updated post api to receive curl requests 2017-10-05 14:48:08 -07:00
config added check for slack env vars 2017-09-25 08:49:28 -07:00
controllers fixed substring issue and added no claim/no channel pages 2017-10-18 11:16:07 -07:00
helpers removed default description on publish and show 2017-10-20 16:16:08 -07:00
migrations updated models 2017-09-25 20:30:45 -07:00
models fixed substring issue and added no claim/no channel pages 2017-10-18 11:16:07 -07:00
passport added verbose logging 2017-10-17 12:05:22 -07:00
public updated logo and top bar 2017-10-20 16:08:08 -07:00
routes fixed substring issue and added no claim/no channel pages 2017-10-18 11:16:07 -07:00
views removed default description on publish and show 2017-10-20 16:16:08 -07:00
.eslintignore Edited code to be ES6, added eslint and some basic linting configuration 2017-06-17 22:51:30 +02:00
.eslintrc Semicolon rule added 2017-06-19 18:37:35 +02:00
.gitignore DRY input validations 2017-09-19 12:54:23 -07:00
package-lock.json Edited code to be ES6, added eslint and some basic linting configuration 2017-06-17 22:51:30 +02:00
package.json updated post api to receive curl requests 2017-10-05 14:48:08 -07:00
README.md added input for video thumbnail link 2017-10-09 18:29:40 -07:00
speech.js set resave and saveUninitialized in express session 2017-10-18 10:46:06 -07:00

spee.ch

spee.ch is a single-serving site that reads and publishes images and videos to and from the LBRY blockchain.

how to run this repository locally

  • start mysql
    • install mysql
    • create a database called lbry
    • save your connection username and password someplace handy
  • start lbrynet daemon
    • install the lbry daemon
    • start the lbry daemon
  • start spee.ch-sync
  • start spee.ch
    • clone this repo
    • run npm install
    • to start the server, from your command line run node speech.js while passing three environmental variables:
      • (1) your lbry wallet address (LBRY_CLAIM_ADDRESS),
      • (2) your mysql username (MYSQL_USERNAME),
      • (2) your mysql password (MYSQL_PASSWORD),
      • (3) the environment to run (NODE_ENV).
      • i.e. LBRY_CLAIM_ADDRESS=<your wallet address here> MYSQL_USERNAME=<username here> MYSQL_PASSWORD=<password here> NODE_ENV=development node speech.js
      • e.g. LBRY_CLAIM_ADDRESS=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX MYSQL_USERNAME="lbry" MYSQL_PASSWORD="xxxxxx" NODE_ENV=development node speech.js
      • To run hot, use nodemon instead of node
  • visit localhost:3000

API

GET

  • /api/resolve/:name
    • example: curl https://spee.ch/api/resolve/doitlive
  • /api/claim_list/:name
    • example: curl https://spee.ch/api/claim_list/doitlive
  • /api/isClaimAvailable/:name (returns true/false for whether a name is available through spee.ch)
    • example: curl https://spee.ch/api/isClaimAvailable/doitlive

POST

  • /api/publish
    • example: curl -X POST -F 'name=MyPictureName' -F 'nsfw=false' -F 'file=@/path/to/my/picture.jpeg' https://spee.ch/api/publish
    • Parameters:
      • name (string)
      • nsfw (boolean)
      • file (.mp4, .jpeg, .jpg, .gif, or .png)
      • license (string, optional)
      • title (string, optional)
      • description (string, optional)
      • thumbnail (string, optional) (for .mp4 uploads only)
      • channelName(string, optional)
      • channelPassword (string, optional)

bugs

If you find a bug or experience a problem, please report your issue here on github and find us in the lbry slack!