Diving Into the World of Clams.tech!

All right uh so hey my name's Aaron Um and I'm one of the developers uh Working on clams uh we're building uh a Browser UI for core lightning nodes Um so just trying to create a nice UI Around all the all the great stuff That's been built over at uh called Lightning Um so yeah so I'll give a bit of a Overview of the project Um like what we're about some of the Project goals Um what's on our roadmap sort of where We're heading Um it's kind of changing all the time as We get feedback but we have like an idea Of what we want to build and then I'll Go through and show you how to run clams Locally and connect it to a register Node It'll be using the CLI and stuff like That so if any of you Um sort of technically minded but but Aren't familiar with the CLI just hit me Up after the after the call or at some Point and I can help you through that um But the idea is just to be able to get a Chance to like run the app Um and have a play around with it on Registers before you uh you know so you Can get used to it before you connect Like a mainnet node and yeah and then We'll go through and demonstrate some of The features of the app

I show You how To Make Huge Profits In A Short Time With Cryptos! I show You how To Make Huge Profits In A Short Time With Cryptos! Welcome to the Future of Money

Um so yeah what is clams like I said Before it's just like a browser UI Um pretty simple we think of the the Core lightning uh your core lightning Node is like a back-end server and we're We're building just a client that Interacts with it so all the all the Secure stuff Um all the hardcore cryptography Everything stays uh on your device on Your call lightning node and we're just Basically interacting uh with the RPC Server Um that your node exposes Um Yeah and so so why do we decide to build Clamps um so yeah me and my mate John Who is working on it with me Um we both run call lightning uh nodes At home and uh we wanted something that We could just basically start making Payments when we're out and about you Know from our nodes at home Um and so there are already some Solutions out there for connecting Connecting to your node Um and some really great Solutions but We found a lot of them if they did Support call lightning Um it required installing extra software Um and also it Um They were they didn't uh work on a lot Of the specific features that I think

May call lightning Um different and uh so that's kind of What I got here I wanted a UI for all The great features so we wanted a nice UI for bolt 12. Um the bookkeeper accounting stuff which I think is a massive Game Changer that You know because we were kind of asking You know why why aren't we using our you Know nodes regularly Um and one of the problems was just it Became an accounting nightmare when I Did I tried living off lightning for for Six months Um there's like a service here in Australia where you can pay bills Through lightning and everything and Yeah the the tax problems of having to Account for all those transactions was a Was a massive headache so bookkeeper is Just a massive feature that I think Helps make it more practical to use the Nodes uh like use lightning on a daily Basis Um and liquidyads is another feature That I think is really great and unique To Vault 12 so Um we've started out just building Um you know just a basic functionality Of of the UI just basic lightning Functionality and we're now starting to Branch out into a bit more specific uh Call lining features so we released some Bolt 12 support recently we've got some

Really basic bookkeeper stuff up there Um but we're yeah we're working on some More advanced stuff with the bookkeeper At the moment which I can talk about a Little bit further Um and then basically I saw the the Thing that inspired this particular way Of doing things was I saw a guy called JB 55 Um he's not on Twitter anymore he's Mostly working uh over at Noster because He works on the dumbest app Um but he was doing some really Interesting stuff connecting to call Lightning knows he was doing like Um like serverless checkout and Um some really interesting things and Just the way he thought about uh you Know using a call lightning mode as a Server like a personal server uh Personal money server and connecting to It through the lightning Network itself We'll talk a little bit more about sort Of how that works and everything but um Just a really Innovative like Innovative Way of like connecting to call lightning Modes and so seeing his work Um kind of inspired despite what we're Doing here Um and yeah we've kind of iterated on a Lot of the ideas that he he started with Um so yeah project goals uh we want to Secure private and fast connection to Your node

