I've been running this site for free for a while now. So I thought I'd write a post about it.
Key Considerations for a Personal Project Platform
Simplicity
I wanted to avoid complex, time-consuming setups. My ideal solution would be straightforward to use and require minimal configuration.
Maintainability
Maintainance should be as effortless as possible. I wanted a solution that would require minimal upkeep and allow me to make updates or changes easily.
No Running Costs
I didn't want to pay for this webiste. This meant finding tools that were either free or offered a generous free tier that could accommodate my needs.
The Chosen Tech Stack
After evaluating my options based on these considerations, I selected a set of tools that best fit my criteria for simplicity, maintainability, and cost-efficiency.
Zola for Content Management
Zola emerged as the ideal choice for managing and presenting content. Its simplicity and speed eliminated the need for extensive web design or frontend coding skills, allowing me to focus on content creation.
Google Cloud Run for Serverless Deployment
Google Cloud Run offered a serverless deployment solution that perfectly aligned with my need for ease of use and scalability. Its ability to manage infrastructure automatically meant that I could ensure my site's availability without constant oversight, and the cost? Almost negligible for my modest needs.
GitHub Actions for Automation
Automating builds and deployments was crucial for maintaining an up-to-date and secure site. GitHub Actions provided a powerful, integrated CI/CD solution that worked seamlessly with my GitHub repository, streamlining my workflow and saving valuable time.
Cloudflare for Security and Performance
Last but not least, Cloudflare played a pivotal role in securing my site and enhancing its performance. By leveraging its CDN capabilities, I was able to protect my site from potential threats and ensure fast load times for users worldwide.
Conclusion
Building a tech stack for a personal project requires a careful balance of functionality, ease of use, and cost. By focusing on simplicity, maintainability, and low running costs, I was able to select a set of tools that met my project's needs.