Someone, I think it was Scott Hanselman, once said a few years ago, that if you are a web developer and you blog, then you should create and use your own blog application, so I have decided to do just that. While I have been using ASP.NET Core for a few months now, I have decided that this will be a good exercise in learning some of the new features of ASP.NET Core, and because I like to blog I will describe what I am doing here in my own blog.
Currently this blog is running DNN Platform using the Community Blog module. DNN is a Content Management system and is somewhat overkill for a simple blog site. It also requires a SQL Server database so hosting is this site on Azure costs about $25 a month. Once my application becomes usable I will be switching to my new blog application, which will enable me to test it in Production as well as reduce my Azure bill.
Naif is a much less common variation for naive. In fact both words came to the English language from Middle French where naif is the masculine form and naive is the feminine form of the adjective. So naif and naive both mean the same thing “to show an unaffected simplicity”, and that is the goal of this application, to be a simple minimalist blog application.
I have been inspired by Mads Kristensen’s MiniBlog. While MiniBlog was written in ASP.NET WebPages, Naif.Blog will be written using ASP.NET Core 1.0, and as a result should run cross-platform.
As I have been inspired by MiniBlog my initial Goals and Features are modelled after its designs goals. The most important being:
- Best-in-class Performance
- Open Live Writer support
- We all love Open Live Writer to create our blog posts.
- No database required
- Support the same XML format as MiniBlog and BlogEngine.NET
- Support for json files
- Optional SQL Database using Entity Framework Core 1.0
- Uses latest Web Technologies
- HTML5, ES 2015,
- Should be easy to create your own templates
- Works on Azure
I will be open souring the application and at each stage of development I will tag the repository with a label, so if you follow along with the blog, no matter when you read it you will be able to find the code that matched the state of the codebase at the time each blog post is written.
The source for Naif.Blog can be found at https://github.com/cnurse/Naif.Blog.