Um we had personally you know tried Connecting to our node Um through like a you know package like Umbral or something like that Um and that all runs on tour only and Um yeah just the experience with Tor is Just kind of sub-optimal it doesn't Really feel like you're living in the Future which Bitcoin I find tends to Make you feel like you're living in the Future when you're when using Bitcoin And when you're trying to connect over Tour it's really really slow uh Unreliable so we wanted something that Was still secure and private Um but we wanted it to be you know feel Like a really modern payments app like Really slick and works quite fast Um oh and by the way I meant to say the Star if anyone has any questions just Just interrupt me and ask as we go on Um and next thing so we built it as a Pwa which is a progressive web app Um so it's it's an app that runs in the Browser Um but the cool thing about Progressive Web apps is you can you can save them And they become like an icon on your Phone or on your computer and they they Kind of look indistinguishable from from A native app once they're they're saved Um which is kind of cool so it kind of Feels like a native app but it really is Just running in the browser

Um and so there's there's a few Advantages of going this approach There's definitely some trade-offs Um but one of the great advantages is It's available on all devices that have A web So you can kind of think of the browser As like Um and you know app distribution and so You get a really really wide Distribution because almost all all Devices have a web browser Um these days Um and it means we're not reliant on the App Store uh in you know previous in Previous years not so much uh at the Moment but in previous years Um the Apple App Store and just just app Stores in general have been pretty Um negative towards Bitcoin apps and They tend to get called from the app Store without any kind of notice Um things aren't so bad at the moment But um we kind of don't want that Reliance on the App Store in in the Because there may become a future time When when it goes back to being Bitcoin Not being if app store is not being very Friendly to bitcoin apps Um so yeah no Reliance in the app store Which is good I think Um which uh Native apps on Android uh Don't rely on the App Store you can Install them separately but um there are

A lot of iPhone users as well so Um yeah we didn't want that sort of Censorship risk Um gives us a small bundle size for for Low bandwidth devices because we're Using the browser and it's already Installed on the VA on the device Um our app at the moment comes in Somewhere around about two megabytes Um depending on how much of the app You've loaded up Um because we're sort of dynamically Importing all the different parts of the App to try and sort of minimize the Bandwidth that's used Um and once you visit it once it down it Downloads it and basically captures it Um so yeah you're looking at something Somewhere around the size of like two Megabytes whereas like a lot of apps in The App Store tend to be about 80 Megabytes Um so pretty good for that and then Short iteration Cycles so Um there's kind of a long process of Getting a release through the App Stores Um that really slows down that sort of Iteration cycle so by being a browser App Um you know if if there's a bug we can Get a bug fix out if someone reports About we can get one out you know within An hour and you know just refreshes on The device and and they're good to go

And same with features so we can try Things out we can Um yeah just get these shorter iteration Cycles and get feedback and and then Integrate and release really quickly Um which I think will help in the long Run Um yeah so so the goal is training pwa Another goal is a clean intuitive ux Um so that's sort of selfishly as well Like I want to Um you know we're running like a node at Home and I want my wife to be able to Make payments with that node Um so we want the app to be really Friendly to people that aren't you know Deep in Bitcoin space and understand Everything so Um It's A Hard goal and we don't always Achieve it but yeah we're trying to make It feel like a modern sort of payments App like like a PayPal or something like That Um at least for just basic sort of a Bold 11 invoices and things Um and our ultimate goal is we want to Be able to onboard like new Bitcoin is Easily end-to-end Um so maybe down the line we might look Into something like green light Um or voltage and and we might be out of Because apparently the app if you don't Have a node Um then it's it's it's useless too but

We might be able to create some sort of Nice onboarding flow where you can go Straight to clams we can spin up a core Lightning node either through green Light or voltage Um connect to it and and um you know Have someone sort of ready to go pretty Quickly hopefully So that might be the end goal but There's there's a lot of work to to do To get there Um and I just like the idea of it yeah Being you know sort of being your own Bank it's it's end-to-end between clams And core lightning and whatever Infrastructure running Um you know you can have a full Interface to to to to to manage your own Money Um Yeah Uh yeah so project girls continued uh Yeah we want to be privacy focused so There's no logging no tracking no Google Scripts we have no idea how many people Uh are using the app Um we want people to be able to run it Just locally like I'll show you after This how you can write locally and Um it's fully open source as well so you Know anyone can audit the code anyone Can see that that we're not logging Logging or tracking um and this is just You know the way we want our soft you

