JungleLab.io documentation for onboarding fresh developers

JungleLab.io documentation for onboarding fresh developers
JungleLab Liquid Network - Developers Guide

We are fully Supporting Open Source Software - thanks to Blockstream, Jan3 Raretoshi, TokenOcean, JungleLab, Bitcoin Liquid Lightning Community's

Bitcoin’s leading sidechain, enabling fast, confidential transactions, and the issuance of assets.
The Liquid Network | Bitcoin layer-2 solution for digital asset issuance.

JungleLab is a digital asset platform that allows artists, creatives, and collectors to upload and transact rare digital assets including music, videos, and art. The platform is built using a combination of front-end and back-end technologies, and integrates with a number of third-party APIs.

The Liquid Network is a powerful platform for developers and businesses to build on top of the Bitcoin blockchain. It offers fast, secure, and confidential transactions, as well as the ability to issue and trade digital assets. By building on the Liquid Network, you can leverage the security and decentralization of Bitcoin to create innovative financial applications and services.

The Liquid Network is supported by a vibrant community of developers, entrepreneurs, and industry experts who are dedicated to pushing the boundaries of what is possible with Bitcoin technology. By joining the community, you can connect with other like-minded individuals, share ideas, and collaborate on projects. Whether you are just starting out or are an experienced developer, there is a place for you in the Liquid Network community.

JungleLab Liquid Network

Introduction

Welcome to JungleLab! We are a web-based platform for issuing and transacting with non-fungible tokens on the Bitcoin Liquid Network. Our goal is to support millions of users and artists with an ecosystem that provides rights, ownership, and the opportunity to create multiple independent revenue streams.

Prerequisites

