JUNGLELABᵀᴹ build on L2
- bitcoin liquid network - digital assets - NFT
JUNGLELABᵀᴹ
Tech stack summary
Front-end
- Svelte Kit reactive component framework 
- Tailwind CSS UI utility classes 
- LiquidJS for liquid wallet functionality 
Back-end
- Postgres/Hasura for storing relational app data 
- Hasura backend plus for JWT-based user auth 
- IPFS for media storage and hash-based content addressing 
- Fastify NodeJS api/app server 
3rd-party APIs
- Esplora for Liquid blockchain data 
- Liquid asset registry for token metadata 
- coinos BTC/LNBTC <-> L-BTC conversion 
Installation pre-requisites
- pnpm: https://pnpm.io/ 
Setup codespaces development environment
curl -L https://github.com/hasura/graphql-engine/raw/stable/cli/get.sh | bash
npm i -g pnpm
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.webp
docker exec -it ipfs ipfs add /export/QmcbyjMMT5fFtoiWRJiwV8xoiRWJpSRwC6qCFMqp7EXD4Z.webp
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/
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 <address> 1   # get <address> from http://localhost:3000/walletSetup local development environment
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.webp
docker exec -it ipfs ipfs add /export/QmcbyjMMT5fFtoiWRJiwV8xoiRWJpSRwC6qCFMqp7EXD4Z.webp
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/
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 <address> 1   # get <address> from http://localhost:3000/walletLast updated