Know software that we use in our Day-to-day I'll rather be that way you Know so we're not going to do any Logging in in our code Um and then device specific Functionality so we want you to be able To run that be able to run the app on Multiple devices and Um and each device we kind of optimize The UI for what it's best for so on Mobile it's optimized for simple Payments just on the go something like Like Zeus Um and you know you'll be able to see Some you know view like you know what Channels are active and things like that But generally not a lot of the heavier Sort of management type of stuff and Then on desktop you'll also be able to You know do simple payments and such but Um it's kind of going to be more Optimized for the node management kind Of stuff kind of like more like Ride the Lightning so it's kind of Um across of both of those types of Uh apps and yeah so you're gonna be able To manage channels you know do all your Accounting all that kind of stuff Um it's a much more complex Um on the desktop so just try and make Use of the advantages of each device Type Um and then we want it to be International so we've built uh

Internationalization in from the start Um we only have English translations at The moment but it's all built in there Ready to translate into multiple Languages Um so if anyone you know if anyone wants To help out with that we we can Definitely work with people to to get Some some translations in there Um but yeah our ultimate goal was to Have this translated into many many Languages because Bitcoin is International Question Uh so the roadmap Um so yeah on the left this is just Taken from our doc site Um this is some of the stuff we've we've Implemented so just just basic bolt 11 You know create pay and scan key stand Payments Um you can encrypt and and cache the Data on the device uh payment history Um yeah off-chain balance it's just a Lightning balance we've implemented the The client-side online URL protocols so You can it recognizes Um the main the main Ln URL types if you Were to scan them or try and send to Them Um Some basic stuff here like direct Connection to a node custom websocket Proxies which I'll talk about the

Connection and such and how that works Um we've got a basic bookkeeper Accounting dashboard and we're working With um Satoshi pachioli Um who's a Bitcoin specific account and We're working with him on some some cool Stuff uh like profit and loss statements Um basically just working with him like What is what are the the problems that He sees Um when working with Bitcoin Um you know businesses that are running On bitcoin and and happen to be running Um lightning nodes like what sort of Data do they need to see Um how to visualize it how to export it Um and ultimately I'd love if we could Replace something uh like kindly which I Use personally Um but it kind of doesn't sit right with Me exploiting all my payments and just Uploading it to their server because who Knows what they're doing with it um so We're going to look in to see if we can Maybe do a a lightning focused you know End-to-end accounting um kind of thing But um yeah it's kind of a long-term Goal there Um yeah we can scan bit 21 QRS we don't Support any of the on-chain features of The core lightning nodes at the moment But when we do we'll probably default to Creating hit 21 QR codes and have a Really easy toggle to be able to toggle

To just a bolt 11 specific Um or an Unchained specific Um We have done Vault 12 offers so we Support everything in Bolt 12 offers Except for the recurrence feature Um that that's been taken out of the Spec so when that comes back in we'll Re-look into that Um But yeah we need to do some Investigation as to as to whether we can Do a talking about the downsides of a of A web app Um we might only be able to support that On Android devices just because Um yeah iPhone Progressive web apps Um for obvious incentive reasons they Like to have the the closed App Store They've kind of they don't have full Native app functionality Um and and we may need that for the Recurrence Um but yeah we'll see how that goes And then yeah some of the stuff we've Got uh coming up which I sort of just Talked about some of it but yeah Obviously supporting on chain Um Just you know sending receiving all that Kind of stuff on chain and your balance Is is probably coming up next Um I'd like to do some some coin control Stuff you know coin selection

Um I think it'd be interesting to maybe See if we can integrate something like Join Market or some sort of coin join Stuff that we can do just on the client Side but still need to do some research On that Um and then just we still need to Implement basic stuff just like managing Channels and peer management things like That Um we're looking at a liquidity ads Dashboard Um because I think that's quite Interesting And then part of the accounting features Is we need to be able to Um tag tag payments so we need sort of Additional metadata Um so and we think that'll be kind of Just handy anyway because I found out Our personal experience a lot of the Time you look back at a lightning Invoice in the description and and Things like that doesn't really isn't That really helpful and you can't really Work out what it was so just the ability To tag transactions and add notes to Them and stuff like that and store it Locally on your device Um you have about 12 recurrence support Which I mentioned Um looking into maybe a reckless plugin Management UI so again thinking about Kind of like end-to-end solution and

