Mission: Public-facing website and secure stakeholder dataroom for ConnieRTC - the multi-tenant communication platform for nonprofit organizations.
# Navigate to the project
cd /Users/cjberno/projects/connie/connie.one/src
# Install dependencies (first time only)
pnpm install
# Start development server
pnpm devThat's it! Your local development environment is now running:
- π Website: http://localhost:3000
- π§ Admin Panel: http://localhost:3000/admin
- π Dataroom: http://localhost:3000/dataroom
- Visit http://localhost:3000/admin
- Create your first admin user (any email/password for local dev)
- Start creating content!
Connie.one serves as the public face of ConnieRTC with three main components:
- Marketing Website - Landing pages, blog, and public content
- PayloadCMS Admin - Content management system for editors
- Stakeholder Dataroom - Secure document portal for investors/partners
- Framework: Next.js 15 with App Router
- CMS: PayloadCMS 3.44.0
- Database: MongoDB Atlas
- Authentication: Okta SSO (production)
- Deployment: AWS Amplify
- Styling: TailwindCSS
- Package Manager: pnpm (required)
connie.one/
βββ src/
β βββ app/ # Next.js app router pages
β βββ blocks/ # PayloadCMS content blocks
β β βββ CardGrid/ # Card layout component
β β βββ Content/ # Rich text content
β β βββ CallToAction/ # CTA sections
β β βββ ...
β βββ collections/ # CMS collections (Pages, Posts, Users)
β βββ components/ # React components
β βββ payload.config.ts # PayloadCMS configuration
βββ public/ # Static assets
βββ .env # Environment variables
βββ package.json # Dependencies
- CardGrid - Beautiful card layouts (like the ConnieRTC project hub)
- Hero - Landing page hero sections
- Content - Rich text with Lexical editor
- CallToAction - CTA sections with buttons
- MediaBlock - Images and video content
- Archive - Blog/post listings
- Form - Contact and lead capture forms
- Landing pages with hero sections
- Blog with categories and authors
- Card-based index pages
- Contact forms
- Dataroom portal (stakeholder access)
# Development
pnpm dev # Start dev server (localhost:3000)
pnpm build # Build for production
pnpm start # Run production build locally
# Code Quality
pnpm lint # Run ESLint
pnpm lint:fix # Fix linting issues
# Testing
pnpm test # Run all tests
pnpm test:e2e # End-to-end tests
pnpm test:int # Integration tests
# PayloadCMS
pnpm payload generate:types # Generate TypeScript types
pnpm payload generate:importmap # Generate import mapCreate a .env file (copy from .env.example):
# Required for local development
DATABASE_URI=mongodb+srv://... # MongoDB connection
PAYLOAD_SECRET=your-secret-here # 32+ character secret
NEXT_PUBLIC_SERVER_URL=http://localhost:3000
# Production/Staging
OKTA_CLIENT_ID=... # Okta SSO configuration
OKTA_CLIENT_SECRET=...
OKTA_ISSUER=https://trial-2094636.okta.com
# S3 Media Storage (optional)
S3_BUCKET_UPLOADS=...
S3_ACCESS_KEY_ID=...
S3_SECRET_ACCESS_KEY=...
S3_REGION=us-east-1The site automatically deploys to https://connie.one when changes are pushed to the main branch.
Manual Deployment:
# Build locally first to verify
pnpm build
# Push to trigger deployment
git add .
git commit -m "Your changes"
git push origin mainMonitor deployment:
- AWS Amplify Console: Check build logs
- Live site: https://connie.one
See amplify.yml for AWS Amplify build settings. The deployment:
- Installs pnpm and dependencies
- Generates PayloadCMS import maps
- Builds the Next.js application
- Deploys to AWS infrastructure
- Main Platform: connieRTC-basecamp
- Documentation: docs.connie.one
- Admin Platform: admin.connie (in development)
- Production App: connie.plus
- Original Template: Payload Website Template
- PayloadCMS Docs: payloadcms.com/docs
- Next.js Docs: nextjs.org/docs
- Use TypeScript for all new code
- Follow existing component patterns
- Maintain responsive design (mobile-first)
- Ensure accessibility (WCAG 2.1 AA)
- All content should be manageable via CMS
- Use blocks for flexible layouts
- Implement proper SEO metadata
- Enable draft/preview functionality
- Create feature branches from
main - Test locally before pushing
- Write clear, descriptive commit messages
- No marketing/promotional content in commits
- Node Version: Requires Node.js 20.9.0 or higher
- Package Manager: Must use pnpm (not npm or yarn)
- Database: MongoDB required (Atlas recommended)
- Risk Tolerance: Very low - test thoroughly before deploying
For questions about:
- This codebase: Create an issue in the repo
- PayloadCMS: Payload Discord
- ConnieRTC Platform: Contact the ConnieRTC team
Current Status: Active development with production site at connie.one
Last Updated: August 2025