Welcome to PropertyWebBuilder's documentation. This folder contains guides and references for understanding and working with the multi-tenant real estate website platform.
New to the codebase? Start with the numbered guides at the root:
- 01_Overview.md - High-level system overview
- 02_Data_Models.md - Database models and relationships
- 03_Controllers.md - Controller architecture
- 05_Frontend.md - Frontend technologies
- 07_Assets_Management.md - Asset pipeline
| Folder | Description |
|---|---|
| admin/ | Admin interface and tenant management |
| api/ | REST API documentation plus legacy GraphQL migration notes |
| architecture/ | System architecture, page parts, property models |
| authentication/ | Auth flows, Devise, OAuth, Firebase |
| branding/ | Brand guidelines and CSS variables |
| caching/ | Caching strategies and performance |
| deployment/ | Deployment guides (Render, Dokku, etc.) |
| email/ | Email system and multi-tenant email |
| field_keys/ | Field keys system for property customization |
| firebase/ | Firebase setup and troubleshooting |
| migrations/ | Major migration guides (Globalize, CarrierWave) |
| multi_tenancy/ | Multi-tenant architecture and routing |
| provisioning/ | Website provisioning workflows |
| seeding/ | Seed packs and sample data |
| seo/ | SEO implementation and meta tags |
| signup/ | Self-service signup flow |
| testing/ | Testing guides (RSpec, Playwright) |
| theming/ | Theme system and Tailwind CSS |
| ui/ | UI specifications and search improvements |
| claude_thoughts/ | Claude's research notes and analysis |
- DEVELOPMENT.md - Development setup guide
- architecture/CODE_REFERENCES.md - Code snippets with file paths
- Start with numbered guides (01-07)
- Then explore architecture/ for system design
- Check multi_tenancy/ for tenant isolation
- deployment/ - Platform-specific guides
- provisioning/ - Website provisioning
- caching/ - Performance optimization
- theming/ - Theme system
- frontend/ - Stimulus and frontend implementation notes
- branding/ - Design guidelines
rake pwb:db:create_tenant[subdomain]rake pwb:db:list_tenantsbundle exec rspecdocs/
├── 01_Overview.md # System overview
├── 02_Data_Models.md # Database models
├── 03_Controllers.md # Controllers
├── 05_Frontend.md # Frontend
├── 07_Assets_Management.md # Assets
├── DEVELOPMENT.md # Dev setup
├── architecture/CODE_REFERENCES.md # Code snippets
│
├── admin/ # Admin interface
├── api/ # API docs
├── architecture/ # System design
├── authentication/ # Auth system
├── branding/ # Brand guidelines
├── caching/ # Performance
├── deployment/ # Deploy guides
├── email/ # Email system
├── field_keys/ # Field customization
├── firebase/ # Firebase setup
├── migrations/ # Migration guides
├── multi_tenancy/ # Tenant isolation
├── provisioning/ # Website setup
├── seeding/ # Seed data
├── seo/ # SEO guides
├── signup/ # Signup flow
├── testing/ # Test guides
├── theming/ # Theme system
├── ui/ # UI specs & search
└── claude_thoughts/ # Research notes
Search System Improvements (see ui/SEARCH_THEME_IMPLEMENTATION_PLAN.md)
- URL-based search state management across all themes
- Turbo Frames integration for seamless search updates
- Filter population from URL parameters
Bug Fixes
- List View Layout - Fixed search results list view showing vertical cards instead of horizontal layout. CSS now properly controls flex-direction for grid vs list views.
- Font Awesome Icons - Added Font Awesome 6.5.1 to Bologna theme (was missing, only had Phosphor Icons). Property feature icons (bed, bath, area) now display correctly.
- N+1 Queries - Fixed N+1 query issue for property photos by adding eager loading of
image_attachmentandblobin thewith_eager_loadingscope.
Documentation
- Moved
SEED_DATA_*.mdfiles todocs/seeding/folder - Updated seeding documentation index
- Added recent fixes section to search implementation plan
2024-12-25 - Added UI documentation folder, documented recent search fixes