Make it easy for people if they could Just you know one click install CL boss And then we have a UI for cl boss just To get that running and Um you can kind of Imagine a future Where the end user doesn't really have To understand Channel management and Have to worry too much about all of that Kind of thing and then that can all plug In back into the accounting stuff and The charts and they can kind of have a Good visual of what's going on Uh yeah so we'll get claims well I'll Stop there if anyone has any questions Um I can't really see much in terms of The way to chat but just chime in if Anyone's got any questions and I'll uh Start getting set up ready to show how We can connect quickly Um okay cool I think yeah Uh so I'm going to use Um polar to demonstrate this Um if you haven't used polar before it's Kind of a cool sort of UI for setting up A lightning Ridge test you don't need to Use polar to connect it locally if you Have like a core lightning node running On regist locally you can just connect To that directly which might be more Simple if you have that already Um but yeah Paul was kind of especially If you're not deep in the weeds of the Technical stuff polar is just a great

Way to like play around and get a sense For it for like how how it all works It's an easy way to play around with it Um so yeah we can Your download polar you'll need Docker As well once you've got that up and Running we can create a lightning Network actually What I'll do is I'll import a network Um So you can export uh Polar Network configurations I can like Make this available Um if if people would find it useful Um but I've just got one here where it's Just a basic you know l d node a couple Of color lightning nodes Uh and an eclair node and I've just got Like straight just a channel through Each of them Um And yeah but you can set up any kind of Network you want And so the first thing we need to do is We need to Um well we'll get us started so the Docker recognizes it there might be a Better way of doing this so someone let Me know if they do know a better way but This is how I've been doing it I open up The dashboard for Docker and then you Can open it here in visual code it might Say something else if your default text Editor or something else but this is

Just a way you can edit the docker Compose file and the reason we need to Do that is we need to expose the the Websocket port Um and any other features that we want To add and I'd like to add offers so We got Alice we've got Bob here is the Sea lightning node So Just wanted to go experimental Web You can just set it to any kind of valid Port number Um We'll enable offers as well So yeah you need to this is just in the Lightning B sort of config parameters And then we just need to also expose That same port I'm here Okay so that's Bob he's seven two seven Two Uh and we've got Dave It's a 373 Anything over here Okay So save that Head back over to Polar and if we stop That And restart Then that should be All enabled So that's when to come online So the next step

Is We need to clone down the repo So you can go to github.com clams Tech Slash browser app Climb down the repo So just open up the terminal Quick clone Perhaps that's fun yeah we can see the Page directory into the to the app Directory And we're using yarn for package Management you can you can install with Npm or pmpm or whatever you like to use I'll just install uh the app Dependencies with young All that stuff I'm just checking on The whole network Which seems to be taking a long time to Go online Let me just check I didn't mess up this Oh yeah If I'll restart that again that was Obviously making cool lining not happy It's hard Okay so we've installed dependencies Um and then we can run yarn Dev and then Add Dash HTTP because we don't Um basically when we Dev we we do uh run With like a fake https TLS certificate Um just for testing of like uh the Camera and things like that it requires Https but uh because we're all running Locally here and we want to connect Directly to the node without TLS we'll

Just go ahead and run it on http Uh so that is running The dev server copy that over Okay cool so we've got the uh The app running here so just move these Windows around And looks like all our nodes are running Which is good Um so we can connect to Bob first Um so click let's go here and so this is The the connection details of the node Um and I guess yeah I should probably Talk a little bit about how how plans Connects to a node Um currently we're supporting only over Clearnet we just need to add support to Our proxy server which I'll talk about In a sec to add tour support but like I Said at the start we're really focused On Um mostly clear net just because we Think it's a better experience and we Think there's good ways of Um running like a VPN server and things Like that so you don't need to to dox Your your home IP address Um so basically what this does is uh I Wrote a library called Ln message which Is similar to one of the libraries that Um JB 55 had called Airline socket And Um what it does is it it basically I Think of it conceptually of like Spinning up and sort of ultra light mode

