Intro to lunk.it built on Aurelia.io and Lumen

Intro to building the Lunk.it web app using Lumen and Aurelia Part 1

Jared Daines

3 minute read

History

Every once in a while I need to send a password or some other piece of information that I don’t want to send or have it sitting in an email account. So I created lunk.it.

As a side note I’m not a security expert by any means with any of this so take it all with a grain of salt. I created this for my own personal needs and education. If you are looking for something more robust, I would suggest using Signal from Open Whisper Systems.

All right with that out of the way. Let us get started.

If you like to just jump into the code and see how things are done you can find the code for both the front end and the back end pieces at https://github.com/lunkit. Note this code may change as we go back through this blog series and re-work things.

Lunk.it is running an API server based on the Lumen framework and using Redis as our data store.

The front end is powered by Aurelia utilising the Openpgp.js Library to handle the encrypting and decrypting of the data. This all needs to happen on the javascript side to help maintain security and privacy.

So this first part is going to be mostly a tutorial on how to get Aurelia set up and working.

First get the Aurelia CLI installed and working. Go Here for Instructions

Once that is done create a new project:

  au new lunk-frontend

We will be doing ESNext but want to select some different options so choose option #3

Custom Project Settings

Next, we want to select Bable as our transpiler.

Selecting Babel

For the template options, select Minimum Minification.

Selecting Minification

CSS processor - not going to worry about any CSS processor with this. Just going to use the default bootstrap later.

CSS processor

Add in testing because everybody says is great!

Testing Is Great

I use the Atom code editor. If you haven’t settled on a code editor and are getting into Aurelia, I would suggest taking a look at VS Code.

Selecting Babel

We then get an overview of our settings for the Aurelia CLI tell it yes we are good and then say yes again to have it go out and grab all the dependencies that are needed.

Last Aurelia Step

A base Aurelia project is ready to be up and running. Go ahead and follow the instructions and change into the directory and run au run --watch command. The cli will then create a server on localhost:9000 with a default hello world welcome message.

We now have our base aurelia up and going. Stay tuned for the next blog post.

comments powered by Disqus