Practical guides, tutorials, and insights from years of building web and desktop applications. Check out code examples you can actually use!
Here are the list of tools that I use in my developer life đ„đ„.
Almost all of the tools are free, or reasonably priced. We live in exciting times - a developer in a âdeveloping countryâ can do business globally by using the most amazing tools that humankind has produced.
Note before you scroll -
This will be a WIP post in perpetuity I am writing the post in mid 2020 and call it 2021 edition. If that does not convince you to stop reading, I am sure nothing can The list is focused on platforms and tools to make a developerâs life easier - I code mostly for the web (so YMMV) I consider programming platforms and languages âtoolsâ, but they are covered at the very end so that you can rage quit this page after scrolling all the way down This is not an ad and I will gain little from you agreeing with me (maybe affiliate income to make me a millionaire by accumulating pennies - but those will be clearly suffixed with afl, which stands for affiliate link) You may not share my love for these tools and that is ok. Donât waste your precious time to review, comment and try to justify why Pluto is not a planet (it is) Also - there is little of pretty pictures and marketing talk.
...
Here we see how to build a real-world client application for your FeathersJS backend. We will use Vue + Feathers-Vuex and quickly create the frontend app.
Building the Client Application Previously you saw how we could use Feathers to quickly build a backend application. The beauty of feathers is not only that it is quick to build, but it is also universal.
We can use FeathersJS and Feathers-Vuex (our choice of client storage) to conjure up a client application that totally blows away our users.
...
VueJS booster template is a boilerplate that has simple features that make it really easy to start new projects.
Vue CLI makes starting a Vue project simple -
vue create demo This sets up everything that you need to start - but just so. There are more than few things missing for a functioning/easy-to-use project :)
The Case for a New Boilerplate I take my role as a developer with every bit of smartness inherent in me. The problems faced with my back-end projects and my simple solution, booster project in AdonisJS, are very relevant to VueJS and other front-end experiments.
...
We have previously seen a simple todo app using FeathersJS(and NeDB).
Feathers makes it really easy to develop an API or a real-time app by providing a super-powered baseline that can be extended quickly to create a useful app. However, the example provided earlier does not provide a set of features anywhere near the real-world experience.
So, here we are talking about all the additional things that Feather could do - only if you let it. This is a FeatherJS + ObjectionJS + Feather-Vuex tutorial through building a totally real-world, simple CRM application called âFeatherLight CRMâ. We name it thus since all awesome apps deserve their own name and identity.
...
I have used AdonisJS in and out of projects in the last year. Despite itâs smaller community and not-so-regular enhancements, it remains one of my favourite NodeJS frameworks. I recommend AdonisJS for hobby and production projects in full confidence :)
I typically use AdonisJS for back-end, which has me start with -
adonis new awesomeness --api AdonisJS comes with a neat set of powerful features -
An ORM that works quite well Authentication and security already setup Basic features to serve API without pulling a thousand wires just to get started The Case for a New Boilerplate Even with all the features baked in the default boilerplate, I tend to just copy older projects -
...
Fastode is an experimental boilerplate / framework based on Fastify.
Why another boilerplate? Well, I just wanted to experiment with technologies to create MVP products.
Although I have used NestJS, AdonisJS and friends before, those frameworks, while being great, bring their structure and overhead to any project.
I wanted to check how difficult or easy it is to just start with a bunch of basic features and leave everything else to the project.
...
Do you see quasar dev stuck but no errors reported anywhere? The fix was quite easy - only the way to get to the fix was frustrating.
I faced this issue in a medium-sized project that I was playing around with. I was stupid enough to change a few lines in multiple components, and lo and behold - I donât see the changes being compiled. Restarting quasar dev doesnât help either.
...
Vue is great and Vuex makes it greater. But, how do you use them stores?
Vuex: You exy thing Vuex makes it a breeze to handle states, mutations and actions in Vue. All I need to do is follow a couple of steps.
Step 1: Select Vuex as an option when you create the Vue application (or, you can always add it later)
Step 2: Vuex is already added for you - see below code in main.js -
...
If given a choice to develop mobile apps, what is it going to be Capacitor, Cordova or something else altogether? Here are my glorious opinions on the matter.
The World of Mobile Apps - with VueJS As fans of VueJS, we have more than few options for mobile app development. A few popular ones are -
Vue Native - based on React Native but enables on Vue Native Script - has VueJS development option Capacitor - based on web view and Cordova Cordova - the age-old framework that is showing its age :) All of these technologies bring the ease of Javascript and the power of familiarity / developer experience of developing on Vue for creating mobile applications.
...
How do you create typical layouts in the the most popular Material Design styling libraries for Vue?
Creating layouts for your application Layouts help us standardize UI across the application.
For e.g., you have layouts to take care of -
Toolbar for the app and for views/components Navigation bars Standard controls (buttons/titles etc.) for list or detail views .. and so on. Vuetify and Quasar allow you to do your own thing, but I find the below way of creating layouts easiest.
...