In the browser Um it has a it has a no public key Um but it does it advertises that it Doesn't support any of the features Um of the network and so all it can do Is it's just like when you're you're Connecting to any other node Um it's it's doing that same process but From the browser Um so there's there's like a a kind of Like a crypto a cryptographic handshake Using the node protocol noise protocol To authenticate Um and and set up uh basically a way of Sending Um end-to-end encrypted messages Um from the browser to your node so once It's connected it's like Ultra private Um it's quite fast and Um yeah it's just a really cool way of Connecting to a node without you don't Need to install any extra software on Your node you don't need to install an Extra API or anything like that it Connects to it just like any other node Would connect to your node Um and I'll be out I can show you the in The CLI you'll actually see the browser Show up as as one of your peers Um But yeah if anyone has questions on that Just just jump in and I can go into a Little bit more detail but I'll show you What it looks like

Um so we can grab the public key And then we want to go to localhost and Then the port I think it was 7272 for Bob Um and then so in the browser like Normally in the production app Um that runs on https with a TLS cert And the browser is part of like browser Requirements they don't allow you to Make Um a connection from a you know a secure Environment to an insecure environment So you can't connect directly to an Exposed websocket on your on your node Uh from the production app Um and so a way around that is you can Do a thing called a a website or proxy And so we have a server running it Accepts websocket connections from the Production app and then what it does is It makes a regular socket connection uh To your node which is what most nodes do They they connect via TCP sockets And it basically just the server just Receives messages from the browser and It just shuffles that on to the the node And vice versa and coming back and forth Um and it's a trustless connection Because like I was saying before it's End-to-end encrypted so our server just Sees encrypted binary traffic you can't Um read anything or do anything like That Um it does become a single point of

Failure Um Which which is is less than ideal Um but it allows uh for connecting to The nodes in the browser now Um I think in the future there is some Um some work going on where you can Expose the website report and it will Have TLS built in Um and if that becomes a thing then the Production app won't even need the Webcycle proxy and um we'd be pretty Happy with that because we're running a Server that that costs a small amount of Money and we don't really want to be in The middle of the connection it'd be Great connect straight to your node like Directly it's more performant as well But anyway from the meantime uh it's Using a websocket proxy which you can See there and that's what we default to But in this case we want to connect Um directly to the node which we can do It's both running in Um without a TLS connection so we can do A direct connection we can select a Non-tls connection and we can connect And so that's gone and connected to to Bob So the next part of this way of Connecting to a node is Um how do how do you Um you know allow like how do you Authenticate and and Define the

Permissions uh for that node Um and so that's the other part of what It's using is using a thing called the Commando API which is built into core Lightning so the more recent versions It's built in it originally was a Separate plugin Um and that base Commando basically Allows other nodes to uh make requests RPC requests on your node and typically You need to send an authentication token Which is which is called a room and that Is a bearer token that defines Um what uh what methods and and what can Be done on your node essentially Um So yeah you want to be really careful Like passing around Um Room tokens for your node you know your Main net node because I always think of Them as kind of like private Keys Depending on how they're encoded and Such Um so one thing that we have done within Clams to try and uh mitigate or just Make it give it an extra layer of safety It's it's not foolproof but what we do Is as I said before when the browser is Spinning up kind of like an ultra light Node it actually has a like a node ID a Public eye key a public key which we Have here and um basically we use that As the private the associated private

Key with that public key is kind of like A session session key So we store that uh private key you can Encrypt it as I've shown the app a Little bit later but um the idea being Is that we'll have this persistent node ID and that means you can actually Restrict the room to that node ID from The get-go which I think makes it just a Little bit safer passing so for instance You might be you know on your computer And you're you're using the CLI to Create a room and then you need to get That to your phone and you might put it In my Apple notes or something like that Um by restricting it to a public key at Least Um you know if it got compromised on That process of getting it to the other Device it won't be able to be used Unless they also had the private key That's just running in memory uh in the Browser so not impossible but just it Makes it a little bit safer Um and so we've got these like kind of Room recipes here you know you could you Could uh get just a read-only one if you Just want to connect your node and and Just have it and just be able to see you Know a balance and see the payments and Stuff but not be able to make any Payments Um we've got a clams one which is uh Basically full app functionality but