Before you can begin development on JungleLab, you will need to have the following tools installed on your local machine:

  • To get started with developing for JungleLab, you will need to have the following tools installed on your local machine:
  • pnpm - a fast and efficient package manager for JavaScript
  • Docker - a containerization platform that makes it easy to package, deploy, and run applications
  • Hasura CLI - a command-line interface for working with the Hasura GraphQL engine
  • Node.js: JungleLab is built with Node.js, a JavaScript runtime that allows you to run JavaScript on the server-side. You can download the latest version of Node.js from the official website (https://nodejs.org/) or through a package manager like Homebrew (for Mac) or Chocolatey (for Windows).
  • Git: Git is a version control system that allows you to track changes to your codebase and collaborate with other developers. You can download Git from the official website (https://git-scm.com/) or through a package manager like Homebrew or Chocolatey.
  • A code editor: You will need a code editor to write and edit your code. Some popular options include Visual Studio Code, Sublime Text, and Atom. Choose one that you are comfortable with and that has good support for JavaScript.
  • Docker: JungleLab uses Docker to containerize its services and make it easier to develop and deploy the app. You can download Docker from the official website (https://www.docker.com/) or through a package manager like Homebrew or Chocolatey.
  • pnpm: pnpm is a package manager for Node.js that is used by JungleLab to manage its dependencies. You can install pnpm by running npm install -g pnpm.

Once you have these tools installed, you should be ready to start developing for JungleLab. If you have any issues with these installations, please refer to the documentation for each tool or reach out to the JungleLab team for help.


Tech Stack

JungleLab is built using the following technologies: Elements Liquid Network, Bitcoin, Lightning Network

Front-End

  • Svelte Kit - a reactive component framework for building web applications
  • Tailwind CSS - a utility-first CSS framework
  • LiquidJS - a JavaScript library for working with the Liquid Bitcoin network

Back-End

  • Postgres/Hasura - a powerful combination of a relational database (Postgres) and a GraphQL engine (Hasura) for storing and querying app data
  • Hasura Backend Plus - an add-on to Hasura that provides JWT-based user authentication
  • IPFS - a decentralized, peer-to-peer file storage network for storing and serving media files
  • Elementsproject.org - Bitcoin Elements Liquid Node
  • Fastify - a high-performance Node.js server framework

3rd-Party APIs

  • Esplora - a blockchain data explorer for the Liquid network
  • Liquid Asset Registry - a registry for storing metadata about Liquid tokens
  • coinos - a service for converting BTC to L-BTC (the Liquid version of BTC)

Installation

pnpm install
cd hasura
cp .env.sample .env
docker run -it -v $PWD/app:/app --entrypoint pnpm asoltys/lnft-server install
docker-compose up -d
hasura migrate apply
hasura metadata apply
hasura seeds apply
hasura metadata reload
docker exec -it ipfs ipfs config --json Gateway.PublicGateways '{ "ipfs": { "Paths": ["/ipfs", "/ipns"], "UseSubdomains": false } }'
docker exec -it ipfs ipfs config Addresses.Gateway "/ip4/0.0.0.0/tcp/8080"
sudo cp ../static/user.png storage/QmcbyjMMT5fFtoiWRJiwV8xoiRWJpSRwC6qCFMqp7EXD4Z
docker exec -it ipfs ipfs add /export/QmcbyjMMT5fFtoiWRJiwV8xoiRWJpSRwC6qCFMqp7EXD4Z
docker exec -it liquid elements-cli createwallet coinos
docker exec -it liquid elements-cli rescanblockchain
docker restart lapp
cd ..
pnpm dev   # site is available at http://localhost:3000/

Mining

To mine blocks on the regtest network, run the following script:

Copy code chmod +x mine.sh ./mine.sh

This script will run continually, so you may want to run it in a separate terminal window or tab.

chmod +x mine.sh
./mine.sh   # this script will run continually to mine regtest blocks, you may want to run it in a separate terminal window or tab
docker exec -it liquid elements-cli -datadir=/home/elements/.elements sendtoaddress

1   # get  from http://localhost:3000/wallet

Funding the Wallet

To fund your dev regtest wallet

Copy code docker exec -it liquid elements-cli -datadir=/home/elements/.elements sendtoaddress <address> 1   # get <address> from http://localhost:3000/wallet

deep dive: This code appears to execute the elements-cli command inside a Docker container named "liquid", with the -datadir flag set to /home/elements/.elements. The sendtoaddress command is then called, with the <address> and 1 arguments. The <address> argument should be replaced with the desired address, and the 1 argument specifies the number of units of the cryptocurrency being sent. The comment at the end of the line suggests that the address can be obtained from the URL "http://localhost:3000/wallet".


GitHub - tokenocean/jungle: junglelab bitcoin liquid network - digital assets
junglelab bitcoin liquid network - digital assets. Contribute to tokenocean/jungle development by creating an account on GitHub.
https://github.com/tokenocean/jungle

Artist's, Company's, Brand's, Label's & Organiser's can reach out to Mid or Nadir @ junglelab.io for advice & onboarding.

Build On L2: The Community for Bitcoin Builders
Build On L2 (BOL2) is a community initiative that connects developers, entrepreneurs, and Bitcoiners from around the world to build on Core Lightning and the Liquid Network toward a Bitcoin-led future. Completely free and accessible, each layer-2 protocol has a respective community platform that wi…

The Build On L2 manifesto is a call to action for developers, entrepreneurs, and Bitcoiners to come together and build on layer-2 protocols like the Lightning Network and the Liquid Network in order to ensure that Bitcoin achieves its potential as a decentralized and censorship-resistant monetary system. The manifesto notes that in order for Bitcoin to scale effectively, it must build on layers, just as other monetary and technological systems have in the past. The manifesto also highlights the importance of building on Bitcoin in order to counter the proliferation of cryptocurrency scams and the push for central bank digital currencies, which it sees as a threat to freedom and privacy. The manifesto calls on the community to write code, build projects, and collaborate in order to create an alternative financial system on Bitcoin.

What will you build?

Thanks for supporting, xx  The JungleLab CoreTeam 2017 - 2023 x Esky

Blockstream offers several products in the field of blockchain and cryptocurrency, including:

  1. Blockstream Green: A mobile and desktop wallet for Bitcoin, Liquid, and other cryptocurrencies.
  2. Blockstream Satellite: A service that broadcasts the Bitcoin blockchain from space, allowing users to access it even without an internet connection.
  3. Blockstream Mining: A mining pool for Bitcoin and other cryptocurrencies, allowing users to pool their resources and increase their chances of finding a block.
  4. Blockstream Store: A store that sells hardware wallets, t-shirts, and other merchandise related to Bitcoin and cryptocurrency.
  5. Blockstream Explorer: A block explorer that allows users to search for and view information about transactions, blocks, and other data on the Bitcoin blockchain.
  6. Bitcoin Core: A full Bitcoin node implementation, providing users with a secure and reliable way to access and use the Bitcoin network.
  7. Blockstream Liquid: A sidechain of the Bitcoin network, designed to provide fast and secure settlement of Bitcoin transactions between exchanges and other financial institutions.
  8. Blockstream Elements: An open source project that provides developers with tools to build applications on top of the Bitcoin blockchain.
  9. Blockstream AMP: A program that allows users to make off-chain transactions on the Bitcoin network, allowing for faster and cheaper transactions.
  10. Blockstream Lightning Core is an implementation of the Lightning Network, a layer 2 protocol for enabling fast, cheap, and private transactions on the Bitcoin network. Lightning Core is designed to be easy to use and integrate, with a focus on security and stability. It is an open source project developed and maintained by Blockstream, a leading provider of blockchain and Bitcoin-related technologies. Lightning Core can be used by individuals, businesses, and organizations to build and deploy Lightning-based applications and services. Some examples of what you can do with Lightning Core include: Setting up a Lightning node to send and receive payments on the Lightning Network
  11. Building a Lightning-based payment gateway or merchant service
  12. Integrating Lightning into a Bitcoin wallet or other financial application
  13. Creating a Lightning-based application or service for a specific use case, such as micropayments, gaming, or social media

Overall, Blockstream Lightning Core is a powerful tool for anyone looking to build and deploy applications and services on the Lightning Network.