So this has been a long time coming. I've had it on the list for years to see what it would take to create a completely custom CMS, and I finally did. I'm calling it BMOPS (Brian Morrison's Operations). Yeah its a silly name, but it rolls off the tongue real nice!

Quite honestly, this is mainly just a post to test things...

How It Started

So my website used WordPress as a backend because I really like the content editor. I didn't like the fact that I had to run my own server (or a VPS) to host it, where I'm always pitching serverless solutions as the answer to all the world's problems. I really would have liked to run just the editor component in a serverless environment, but it really looked like it was more work than its worth. So what else should a developer do than come up with their own solution!

I started playing around with TinyMCE. Turns out it integrates with Vue (my preferred JS framework) quite well. But then I stumbled upon a demo of someone parsing markdown in real time in a browser using Vue, and it got me thinking that this would be the approach to go.

And Here We Are

So that's exactly what BMOPS is for now. A Vue web app that uses the markdown-it library to render the markdown I type and saves all the data into DynamoDB using Lambda functions. One of the bigger customizations I created was a system where pasting an image into the editor uploads the image to S3 and returns an md-formatted image string into the editor. Like so;

https://cdn.brianmorrison.me/media/2020/a8cc5c12-0c50-4882-8b41-e1e832017cea.png

I've still got alot of work to do on it but when it's done, it will be the core dashboard where I run all my content creation through, including free and premium content.

I'll be sharing more over the next few weeks. Be sure to keep an eye on my Twitter account @brianmmdev for all the updates! Happy coding 🤓