We've tried to to minimize what methods And such that we need and then there's Like an admin which is just let's let's Yeah do anything on your node within but It's still restricted to the no public Key and we have rate limits encoded in In all these as well just so which I Think is just a good practice just to Make sure no one can Doss your node with Huge amount of requests so yeah we can Copy the Clans one Uh go over the Bob In actions We can launch the CLI for Bob So we've got the CLI there we can paste That and you can see I don't know geez that's coming all Weird Um well I'll hit enter but you can see It basically encodes a whole heap of Restrictions I can show in the UI what That looks like so we'll copy of the Rune over We can paste that in here and you can See a little decode room button comes up We can click that and it and it gives You like a like more of a um Like a summary of of what what's going On so you can see it's restricted to the ID that we had in the browser and just Defines which methods it can it can call Um and you can see it's right limit to 60 requests per minute so one a second Roughly so we can save that

And then we're in Um so it shows the the lightning balance Here it won't show any on chain balance As I was saying before because we're not Supporting that just yet Um and then like a a fair balance here If you prefer that and you can you can Toggle them between and that'll switch It all out through the app Um but I'll go and connect another Another device here so we can Do some transactions between them It's a iPhone simulator So we'll do the same thing for Dave Copy the public key Um Three Sim three From a direct connection again And then we'll do the same thing copy The room recipe Um yeah you can see the Dakota Rune Again just a mobile UI All right so we've got Dave and Bob Connected Um so We'll start with just a simple Simple receive So I want to see 21 sets Is GPS Create the invoice Um until you get you've got that there And you can you can scan that got the Expiry it shows its pending Um so we can copy the invoice here

Um generally you would scan the invoice But it's kind of hard on the computer Yes I'll just use the the send method Where you paste it in Um you can recognize it's a lightning Invoice there so we'll go to next and it Just gives you a kind of a summary of You know the invoice how much it is What's it for when it expires and we can Send payment And so on here you get the notification And payment shifts to a completed and Same here Um And then if we go home we now have like A recent payments so you always see like The last payment you had you can go There and see the details of that So that's just basic basically both 11 Payments Um receiving and sending Um we can take a quick look at our Offers So I haven't created any offers yet we Can create an offer Um definitely looking for feedback Around The ux and the language and stuff around Bulb 12 offers Um I kind of just made this up as I went Along Um kind of mapping it to that I kind of Liked the Ellen URL thinking of it it's Like an LA neural pay or an lnural

Withdrawal Um but yeah I still think the whole Office thing I showed to my wife and she Had no idea what was going on so Um yeah there's a lot of work to do to Make offers a bit more intuitive maybe Once they're standard across all Implementations we can kind of switch to More of Bolt 12 just being the standard And that'll be like that receive and Send flyer just showed you would be just Bulk 12 under the hood Um but we'll create a pay where people Can pay you And we can set it to zero because we'll Just create like a Just a tip jar kind of thing Usable invoice I'll be issuing it Uh label for internal records so I'll Just call it a chip down Um quantity is one of the features of Bulk 12 offers I'm not going to enable It in in this I've got a summary for it Any amount description has took me I Could make it single use but I want to Make it a Um a reusable uh QR and so there's our QR and again you'd normally scan that But we'll copy it over and we'll And pay it from Bob here so we'll paste It in it recognizes that it's a bulk 12 Offer So it gives you a summary uh often type

Is paste I'm going to repaying Um it's tip me so it's any amount that Asks how much You know would you like the sand or send 21 and then you can send a note with it Um there's a summary there and we can Send that And yeah so you get a notification over Here that you've received a payment Um you can then come down here and you Can actually see payments um so we Collect all the payments that are Associated with that offer And so you can see that last payment you Can actually click on that to go Directly to the payment and then it kind Of backlinks back to the offer as well If you want to go back to the offer Um but so you can See your offers here and you can see all The payments you can see whether it's Active it's kind of a summary on on What's going on with that Um Yeah so that's and withdrawal Works in a Similar way Um But you'll have it there and then Someone can put it in and basically Withdraw from your node the amount that You've you've set in there Um Yeah there's lots of cool things that That offers can do but we thought we'd

