The purpose of this solution is to provide a head-to-head comparision between JS and C# app development. What it covers are the basics: - Basic app architecturing. - OOP in JS (Class modelling, encpasulation, composition, etc.). - JS delegation, event simulation. - Other JS fun stuff. To achieve these ideas we will create a simple CRUD app that manages contacts. Requirements: - Create and app that is able to: - Create a new contact Entry. - Edit an existing contact. - Remove an existing contact. - Link similar contacts together. - View contacts - Ability to filter/search - Ability to Sort - Ability to Group per letter