An image hosting service on top of the LBRY protocol.
auth | ||
build | ||
config | ||
constants | ||
controllers | ||
helpers | ||
migrations | ||
models | ||
passport | ||
public | ||
react | ||
routes | ||
task-scripts | ||
test | ||
views | ||
.eslintignore | ||
.eslintrc | ||
.gitignore | ||
.sequelizerc | ||
index.js | ||
LICENSE | ||
package-lock.json | ||
package.json | ||
README.md | ||
webpack.config.js |
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
andpassword
someplace handy
- start lbrynet daemon
- install the
lbry
daemon - start the
lbry
daemon
- install the
- start spee.ch-sync
- install and run this
speech-sync
tool
- install and run this
- start spee.ch
- clone this repo
- run
npm install
- create your
speechConfig.js
file- copy
speechConfig.js.example
and name itspeechConfig.js
- replace the
null
values in the config file with the appropriate values for your environement
- copy
- to start the server, from your command line run
node serverindex.js
- To run hot, use
nodemon
instead ofnode
- To run hot, use
- visit localhost:3000
Tests
- Spee.ch uses
mocha
withchai
for testing. - To run all tests that do not require LBC, run
npm test -- --grep @usesLbc --invert
- To run all tests, including those that require LBC (like publishing), simply run
npm test
API
GET
- /api/claim/resolve/:name/:claimId
- example:
curl https://spee.ch/api/claim/resolve/doitlive/xyz
- example:
- /api/claim/list/:name
- example:
curl https://spee.ch/api/claim/list/doitlive
- example:
- /api/claim/availability/:name (
- returns
true
/false
for whether a name is available through spee.ch- example:
curl https://spee.ch/api/claim/availability/doitlive
- example:
- returns
- /api/channel/availability/:name (
- returns
true
/false
for whether a channel is available through spee.ch * example:curl https://spee.ch/api/channel/availability/@CoolChannel
- returns
POST
- /api/claim/publish
- example:
curl -X POST -F 'name=MyPictureName' -F 'file=@/path/to/myPicture.jpeg' https://spee.ch/api/claim/publish
- Parameters:
name
file
(must be type .mp4, .jpeg, .jpg, .gif, or .png)nsfw
(optional)license
(optional)title
(optional)description
(optional)thumbnail
url to thumbnail image, for .mp4 uploads only (optional)channelName
(optional)channelPassword
(optional,; required ifchannelName
is provided)
- example:
bugs
If you find a bug or experience a problem, please report your issue here on github and find us in the lbry discord!