Start with a kind of like a basic Um implementation and it was hard to Find many other sort of uis around Bulk12 to see how other people are doing It um so we just won't move what what we Think works best but definitely looking For feedback on that Uh and then I can show what we've got For the accounting dashboard so far as Well Um so maybe what I'll do with the reason I put these two core lightning nodes in The middle is we can get them doing some Routes Um So I'll create an invoice on this last One And then I'll pay it with the first one So that that should have rounded the Payment through our two core lightning Nodes there and I'll try doing one the Other way and I was testing it before it Didn't seem to Be working A bug with polar and the clear Implementation but we'll see if it works Yeah There must be a bug with the polar a Clear implementation or something Um I'll just react route another payment Through Same way just we get a couple of A couple of routes

Cool so we'll have a look over here at Bob so we can go to bookkeeper And so yeah we just got a basic Dashboard John Um who was also working on this project With me he's um he's actively working on Some new charts and stuff which are Coming out really cool Um but just basically here just to show How much you've routed your fees current Apy Um in total Um just some some basic pie charts Showing which channels are doing the Routing and the apy Um I think the coolest thing so far if You are using your lightning node and And you need to deal with the accounting Mess Um this is pretty cool Um so thanks to Nifty for doing all the Great work on bookkeeper we've matched The the export Um the download export CSV that that Runs on the Note we've matched the same Thing here so you can just Um if you use you know kindly you can Download that Now we can have a look at what that Looks like Um so this is you know already in the Format that kindly expects so you can Just import it one click and you're Basically basically done

Um unless you need a layer or some Transactions as as being Um transactions sent to yourself and and That's why as I was speaking to before That we want to add the ability to to Label and tag transactions and have that All stored on your device so that um So that this kind of accounting stuff Can be at the end of the year just super Automatic but you can you know it labels It Um you know deposits on chain fees Invoices you know routing Um and how much and everything like that So yeah that's that's super handy if you Need to do tax stuff Um but yeah a lot more to come on the uh Bookkeeper dashboard Um so that's that's where we're focusing A lot of efforts Um Yeah I'm currently working on the you Know refactoring the storage so we're Going to have a proper sort of front-end DB rather than just using local storage Um And Trying to make it all yeah there's a lot Of work to do to make it a lot more Efficient but with the the SQL plug-in And things like that Um rather than right now when when you Reload It goes and fetches all the data again

And so nodes that have huge amounts of Data it's pretty bandwidth Um inefficient so the idea is we we kind Of store the data we need in a DB and Then um we can know using SQL plugin and Other features we can kind of just Selectively grab what's new Um And yeah so I'm working on a lot of the DB stuff for that Um be able to you know hopefully export Sort of your metadata to other devices Things like that I'll show you the um So you can encrypt data by selecting That Um and just putting in a simple pin That'll encrypt it Um all the data that we have stored as Well as your authentication and details So I'm going to refresh It pulls that data from Storage it sees It's encrypted Um and if you you know do a different it Won't won't unencrypt that until you do The right number and then Venice just Kept in memory Um some future once I've got this PB Setup I think we're actually going to Make it a passphrase rather than a PIN Number and we'll make it kind of Mandatory from the start so that the the The session key Um the room Um and the the connection address that

That will never actually ever get stored In clear text at the moment it is and Then you can convert it to to encrypt it But ideally we want to have that all Just encrypted from the get-go Um and then we might be able to do some Interesting stuff Making it easier to connect other Devices because you can see the Connection Um flows is not going to be easy for Your average person at the moment Um but hopefully you know if you're an Uncle Jim thing might be you connect one Device and then you can put up a QR code And we can export all the data as Encrypted and you can just add another Device and things like that but yeah Tons of stuff to to work on but Um we've got a functional app For the moment and just constantly Iterating and trying to improve That's pretty much it probably if anyone Has any questions we can Um Yeah I can answer those questions Let me look at a chat sorry if I haven't Seen the chat at all this whole time So for office does this work now can you Make your own custom amount of say Withdraw Um if I have 10K sets and I'll let my QR Code get scanned at 1K times what Happens if the QR gets scan 1K and one

