Scaling with Docker Compose and Configuring Load Balancer

Recently I was creating a load balancer for my web api with nginx. Since I was using docker to test in my local machine, I used the scale arguement to scale my Web API container. nt.authservice.service:ports:-"8101-8105:80" Scaling using docker-compose -f server\nt.microservice\docker-compose.yml -f server\nt.microservice\docker-compose.override.yml up --scale nt.authservice.service=5 -d This however resulted in following error. Error response … Continue reading Scaling with Docker Compose and Configuring Load Balancer

GraphQL Day 004 : Subscriptions

So far we have seen Queries and Mutations in GraphQL. It is now time to look into third and final key component of the triage - Subscriptions. Subscriptions allow GraphQL servers to send real time updates to subscribed clients when particular events occur. This allows clients to support real-time functionality by having the servers push the updates … Continue reading GraphQL Day 004 : Subscriptions

Tristate checkbox in Vue JS

HTML 5 does support checkboxes with tri-state (true, false, indeterminate). Indeterminate refers to a state where it is not either checked or unchecked. This works fine, however, once an checkbox moves from indeterminate to true/false, it can not go back to indeterminate. This was when I had to research a bit (and I did not want to use … Continue reading Tristate checkbox in Vue JS

GraphQL Day 003 : Defining Mutations

Until now, we dealt with, what we could call a readonly system. In other words, we defined queries which does not alter the system. But what if we intent to alter the system, for example, we want to add a new record. This is where mutation comes into the play. The mutation type in GraphQL is used … Continue reading GraphQL Day 003 : Defining Mutations

GraphQL Day 002 : Type Definition basics

Earlier in this series, we will created our first GraphQL Server. If you had noticed we defined our data types as plain C# classes. This was a simple example of Annotation based approach, though actually we did not use any annotation. However, things can change when one needs to expose another query resolver. Annotation Based … Continue reading GraphQL Day 002 : Type Definition basics

GraphQL Day 001: Creating your first GraphQL server with HotChocolate

In the earlier part of the series, we familiarized ourselves with the different building blocks of GraphQL. We also understood the need of GraphQL and how it fares compared to REST endpoints. In this post, we will create our first GraphQL server. For sake of this example, we will be using the HotChocolate library for building our … Continue reading GraphQL Day 001: Creating your first GraphQL server with HotChocolate

GraphQL Day 000 : Introduction to Building Blocks

In this series of articles, we will walk through GraphQL and understand its importance in modern applications. Introduced by Facebook, and later moved to newly established GraphQL foundation, GraphQL has become integral part of modern applications. Day 00 : Introduction to the building blocks Day 01: Creating your first GraphQL server with HotChocolate Day 02 : … Continue reading GraphQL Day 000 : Introduction to Building Blocks

Running MongoExpress in Docker : Solving the connection issue

In this post, we will attempt to run MongoDb and Mongo Expres on docker. That doesn't look challenging, then why a post dedicated to the same ? This is because of one common mistake that developer tends to do (oh yes, I made the mistake) and end up wondering why it doesn't work as desired. Let us write our … Continue reading Running MongoExpress in Docker : Solving the connection issue

Axios, Typescript and Vue 3

In this post, we will aim to create a clean architecture for accessing a rest endpoint, using Axios with Typescript and Vue 3. The key focus here would be to how structure your typescript classes to increase code reuse and isolating the actual axios calls. The approach I follow now is based on building an … Continue reading Axios, Typescript and Vue 3

Child Component Validation using Vuelidate

In this post, we will attempt to validate a form, which contains Child Components while submitting. This is a common scenario that one might face in real life. In this example, we will use the Vuelidate Library for validation. Let us first define the Parent Component. <template> <form @submit.prevent="onManualSubmit"> <label for="name">Name</label> <input id="name" type="text" v-model="name" /> <label for="caption">Caption</label> <input … Continue reading Child Component Validation using Vuelidate