I read through the tutorials, watched the videos, and learned how to make a todo list application (modern equivalent to hello world). Then realized I should code something I can launch. So today I launched Open SEO
The front-end is build with ReactJS. I used the react command line utility to configure my project and it was very enjoyable. I quickly had a skeleton project up and running with hot loading and build tools. While it tool some time to get used to JSX, React was a pleasure to work with. You can find the code on GitHub
There are not many useful applications you can make that lives completely inside a single webpage, so Open SEO has a corresponding API and uses axios for all ajax calls. The API leverages AWS Lambda functions and Route 53. These are two tools I’ve used successfully in the past. For this project I used ClaudiaJS to quickly deploy the API. ClaudiaJS worked very well, and by using it’s express tie-ins I was able to have a quick and familiar local development environment. The API is also on GitHub
Finally I added a hugo powered blog. Hugo is very easy to setup and use (it’s powering this website) and was surprisingly easy to integrate with the react app. I’m hoping this blog can eventually become an SEO resource and to that end I will allow guest posting through GitHub pull requests at https://github.com/jluterek/open-seo-blog.
Everything is hosted on Amazon AWS and by leveraging serverless technologies the website should scale indefinitely while keeping costs at a minimum. Overall this was a fun and informative project that I will hopefully build on in the future. It’s also nice to work on something that can be released as open source.
Go check it out by visiting https://www.open-seo.org.