Time Uh Uh I'd have to look into that I mean Yeah so offers it does work now that That's that's all working Um you can make a custom amount uh for Withdrawal so yeah you can do like a 10K Sat withdrawal Um If it gets scanned 1K times Um yeah so it that withdrawal will only Be valid for one Um one withdrawal it becomes disabled Automatically I believe as soon as you Withdraw from it Um does offers drain from the whole no Balance or can each QR get a set amount That can be dropped from Um Yeah no it doesn't drain the whole no Balance you would you would set the Amount of what you want to enable to Withdraw Um Yeah so I don't think you can set an any Amount for a withdrawal type which is Like an invoice request type is what They call it Um so you have to set an amount for that Will claims allow you to manage rooms Yeah I think that would be Um yeah we could have a UI for creating Rooms Um so that might lead to you you have

Like Um You know the the main sort of admin Person who who has it all set up and Then you could create rooms from the UI With more restrictions Um yeah one of the things I want to work On Um there's a farmer here uh nearby me Who accepts Bitcoin and has a couple Other businesses and I'm trying to think Of like how this could be how clams Could be useful to him on a business Sense and so he yeah that's something he Might want to do is have an admin thing And then have like an iPad at his coffee Shop that has just Um the ability to create invoices and And can't spend from it so like really Fine-grained uh controls uh for runes Uh what is the next thing the clams team Is working on uh yeah so John who I Think is on this call he's he's working On uh improving the accounting dashboard So we're going to be doing um profit and Loss statements for for go Runners Um just a lot more charts and things Like that so you can have more insight Into what's going in your node Um as part of that work I'm refactoring The DV Um underneath the hood so that we can Add payment tagging and things like that Which is necessary for a proper

Accounting setup Uh then I'd like to get unchain support In there Um and then the the stuff that's that's In the roadmap yeah we kind of need to Prioritize but Um yeah the near future is on-chain Support DB refactoring and accounting Dashboard improvements Where we expand into other Implementations it was built in a way That Um That you could swap out the back end Um just in case we wanted to go that Direction in the future at the moment Um not planning on supporting [Music] Um Other implementations Yeah because I think yeah there's a Different approach and I think that's What other apps have done is like Supporting all implementations but then It gets a bit tricky when you when you Want to support features that aren't Supported by the other implementations Um so yeah I won't say I won't say we won't ever do it but at The moment Um I think Uh I like the trade-off set of having a Call lightning node either running at Home or in the cloud and connecting

Directly to that Um But yeah Um it'd be cool for the other Implementations implemented something Like Commando as well because right now You can connect to the other Implementations in the browser but you Can't you can't Um do anything with it you can't like Control their RPC or anything like that Um but yeah the other implementations Have other ways of connecting and things Like that Um so Yeah we're keeping them Keeping that in mind but um definitely Just focused on just improving the Features we have there's just so much Work to do Um prioritize deployment or see our boss Yeah I think that that would be really Cool to have a UI to see all boss Um and a UI to install it like one click Install Unless anyone has Oh we have one more question If a stepper can be added for operations Like create offer invoice to keep views And formed on multiple input requirement Step by Could you elaborate On that one inform the multiple input Requirement oh I see I get what you mean

Yeah yeah so as in like you know what's Yeah that's a good idea yeah what step So we've got the sort of Carousel thing Going Um you don't know how many steps you Have in that Um In that process yeah I agree Um yeah it's been a that's been a tricky One because there's like It depends on what they're doing we've Tried to keep the UI as similar for each Each sort of operation Um But yeah sometimes especially with Offers it kind of branches out into more Steps depending on what steps you you Selecting what you do in the previous Steps but yeah I agree you kind of won't Have a sense as a user like How long are you going to be clicking Through these menus but yeah Unless we have any more questions uh Aaron this was fantastic thank you for Your time no worries yeah thanks for Having me and Feel free to reach out to me on Twitter Or wherever if if you have any questions Or you want to help out or um yeah just Anything just hit me up Will do thank you this is recorded so we Will be sharing this out later thank you Everyone have a good day still

You May Also Like