Coder Social home page Coder Social logo

golem-slate's Introduction

golem SLATE

Summary

SLATE is a code pen for writing a requester script to have work computed by the golem network.

SLATE is an SPA that utilizes dockerized yagna environments to communicate with the golem network.

There is no need to setup the yagna daemon, prepare a Python or NodeJS development environment, write a full requester script, or even stay online while the requester is running!

The user only needs to provide 3 things:

  • The hash for the desired gvmkit image
  • A function to enumerate the tasks
  • A function to process each task

The user may upload files for use in the requester script, and the user may download files returned from the golem worker.

Demo Video

Link to the hosted copy shared with a member of the golem comms team

Use

Click the Create a new SLATE button to prepare a new working environment. If there are any slots open you will be taken to a new page. If not, try again later!

The new slate is created with the standard blender example prepared. You can view the code for it in the codepen_import.ts file.

You may create your own script by implementing the CodePenParams class in the same way the blender example has done. You may also upload files into your slate and reference them in your script.

You may need to wait a few seconds for the yagna daemon to initialize. You may view yagna.log in slate to ensure it is running before clicking Run

You may also choose to make no changes, and simply click Run to send the request to the network.

The output area will show the progress of running the request. Any files downloaded from the golem network by your request will be shown in the file list.

Set-Up

Back-end Setup

  • cd into the pens directory
  • Build the docker image:

    docker build -t golem-slate Docker

  • Create 10 pens

    ./create.sh

  • Start 10 pens

    ./start.sh

  • Run the front-end web application

(For more information about the back-end see pens/README.MD)

Front-end Setup

  • from the main directory

npm install
npm run start

open your browser and go to:

http://localhost:3000/

Known Limitations

  • slates are currently not recycled. This means the slots will fill up and need to be manually reset before new ones can be created.
  • the golem Alpha III network only allows requests to run for 30 minutes.

Planned Features

  • Support for Python and JavaScript slates
  • Support for installing extra packages
  • Support for reading & writing files from:
    • HTTPS
    • WebDAV
    • S3
    • IPFS
  • Persistent workspaces

golem-slate's People

Contributors

derekjarvis avatar shumagorath86 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

golem-slate's Issues

Small request: Add Golem topic to repository

Hello!

It would be much appreciated if you could add the topic golem to the repository!
That would mean people could find all the awesome projects by just exploring the topic golem here https://github.com/topics/golem, and hopefully create a little bit more exposure for this awesome project! ❤️

There will be a settings wheel on the right side of the screenshot if you head over to your repository's main page, click that and you should see the option to add a topic.
image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.