I’ve been having a lot of fun with my new book LiveCode Advanced Application Architecture (available on this site and on Leanpub). To make my life easier, I set aside some hours today to create a little desktop helper application for Leanpub. I wanted an app that could show me some quick information about my sales, allow me to generate new previews and publish new versions of the books.
An important thing for me was to make this a nimble desktop app, which means not using Electron. I am very skilled with LiveCode (also available in a nice GPL version) and used it to build my little app. You can see from the GIF above that it is very easy to use and that the design is not too horrible. It serves its purpose, a little app that allows me to check stuff about my books.
From the shot above, we can see how it consumes basically nothing. The source code is quite easy and I can extend it further to add more features from Leanpub API.
function getBookSummary pSlug busy put getAPIKey() into tAPIKey if tAPIKey is false then answer error "Please configure this application by going to the 'Preferences' tab" exit to top end if put the merge of "https://leanpub.com/[[pSlug]].json?api_key=[[tAPIKey]]" into tURL put url tURL into tResponse put jsonimport(tResponse) into tBookSummaryA notBusy return tBookSummaryA end getBookSummary
Above is part of the code, the function called
getBookSummary. Just to demonstrate how readable and easy LiveCode is. Even people who never seen this language can kinda understand what is going on.
I’ve built this for my own personal use, but I am considering releasing it (if I add the necessary error checking, right now, there is basically none). What do you folks think? Should I make this a FOSS project? Oh, I forgot to tell, this is cross-platform, it runs on Windows 10, macOS and Linux, the Windows version is 13mb uncompressed, so it is also a small app.
There is a lot of power in little nimble desktop apps, we don’t need a SaaS for everything. It took me about 3 hours to build the whole application. Not bad at all.