Awesome Golem
      
      
    
    
      
    
    
      
        Welcome to Awesome Golem, a community-curated list of
        resources, links, projects, tools and applications on Golem!
      
    
    
      The users of Golem run the reference implementation in the form of the
      Rust implementation, Yagna. Together the users make up the Golem Network,
      a P2P marketplace for computational resources where individuals can act as
      one of the two non-exclusive roles; a provider selling idle resources, or
      a requestor buying resources to run tasks.
    
    Contents
    
    Golem
    
      - 
        Golem Network Platform
        - Learn the Golem platform on the official Golem Network website.
      
 
      - 
        Golem Factory GitHub -
        Where you can find the open source code of all things Golem.
      
 
      - 
        Yagna GitHub - The
        official Rust implementation of Golem.
      
 
      - 
        Golem Community Chat - Join
        the community and team open discussion on Discord.
      
 
      - 
        Reddit - Golem Network
        discussion on the Reddit platform.
      
 
      - 
        Twitter - The Golem
        Project Twitter.
      
 
      - 
        Blog - The official blog
        where you can find the most reliable information on announcements,
        summaries and updates.
      
 
    
    Network Statistics
    
    Apps
    
      - 
        Golem SLATE - Hosted code pen SPA
        for writing a requester script to have work computed by the network.
        Utilizes dockerized yagna environments to communicate with the Golem
        Network in the background.
      
 
      - 
        Chess On Golem - Hosted Chess
        app to play against the providers of the network utilizing the Stockfish
        open source Chess engine.
      
 
      - 
        Golem Network Video Transcoder
        - Sample app to transcode videos. Select your transcoding profile and
        then upload your videos.
      
 
      - 
        Golem Transcoding requestor
        - React + Spring based webapp accepting video files as input and
        transcoding these files into different formats.
      
 
      - 
        Go le’ Machin - Web
        based bulk image editor that allows users to upload multiple images and
        apply bulk actions to them.
      
 
    
    Docker
    
      - 
        Golem Requestor Node
        - Dockerized requestor environment. Pass in the py script, it sets up
        the daemon and runs it.
      
 
    
    Testing
    
      - 
        Golem Test Harness (Goth)
        - Tool with the purpose of speeding up your development process and
        making it more enjoyable for application creators.
      
 
      - 
        Golem-afl - An
        experimental test-fuzzing framework. Assists in finding security holes.
      
 
      - 
        Golem Cargo Test
        - An adaptive distributed test executor for Rust projects.
      
 
      - 
        Golem CI -
        Decentralized task pipeline.
      
 
      - 
        Golem SLATE -
        Open source repository for Golem SLATE described in the above Apps
        section.
      
 
    
    Games
    
      - 
        Golem Sudoku -
        Game of Sudoku with size variants.
      
 
      - 
        HSOG-requester
        - Helps the HearthStone community in the design and building of decks by
        running a large number of simulated games.
      
 
      - 
        ChessOnGolem
        - Open source repository for Chess described in first Apps section.
        Includes React frontend for the 2 AI’s playing against each other
        through the Golem backend.
      
 
      - 
        Golem Fleet Battle Simulator
        - System for calculating the results of a battle between two opposing
        starship fleets. Used in the iOS game Rock Paper Frigate to determine
        the result of PvP fleet battles.
      
 
    
    
    
      - 
        Golocity - Build
        and deploy your dockerized applications on the Golem Network in just two
        commands.
      
 
    
    Data Analysis
    
      - 
        Flan - Tool for
        entrepreneurs that provide customized analysis of millions of worldwide
        trade value records giving them a bold guideline about what sectors they
        would need to take more attention to.
      
 
      - 
        Golem Lorenz-attractor
        - A system of three coupled, first-order, nonlinear differential
        equations which describe the trajectory of a particle through time.
      
 
      - 
        Golem Geomandel
        - Python script for generating sequences of Mandelbrot images centered
        on a single point and with zoom increasing in each image.
      
 
      - 
        Golem COVID -
        Creates images of new deaths per million related to COVID. After all
        images generated, it will gather them and create a gif.
      
 
      - 
        Golem Parallel Matplotlib
        - Various statistical analyses are performed on circadian rhythm
        measurements in human test subjects.
      
 
    
    Data Simulation
    
      - 
        cadCAD Golem -
        Package wrapper for cadCAD to dispatch the simulation workload to
        multiple Golem nodes. Supports Jupyter Notebook.
      
 
      - 
        Golem Array -
        Antenna array design and simulation.
      
 
      - 
        Limit visualization
        - Plots graphs with various limits. Supports discontinous graphs.
      
 
      - 
        GolemGraphWavePair
        - Generates graph frames, then combine them into an animation.
      
 
      - 
        Golemized strong-gravitational-lense
        - Simple distributed computing hack that simulates a physical phenomena
        called gravitional lensing.
      
 
    
    Data Optimization
    
      - 
        Golem or-tools
        - Uses the or-tools Constraint Programming library to solve problems.
      
 
      - 
        No more COFUD
        - Calculates how to fit the most people into a space while keeping 2
        meters distance between each other.
      
 
      - 
        Mutta Puffs
        - Sports league scheduler that solves the Travelling Tournament Problem
        for a given set of teams using Population-based Simulated Annealing.
      
 
    
    Finance
    
    Machine Learning
    
      - 
        DeML-Golem -
        Decentralised Machine Learning using Federated Learning to combine the
        sub-step models, it trains on different provider nodes into a full
        fleged model.
      
 
    
    Deep Learning
    
      - 
        Mlg - CNN predict
        services, a deep learning application that distributes popular CNNs
        pre-trained with ImageNet datasets.
      
 
      - 
        Deepart Golem
        - Makes art using distributed computing by running a tensorflow app,
        uploading your content and style picture.
      
 
    
    RNG
    
      - 
        Gandom - Extract random
        streams from providers. Supports two PRNGs, one based on Chaos machines
        and the other that makes use of Sodium.
      
 
      - 
        Entropythief -
        Get random entropy at a steal of a rate from multiple providers
        utilizing the linux entropy source or Intel’s RDRAND cpu instruction
        (inspired by Gandom).
      
 
    
    Password Recovery
    
      - 
        Golem-JTR - Run John
        The Ripper to recover a password.
      
 
      - 
        Yacat
        - Hashcat password-recovery step-by-step.
      
 
    
    DeFi
    
      - 
        Golem Staking Pool incentivize system for GLM holders
        - A smart contract in order to provide the opportunity of yield farming
        for GLM token holders.
      
 
      - 
        Magic-doll - Sumer is
        a DeFi application that people may delegate their Splinterland card to
        earn passive income. Its core is 
