ThunderHub LND Lightning Node Manager in your Browser
Go to file
Anthony Potdevin 24c5109a06
feat: chat integration (#34)
* feat: chat wip

* chore: more chat stuff

* chore: fallback alias

* chore: more chat progress

* chore: chat continues

* chore: disconnect on account change

* chore: add start chat view

* fix: no messages fix

* chore: 🔧 more chat changes

* feat:  move to react feather

* chore: 🔧 add fee paid

* style: 🎨 change fee paid style

* fix: 🐛 wrong sidesettings icon

* chore: 🔧 add signed verified messages

* style: 🎨 chat mobile styling

* style: 🎨 contacts button icon

* chore: 🔧 add message types

* style: 🎨 chat changes

* chore: 🔧 error handling and styling

* chore: 🔧 chat settings

* chore: 🔧 contact last message

* chore: 🔧 small alias styling

* chore: 🔧 improve error handling

* chore: 🔧 juggernaut compatible

* chore: 🔧 multi currency

* chore: 🔧 add maxfee setting

* chore: 🔧 small fixes

* chore: 🔧 docker multistage
2020-05-01 14:08:30 +02:00
.github/ISSUE_TEMPLATE Create feature_request.md 2020-04-01 15:22:26 +02:00
.storybook Feat/nextjs (#25) 2020-04-12 18:27:01 +02:00
.vscode Feat/nextjs (#25) 2020-04-12 18:27:01 +02:00
@types Feat/nextjs (#25) 2020-04-12 18:27:01 +02:00
config chore: basepath fixes 2020-04-14 23:02:33 +02:00
docs Feat/nextjs (#25) 2020-04-12 18:27:01 +02:00
pages feat: chat integration (#34) 2020-05-01 14:08:30 +02:00
public chore: styling small bugs and refactors 2020-04-16 22:36:09 +02:00
src feat: chat integration (#34) 2020-05-01 14:08:30 +02:00
.babelrc Feat/nextjs (#25) 2020-04-12 18:27:01 +02:00
.commitlintrc.json Feat/nextjs (#25) 2020-04-12 18:27:01 +02:00
.dockerignore feat: chat integration (#34) 2020-05-01 14:08:30 +02:00
.gitignore feat: chat integration (#34) 2020-05-01 14:08:30 +02:00
.prettierignore Feat/nextjs (#25) 2020-04-12 18:27:01 +02:00
.prettierrc Feat/nextjs (#25) 2020-04-12 18:27:01 +02:00
.versionrc build: add config for standard version 2020-04-14 17:33:22 +02:00
CHANGELOG.md chore(release): 0.3.9 2020-04-22 10:26:41 +02:00
codegen.yml chore: codegen and types for apollo 2020-04-16 15:24:27 +02:00
Dockerfile feat: chat integration (#34) 2020-05-01 14:08:30 +02:00
jest.config.js feat: chat integration (#34) 2020-05-01 14:08:30 +02:00
LICENSE chore: update readme and license 2020-02-27 09:06:53 +01:00
next-env.d.ts Feat/nextjs (#25) 2020-04-12 18:27:01 +02:00
next.config.js chore: improve login ux 2020-04-17 20:11:37 +02:00
package.json feat: chat integration (#34) 2020-05-01 14:08:30 +02:00
README.md Feat/nextjs (#25) 2020-04-12 18:27:01 +02:00
setupTests.js feat: chat integration (#34) 2020-05-01 14:08:30 +02:00
tsconfig.json Feat/nextjs (#25) 2020-04-12 18:27:01 +02:00
tslint.json chore: codegen and types for apollo 2020-04-16 15:24:27 +02:00
yarn.lock feat: chat integration (#34) 2020-05-01 14:08:30 +02:00

ThunderHub - Lightning Node Manager

Home Screenshot license

Table Of Contents

Introduction

ThunderHub is an open-source LND node manager where you can manage and monitor your node on any device or browser. It allows you to take control of the lightning network with a simple and intuitive UX and the most up-to-date tech stack.

Tech Stack

This repository consists of a NextJS server that handles both the backend Graphql Server and the frontend React App.

  • NextJS
  • ReactJS
  • Typescript
  • Styled-Components
  • Apollo
  • Apollo-Server
  • GraphQL
  • Ln-Service

Features

Monitoring

  • Overview of current and pending balance for the Lightning and Bitcoin wallets.
  • URI strings for the node (Onion public uri also if available)
  • Invoice and Payment graph.
  • Liquidity report with total remote and local lightning balance.
  • Forwarded payments graph and the routes used for these payments.
  • Complete network info.
  • View open/pending/closed channels and how balanced they are.
  • View channel base and rate fees.
  • View all transactions.
  • View all forwarded payments.
  • View all chain transactions.
  • View all unspent UTXOS.

Management

  • Send and Receive Lightning payments.
  • Send and Receive Bitcoin payments.
  • Decode lightning payment requests.
  • Open and close channels.
  • Balance your channels through circular payments. (Check out the Tutorial)
  • Update your all your channels fees or individual ones.
  • Backup, verify and recover all your channels.
  • Sign and verify messages.

Visual

  • Responsive UI for any device. Mobile, Tablet or Desktop.
  • Light and Dark mode.
  • Check values in Bitcoin, Satoshis or Fiat.

Accounts

  • Many ways to connect to your node: HEX/Base64 strings, LNDConnect Url, BTCPayServer Info or QR codes.
  • Have view-only and/or admin accounts.
  • Manage however many accounts your browser storage can hold.
  • Quickly sync your accounts between devices. No need to copy/paste macaroons and certificates.

Deployment

  • Docker images for easier deployment (WIP)

Future Features

  • Loop In and Out to provide liquidity or remove it from your channels.
  • Integration with HodlHodl
  • Storefront interface

Installation

To run ThunderHub you first need to clone this repository.

git clone https://github.com/apotdevin/thunderhub.git

Requirements

  • Node installed
  • Yarn installed

After cloning the repository run yarn to get all the necessary modules installed.

After yarn has finished installing all the dependencies you can proceed to build and run the app with the following commands.

yarn build
yarn start

This will start the server on port 3000, so just head to localhost:3000 to see the app running.

HodlHodl Integration

To be able to use the HodlHodl integration create a .env file in the root folder with HODL_KEY='[YOUR API KEY]' and replace [YOUR API KEY] with the one that HodlHodl provides you.

Development

If you want to develop on ThunderHub and want hot reloading when you do changes, use the following commands:

yarn dev

Storybook

You can also get storybook running for quicker component development.

yarn storybook