Category Archives: Software Development

Anything to do with developing Apps, Desktop application, server application, API etc.

Adding Custom Context menu in Windows and my Rename Tool

I have been thinking of putting a custom context menu entry in my program, and this is the registry place to put your values into.

How to Add Any Application Shortcut to Windows Explorer’s Context Menu

And all you need to do is code your application to add them in your Visual Studio set up install function using the RegistryKey class in C# (at least), or use Inno Installer program to add a section as [Registry], the Inno Setup help is available if you need a reference.

I am thinking of creating a program that lets you rename all the filenames in a folder by adding a prefix or suffix or using regular expressions by right clicking the folder and call upon the program and a windows pops-up confirming your intention to rename.

Its very handy little tool , Im just in the process of putting them together. So the step would be:

  • Make the program
  • Create an installer for the program most likely use Inno Installer
  • Let the installer create the registry entry for you using { yourprogram.exe 1% } where the 1% is the folder path.
  • And run your program base on the folder path otherwise the user can select the folder to rename files.


Creating a C# application set up project with custom action

I have been looking to get  my C# application in Visual Studio to be packaged for easy installation.

I found a really good article that explains the steps and other custom action to be included in the installation set up as well.

It also bundles up the .NET Framework of your choosing as you install the program. Mainly Im trying to run a code that injects registry entry to the register while install is in process. As there are tons you can do to added functionality to your application using the registry in Windows.

Check this link out:

Credit to the Author of course I will look into this article for reference whenever I need to bundle up my application.

Important note: The Visual Studio Set up project isnt included in VS2012 and up, as they have a different installer used, you might need to download the old installer project at this location:

What is DevOps?

A new term for new-comers or old timer like myself going back to their field. This term seem to be toss around anywhere I look, I found a video that would explain what it actually means and why it is important.

Summary: A DevOps is term where Developers and Operators collaborates to build a working system to eliminate issues that could arise when a feature needed by a developer isnt present on the platform a product they are implementing.The video below will explain further.

Challenge#1: Angularjs Shopping Cart

Here is a challenge to me. Create an Angularjs app using various technology that I have encountered during my learning.


  • AngularJS
  • Express
  • ejs templating
  • ui-bootstrap
  • Gulp for task runner and build
  • REST api call or database call using MySql
  • Sass for styling
  • NodeJS and other nodeJS plugin
  • GitHub

This is just a simple SPA(single page) where the app gets its products from a REST api call or a query to a mysql database, and presented to the visitor. The visitor will add items to the shopping cart, fill up a form and submit their details until the last check out page.

There is alot going on this application. I will also make a repository on Github so I can grab the project anywhere I use a different computer. My goal is to create the application within a month. And hopefully will teach me a whole lot more about AngularJS.

Wish me luck!

NPM: Used commands and reference

NodeJS: NPM Most used commands credit to

Original URL:

The most commonly used npm commands

After setting up n node.js development environment, you need to know some basic commands of node package manager npm. The followings are the most commonly used ones.

Install package globally. Global packages are usually for executable commands.

$ npm install <package name> -g
# example
$ npm install express -g
# now we can use express to generate a new app
$ express new app

Install package locally. Local packages are for the use of require/import in your app/folder.

$ cd /path/to/the/project
$ npm install <package name>
# example
$ npm install express
# now you can use `var express = require( ‘express’ );` in your app

Uninstall global package.

$ npm uninstall <package name> -g
# example
$ npm uninstall express -g

Uninstall local package.

$ cd /path/to/the/project
$ npm uninstall <package name>
# example
$ npm uninstall express

Search package.

$ npm search <package name>
# example
$ npm search express

List global packages.

$ npm ls -g

List global package with depth

$npm ls -g –depth-level=0

List global packages detail.

$ npm ls -gl

List local packages

$ cd /path/to/the/project
$ npm ls

List local packages detail inside local project

$ cd /path/to/the/project
$ npm ls -l

Update global packages.

$ npm update -g

Update local packages.

$ cd /path/to/the/project
$ npm update
Using `package.json` to manage your app packages

With a package.json file in the root of your app dir, you don’t need to manually install every package.

Instead of doing

$ cd /path/to/the/project
$ npm install mongoose
$ npm install express
$ npm install jade

Create a package.json file in the root of your app dir

$ cd /path/to/the/project
$ touch package.json


“name”: “your app name”
, “version”: “0.0.1”
, “private”: true
, “dependencies”: {
“express”: “>=2.5.0”
, “jade”: “>= 0.16.4”
, “mongoose”: “>=2.3.10”

Then type in the following command all your packages will be installed.

$ npm install -l

Then if you found a package that needs to be in your package.json. Add –save or –save-dev on your “npm install …”.

for eg: “npm install react –save” 

This adds react to your “dependencies” object in your package.json. The other one is –save-dev , the package will be added to your “devDependencies” entry. As you know devDependencies are not outputted in your production ready file, its only for use as you develop. Help us developers a bit 🙂