Sign in

Systems Design • Social Innovation • Cloud • ML

Command and Query Responsibility Segregation with MediatR

Today, we’re goinng to talk about CQRS pattern and how you can implement it using .net core for a Web API. To the people who don’t know what that is, CQRS means Command and Query Responsibility Segregation, big name I know, but at a glance you can understand that is has something to do with segregating resposibility, ish! right? Well let me explan. Implementing CQRS in your application can maximize its performance, scalability, and security. …

Prior to .NET 3.5, we (developers) often used to write ADO.NET code or Enterprise Data Access Block to save or retrieve application data from the underlying database. We used to open a connection to the database, create a DataSet to fetch or submit the data to the database, convert data from the DataSet to .NET objects or vice-versa to apply business rules. This was a cumbersome and error prone process. Microsoft has provided a framework called “Entity Framework” to automate all these database related activities for your application. …

I know that IoT is not my usual expertise, but as Alan Kay once said “People who are really serious about software should make their own hardware.” This little Wi-Fi enabled camera module (ESP32-CAM AI-THINKER) can add some value to your IoT projects, home automation and other pet projects that you’re curruntly working on so let’s jump right in.


ESP32-CAM is a low-cost ESP32-based development board with onboard camera, small in size. It is an ideal solution for IoT application, prototypes constructions and DIY projects.

The board integrates WiFi, traditional Bluetooth and low power BLE , with 2 highperformance 32-bit…

And how to migrate.

On November 10th 2020, Microsoft announced .NET 5.0, marking an important step forward for developers working across desktop, Web, mobile, cloud and device platforms. In fact, .NET 5 is that rare platform update that unifies divergent frameworks, reduces code complexity and significantly advances cross-platform reach. NET 5.0 is already battle-tested by being hosted for months at and (version).

What & Why

With this release (of course after on preview for around an year) they merged the source code streams of several key frameworks — .NET Framework, .NET Core and Xamarin/Mono. …

On 19th of May 2020, Blazor WebAssembly 3.2.0 was released by Microsoft, which is the fully-featured and supported release of Blazor WebAssembly that is ready for production use.

What is Blazor?, you might ask. Let me give you a straight forward answer to that. As advertised, Blazor is an open source and cross-platform web UI framework for building single-page apps(SPAs) using .NET and C# instead of JavaScript.

Blazor is based on a powerful and flexible component model for building rich interactive web UI. You can implement Blazor UI components using a combination of .NET code and Razor syntax: an elegant…

Cloud text recognition

Chances are that in some point your life you wanted to do this so badly for any of your projects, if you’re like me. I did many things to achieve this, but doing it on mobile is the greatest superpower that you can ever have.

Before starting this, do take a look at the official documentation for updated content. One thing to keep in mind is that here I’m talking about cloud text recognition and not ‘on device text recognition’. Also note that this method is for images, not for images of documents.

This time I thought of visualizing audio from JavaScript. There’s no reason for why I wanted to do this in the first place! but, I thought it would be interesting to do and in the process, learn something new. Here’s what I learned.

Prerequisites -

  1. Basic understanding about JavaScript and node.js
  2. Basic mathematical knowledge is an advantage.

You can clone the project from here, and follow along.

git clone

Project setup with p5.js

We’re doing this from p5.js, advertised as ‘a JavaScript library for creative coding, with a focus on making coding accessible and inclusive for artists, designers, educators, beginners, and anyone else!’…

Nishan Chathuranga Wickramarathna

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store