Magic

Magic is an automation tool that allows you to wrap an existing database, creating CRUD HTTP endpoints. It relies upon a proprietary scaffolding technique, based upon reading meta information from your database schema. Magic generates code files, wrapping C# .Net Core controller endpoints, through a dynamic resolver that will resolve URLs to dynamically created Hyperlambda files. This process allows you to create a .Net Core Web API backend, wrapping your database in seconds, by literally clicking a button. Watch me “port” Sugar CRM below in 40 seconds using this technique.

In addition to automatically creating CRUD endpoints, it also automatically takes care of authentication, authorisation, logging, etc – In addition to allowing you to construct complex SQL statements, such as joins, that are associated with HTTP endpoints, allowing you to pass in parameters, that you are securely de-referencing in your SQL. It also allows you to manage your application, and its database, through its admin interface, providing a graphical user interface, through which you can perform most of the common tasks needed to administrate your data and application. Magic also perfectly integrates with native C#, and does not affect your development process in these regards negatively in any way. Magic is built in .Net Core and .Net Standard, and is extremely modular in its architecture.

Magic is the product of more than a decade of research and development, and several failed attempts, before being able to finally create the end result that you can see today. Most of Magic’s source code is publicly available online. Magic support MySQL and Microsoft SQL Server. You can read more about Magic here, and you can obtain a license to use Magic here.