Premium Cabinet Refinishing & Repair Services in Southeast North Carolina
| Component | Status | Notes |
|---|---|---|
| Live Website | ✅ Production | Deployed to GoDaddy cPanel, live at pleasureislanddesign.com |
| Contact Forms | ✅ Enhanced | Production-ready with rate limiting, validation, logging |
| Newsletter | ✅ Enhanced | Duplicate prevention, subscriber tracking |
| Reviews API | ✅ Ready | Google Places integration (pending API key config) |
| Blog Scheduler | ✅ Ready | Bulk-write, staggered-release automation system |
| Unit Tests | ✅ 24/24 Pass | Full security & validation coverage |
| Phase 3 Roadmap | 📋 Planned | Swag store, gallery expansion, SEO, wiki, chatbot |
See: BUGFIX_1.md (forms, reviews, blog scheduler, deploy + API setup) | PHASE3_ROADMAP.md (Phase 3 plan)
Pleasure Island Design specializes in high-quality cabinet refinishing and repair services, transforming kitchens with affordable luxury and minimal disruption. We deliver expert craftsmanship with a seamless process that enhances homes across Southeast North Carolina.
- Service Area: Wilmington, Kure Beach, Carolina Beach, and surrounding areas
- Specialties: Cabinet refinishing, refacing, repair, hardware installation, custom modifications
- Timeline: Most projects completed in 5-8 days
- Award-winning: Voted Neighborhood Favorite in 2021 & 2023 by Nextdoor
This repository is now the complete digital home for Pleasure Island Design LLC — public website + professional, searchable business archive and institutional knowledge base.
We are actively migrating and AI-enhancing business documents (marketing plans, strategy, operations, hiring, brand assets) from Google Drive using a turn-key multi-AI pipeline (Grok + Claude + GPT Codex + Gemini + Copilot).
See the full system: business/README.md on the feature/ai-digital-home-archive branch (or soon main).
This unlocks:
- Single source of truth for decision making
- Rich, authentic content for website blog, whitepapers, and marketing
- Version history and provenance for all business knowledge
- Foundation for future internal AI tools (RAG over your own docs)
Current Status: Foundation structure seeded. Pilot ingestion in progress. Contributions welcome via the documented workflow.
- Node.js 20+ (Download)
- npm 10+ (included with Node.js)
- Git
# Clone the repository
git clone https://github.com/willyd61/pleasureislanddesign.com.git
cd pleasureislanddesign.com
# Install dependencies
npm install --legacy-peer-deps
# Run linters locally (recommended before committing)
npm run lint# Check code quality
npm run lint # Run all linters
npm run lint:html # HTML validation only
npm run lint:css # CSS linting only
npm run lint:js # JavaScript linting only
# Fix formatting issues automatically
npm run format
npm run format:check # Check without fixing.
├── index.html # Main website file
├── styles.css # Stylesheet
├── js/
│ └── pleasure-island-scripts.js # JavaScript functionality
├── img/ # Logo, awards, hero images
├── gallery/ # Before/after project photos
├── business/ # NEW: AI-augmented business archive & knowledge base (see business/README.md)
├── .github/
│ └── workflows/
│ └── ci.yml # Automated testing on PRs
├── package.json # Dependencies & npm scripts
└── docs/ # MkDocs technical reference & whitepapers
└── CONTRIBUTING.md # Developer guidelines
We follow a structured development workflow to maintain code quality and reliability.
-
Create a branch for your feature/fix:
git checkout -b feature/your-feature-name
-
Make your changes and test locally:
npm run lint # All checks must pass npm run format # Fix formatting
-
Commit with clear messages:
git commit -m "Brief description of changes" -
Push and create a Pull Request:
git push -u origin feature/your-feature-name
-
Address review feedback — CI checks must pass before merging
For complete guidelines, see CONTRIBUTING.md
All code is automatically validated using:
| Check | Tool | Purpose |
|---|---|---|
| HTML | HTMLHint | Validates syntax, alt tags, structure |
| CSS | Stylelint | Checks consistency, prevents errors |
| JavaScript | ESLint | Enforces style, catches syntax errors |
| Assets | Custom | Detects broken image references |
| Links | Custom | Verifies anchor links are valid |
| Security | Custom | Scans for hardcoded secrets |
✚ All PR checks must pass before code can be merged.
- Optimize before committing — use tools like TinyPNG or ImageOptim
- Use relative paths —
gallery/image.jpgnot/gallery/image.jpg - Require alt text — all images must have descriptive alt attributes
- Format: JPG for photos, PNG for graphics, WebP for modern browsers
- Before/after project photos stored in
gallery/{project-name}-{year}/ - Naming convention:
before-1.jpg,after-1.jpgetc. - File names should not contain spaces
- Follow the AI-assisted workflow in business/README.md
- Always include provenance and structured metadata
This static website is hosted on a web server.
To deploy changes:
- Merge your PR to
mainbranch - Changes automatically sync to production via your hosting provider
- No build step required (static HTML/CSS/JS)
Business Inquiries:
- Phone: (910) 444-1230
- Email: pleasureislanddesign@gmail.com
- Address: 3720 Carolina Beach Road, Suite F, Wilmington, NC 28412
Follow Us:
This project is licensed under the Apache License 2.0 — see LICENSE file for details.
What this means:
- ✅ You can use, modify, and distribute this code
- ✅ Commercial use is permitted
- ✅ You must include a copy of the license
- ✅ You must state significant changes made to the code
- ❌ The software is provided "as is" with no warranty
- HTML: Use semantic tags, require alt attributes for images
- CSS: Keep it simple, avoid deep nesting, use meaningful class names
- JavaScript: Use
const/let(nevervar), strict equality (===), descriptive names
Descriptive title under 50 characters
Optional detailed explanation of why this change was made.
Wrap at ~72 characters.
action: brief description (e.g., "fix: broken mobile menu", "feat: dark mode toggle")
Use docs(business): or feat(archive): for archive work.
Phase 2 (Upcoming):
- Enhanced feature development
- Performance optimization
- Accessibility improvements
Phase 3 (Future):
- Modern design system (Claude Design)
- User interaction tracking
- Content management system
Parallel Enabler: AI Digital Archive (see business/README.md)
- Complete migration of Google Drive remnants
- Populate knowledge-base/ with insights
- Integrate summaries into website content & whitepapers
-
Always pull before you push:
git pull origin main
-
Test locally before committing:
npm run lint
-
Write clear commit messages so the team understands what changed and why
-
Ask questions — reach out if something is unclear
-
Keep it simple — small, focused commits are easier to review
- MDN Web Docs — HTML/CSS/JavaScript reference
- ESLint Rules — JavaScript style guide
- Git Documentation — Version control help
- Semantic HTML — Best practices
Q: How do I report a bug? A: Create an issue on GitHub with clear steps to reproduce and expected vs. actual behavior.
Q: Can I modify the design? A: Yes, but discuss major changes with the team first. Submit a PR for review.
Q: What if I break something? A: Don't worry — we have version control. Create a new PR with the fix and reference the original issue.
Q: How often do we deploy?
A: Changes merge to main when PR checks pass. Deployment happens automatically via your hosting provider.
Q: How do I contribute to the business archive? A: Follow the turn-key workflow in business/README.md. Use AI assistance heavily.
Last Updated: June 2026 (AI Digital Home Initiative added)
Version: 1.1.0
Maintained by: Pleasure Island Design LLC + multi-AI collaboration
For questions or suggestions, open an issue on GitHub or contact us directly.