Kyle, a Golem app that
        does all the computation to pick the best team to play for each match.
       
    
    User Interfaces
    
      - 
        Golem UI
        - Electron user interface for Yagna.
      
 
    
    Miscellaneous
    
      - 
        Gc__gvmi_hash
        - Recalculate the hash of gvmi image file. Solves the issue of having
        lost the hash of a previously uploaded image or if you’re unsure if a
        key corresponds to a specific image.
      
 
      - 
        gvm-vim - Golemized
        docker image for compiling the VIM editor.
      
 
      - 
        YaJSapi fork with greeting example
        - Simple Node.js requestor app that greets you. It writes some important
        message to a file and then downloads it for you, the basic eskeleton of
        a requestor app. Look in 
examples/greetings.
       
      - 
        Golem Image Sharpening
        - A tool to sharpen images.
      
 
    
    
      Developer and Requestor Resources
    
    
    Provider Resources
    
      - 
        Provider Tutorial
        - Get started as a Provider on Golem Network using the handbook.
      
 
      - 
        Provider FAQ
        - Community curated list of commonly asked questions and answers.
      
 
      - 
        Yagna-binaries for aarch64
        - Build for 64 bit arm architecture to be able to run as a provider on a
        system such as a Raspberry Pi.
      
 
    
    Monitoring
    
    Provisioning
    
      - 
        WSL - Allows Windows users to
        run Golem within Windows Subsystem for Linux. Removing the requirement
        of Windows users needing to use a Virtual Machine.
      
 
      - 
        Golem Provider Terraform
        - Terraform script to automatically deploy a Golem Provider on a cloud
        provider and setup monitoring using prometheus.
      
 
      - 
        Automatic Golem -
        Setup a Golem Provider with simple instructions and logs guiding you
        through the process.
      
 
      - 
        Golem Provider Node
        - Docker version of a node to help you get started running as a provider
        in a Docker container quick.
      
 
      - 
        Golem Provider node
        - Fork of Alxexandre-abrioux project above that allows to dynamically
        generate config files from ENV variables and specify how many replicas
        you’d like to spawn.
      
 
      - 
        Scaleable golem provider
        - Spawn x amount of providers using Docker.
      
 
    
    Learning Resources
    
      Presentations and Workshop Material
    
    
    
      Unraveling Golem’s The Next Milestone Blog Series
    
    
    GitHub Digest Blog Series
    
    
    
    Contributing
    
      Pull requests and issues with suggestions to Awesome Golem are welcome!
      Please read the contributing guidelines
      before submitting a PR.