How to Make a Custom Select Component in Vue.js

Customizing the design of a select tag is notoriously difficult. Sometimes its impossible without building your own from scratch using a combination of styled divs with custom JavaScript. In this article you will learn how to build a Vue.js component that can be styled using completely custom CSS. Demo: https://codesandbox.io/s/custom-vuejs-select-component-8nqgd The HTML Important things to note here: The ‘tabindex’ property …

Documentation Sucks and You Probably Do it Too Much

I often hear that more and better documentation is needed in the tech industry. I’ve since come to believe that most documentation is overrated. When Documentation Sucks Incorrect documentation is worse than no documentation, and redundant documentation is worthless. Let’s remove the chaff. Incorrect Documentation When given a piece of code to work with, developers typically take the path of …

Qvault’s Offline Mode in Electron

In preparation to add Bitcoin and cryptocurrency key generation in Qvault, one of the features that was just added was “Offline Mode”. There is now a toggle switch at the top of the app that, when switched off, ensures that no network requests can be made by the app. Qvault has always been able to be used offline, assuming the …

Security in Dependencies

Choosing the right dependencies is a difficult task. Assuming the developer of an application is the best programmer in the world, the “best” thing to do would be to write the entire codebase alone. This would eliminate the bugs, vulnerabilities, and malicious intrusions of inferior developers. We at Qvault recognize that we aren’t the best developers in the world, but …

Guard Clauses: How to clean up Conditionals

One of the first techniques developers learn is the if/else statement. For obvious reasons if/else statements are a primary way to create logic trees, where calculations are handled differently depending on the input variables. However, complex and nested if/else statements become a cognitive burden to reason about, and can be hard for the next developer to understand quickly. Guard Clauses …

Automatic Cross-Platform Deployments with Electron on a CI Server (Travis)

This is a tutorial on how to setup an Electron app on Travis CI, so that new versions are deployed to Github Releases with a simple pull request. Boilerplate I created a boilerplate repo that has all the necessary configuration to deploy a minimalistic app to Github releases. If you get lost during the tutorial you can look to that …