On Christmas Eve 2016, I released PropertyWebBuilder as open source. I had dreams of building a community, changing how real estate agencies approached technology, and proving that open source could compete with WordPress in the property sector.
Eight years later, I'm writing this from the other side of an extraordinary journey—one that saw my project go from promising beginnings, to near-abandonment, to an AI-powered revival that has fundamentally changed how I think about software development.
The Beginning: A Gap That Needed Filling
It started in late 2015. A friend convinced me there was a gap in the market for real estate websites. Being a Rails developer, I looked around and noticed something surprising: there was no good open source solution for building real estate websites in the Rails ecosystem.
WordPress dominated the space by default, not by choice. Agencies paid for bloated themes, fought with plugins, and accepted mediocre performance because there wasn't a better option.
I built PropertyWebBuilder to change that. Within months of its December 2016 release, the project gained traction—over 100 GitHub stars, positive feedback from developers who tested it, and a small but enthusiastic community forming around it.
"My goal was to grow it as a platform that introduces talented developers to the sector and changes the attitudes of realtors to open source."
2017 was the golden year. I released five versions, adding Vue.js, Google Maps integration, multilingual support, a CMS, and social sharing. The admin panel was built with EmberJS. Users could deploy to Heroku with a single click. It felt like the project had momentum.
The Drift Into Dormancy
Then life happened.
I released v1.4.0 in February 2020, adding geocoding and Facebook authentication. It would be the last significant release for nearly five years.
The codebase sat at Rails 5.2. EmberJS fell out of favour. Dependencies grew stale. Security patches piled up. I'd occasionally merge a pull request or update a gem, but the meaningful development stopped.
During this time, I watched the project from a distance. GitHub stars slowly climbed to 580. Forks reached 268. The Open Collective had modest funds. People still discovered it, still tried it out. But I knew the truth: PropertyWebBuilder was becoming a relic.
The Numbers Tell the Story
(4 years)
(6 months)
The guilt of an abandoned side project is something most developers know well. I wanted to modernize PWB. I had ideas. But the mountain of work required to upgrade Rails, rewrite the frontend, refactor the architecture, update dependencies, fix tests—it was overwhelming for a solo developer with a day job.
Enter AI: The Unexpected Partner
In early 2024, I started experimenting with AI coding assistants. At first, I used them for small tasks—writing tests, explaining unfamiliar code, generating boilerplate. But gradually, I began to see a different possibility.
What if AI could help me tackle the big stuff?
I started with the Rails upgrade. Rails 5.2 to 6.1. Then 6.1 to 7.0. Then 7.0 to 8.0. Each jump came with breaking changes, deprecation warnings, and gem incompatibilities. With AI assistance, what would have taken weeks of frustrated debugging became manageable sessions of systematic problem-solving.
The real breakthrough came when I decided to completely rethink the architecture. PropertyWebBuilder had started as a Rails engine—a gem you could mount in an existing Rails app. This made sense in 2016, but it added complexity and limited what I could do.
With AI as my coding partner, I converted the entire project to a standalone application. Then I added full multi-tenancy with the acts_as_tenant gem. I experimented with Vue.js 3 and Quasar for the admin panel, but eventually decided to go fully native—Rails-rendered views with Tailwind CSS throughout. Then I migrated from Cloudinary to ActiveStorage.
Each of these would have been a multi-month project for a solo developer. Together, they happened in six months.
What AI Actually Did (And Didn't Do)
I want to be clear about something: AI didn't write PropertyWebBuilder 2.0 for me. What it did was remove the barriers that had kept me from writing it myself.
Here's what AI was genuinely useful for:
- Boilerplate and repetition. Generating migrations, writing similar controller actions, creating test fixtures—the tedious work that saps motivation.
- Debugging and troubleshooting. When Rails 8 behaved differently than Rails 5, AI helped me understand why and how to fix it.
- Learning new patterns. I hadn't used Tailwind CSS extensively before. AI accelerated my learning curve dramatically.
- Refactoring with confidence. Major architectural changes are scary. Having an AI explain implications and catch potential issues made bold moves feel safer.
- Documentation and tests. The boring-but-essential work that often gets skipped.
What AI couldn't do:
- Make architectural decisions. I had to decide to go multi-tenant, to choose Tailwind, to restructure the property models. AI helped implement those decisions, not make them.
- Understand the domain. Real estate has specific requirements. AI doesn't know what agencies actually need.
- Maintain quality standards. AI generates plausible code. It takes human judgment to know if that code is actually good.
"AI didn't replace the developer. It gave a solo developer the power of a full team."
The Result: Version 2.0
In December 2024, I released PropertyWebBuilder 2.0. Looking at the changelog, it's hard to believe it's the same project:
The new version has three modern themes (Brisbane, Bologna, Bristol), Firebase authentication, a seed packs system for quick deployments, faceted search, comprehensive SEO, and deployment guides for over 10 platforms.
More importantly, it has a foundation I can build on. The code is clean, modern, and maintainable. Tests actually pass. Documentation exists. For the first time in years, I'm excited about what comes next.
Lessons for Other Open Source Maintainers
If you have a dormant project you've been meaning to revive, here's what I learned:
1. AI is a force multiplier, not a replacement. You still need to know what you're building and why. AI amplifies your capabilities; it doesn't replace your judgment.
2. Don't be afraid to break everything. PropertyWebBuilder 2.0 is essentially a rewrite. I kept the name, the spirit, and some of the code—but I didn't try to incrementally patch my way from v1 to v2. Sometimes you need a clean break.
3. Document as you go. AI is excellent at generating documentation. Use it. Future you will be grateful.
4. The best time to revive your project was years ago. The second best time is now. AI has changed the economics of software development. Tasks that were prohibitively time-consuming for solo developers are now feasible.
What's Next
PropertyWebBuilder is now available as a hosted service. Agencies can get a professional real estate website starting at $10/month without touching any code. For developers, the entire codebase remains open source under the MIT license.
I'm back to active development. The roadmap includes MLS integrations, mobile apps, more themes, and features I couldn't have considered when I was mired in technical debt.
Eight years ago, I set out to build something that would change how real estate agencies think about their websites. After a long detour, I'm finally back on that path—with an AI copilot riding shotgun.
PropertyWebBuilder is open source and available on GitHub. If you'd like to support the project, consider becoming a backer on Open Collective.