The first post on this site was written on July 27th, 2004. Wow, nearly 14 years ago. I believe it was written on Scott Watermasysk’s .Text platform, at least that is the first blogging platform I remember running for real. I eventually followed the upgrade path to and through several versions of Telligent’s Community Server while I was an employee and huge fan. When Telligent released Graffiti CMS I quickly moved to that and have been happily letting it run quietly and surely since then. But Graffiti is quite long in the tooth, I do not feel like reviving it, and I would rather work in Node/React.
Alas the time has come. Goodbye Graffiti, thank you for loyally serving me so well the last seven or so years. Your contributions will not be forgotten.
This blog is now running on Gatsby. I stumbled upon a mention of GatsbyJS a few weeks ago and took a few minutes to check it out. The more I read about it the more I liked. Modern web tech… check; scales well… check; Node… check; React… check; GraphQL… cool; blazing fast… Excellent! But it is a “static” site generator and I need a dynamic data-driven platform for my blog… or so I thought. I read about how Gatsby generates pages from Markdown files and then about how it can also use other data sources like Wordpress or a CMS. My immediate thought was that if it could pull in data from any other type of data source then it ought to be able to pull in posts from my old Graffiti Sql Server database. After viewing some of the demo sites for the Gatsby Starter Kits, I studied the list of Gatsby Plugins but sadly did not find anything that was exactly what I needed, even though I did not expect to. Not to be disuaded I installed the CLI, installed a basic starter kit and set about figuring how to bend it to my will. I spent some time looking at other source plugins and the documentation for building one. Then I set about writing a plugin to pull data from my Graffiti database, my first Gatsby plugin: gatsby-source-graffiti-sqlserver (more details on this in a later post). After I got that working I installed some additional plugins and tailored the site to my liking.
Some of the plugins, packages and the starter kit I used include:
As mentioned above I plan to dive into more detail on some of the implementation details in upcoming posts. So far I really like working with Gatsby and I have been having a lot of fun. Have you looked at or worked with Gatsby yet? If so, have you built anything cool? What have your experiences been? Let me know through the comments below or give me a shout at @danhounshell on Twitter.