Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

PropertyWebBuilder Documentation

Welcome to PropertyWebBuilder's documentation. This folder contains guides and references for understanding and working with the multi-tenant real estate website platform.

Quick Start

New to the codebase? Start with the numbered guides at the root:

  1. 01_Overview.md - High-level system overview
  2. 02_Data_Models.md - Database models and relationships
  3. 03_Controllers.md - Controller architecture
  4. 05_Frontend.md - Frontend technologies
  5. 07_Assets_Management.md - Asset pipeline

Documentation by Topic

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

Key References

Reading Guide by Role

For Developers

  1. Start with numbered guides (01-07)
  2. Then explore architecture/ for system design
  3. Check multi_tenancy/ for tenant isolation

For DevOps/Infrastructure

  1. deployment/ - Platform-specific guides
  2. provisioning/ - Website provisioning
  3. caching/ - Performance optimization

For Frontend Developers

  1. theming/ - Theme system
  2. frontend/ - Stimulus and frontend implementation notes
  3. branding/ - Design guidelines

Quick Commands

Create a New Website

rake pwb:db:create_tenant[subdomain]

List All Websites

rake pwb:db:list_tenants

Run Tests

bundle exec rspec

File Structure

docs/
├── 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

Recent Updates

December 2024

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_attachment and blob in the with_eager_loading scope.

Documentation

  • Moved SEED_DATA_*.md files to docs/seeding/ folder
  • Updated seeding documentation index
  • Added recent fixes section to search implementation plan

Last Updated

2024-12-25 - Added UI documentation folder, documented recent search fixes