A comprehensive conference room utilization and analytics platform built for Dewey, Cheatham & Howe Law Firm. This Next.js application demonstrates enterprise-grade IoT sensor data processing, real-time monitoring, and advanced analytics capabilities using Supabase as the backend.
For more information, please refer to the FEATURES.md file.
- Node.js 22+
- npm/yarn/pnpm
- Supabase account with a project set up
- Environment variables (see configuration below)
This project includes pgflow, a workflow engine for Supabase that helps with background jobs and queue processing. See PGFLOW.md for local development setup and examples.
-
Clone and Install your fork locally:
git clone https://github.com/YOUR_USERNAME/smart-office-demo.git cd smart-office-demo npm install
- Go to supabase.com and sign up/login
- Click "New Project"
- Choose your organization and enter project details
- Wait for the project to be created (takes a few minutes)
-
Do Supabase Link from your terminal:
npx supabase link --project-ref YOUR_PROJECT_REF
Find your project ref in the Supabase dashboard URL
-
Environment Configuration
# Configure your Supabase project specific variables cp .env.example .env.local # add a functions .env.local file, add an OPENAI_API_KEY to it cp supabase/functions/.env.example supabase/functions/.env
-
Push migrations and seed data:
npx supabase db push
In the SQL Editor of your project, run:
-- pg_net environment secrets
select vault.create_secret('https://[PROJECT-REF].supabase.co', 'supabase_url');
select vault.create_secret('[PROJECT-ANON-KEY]', 'supabase_anon_key');- Run in your terminal the following command:
npx supabase functions deploy- Deploy the secrets in your
.envfile
npx supabase secrets set --env-file supabase/functions/.env
- Update your next.config.ts file to match your project ref:
- hostname: "jtaqjclnmyyfpsayscvl.supabase.co",
+ hostname: "[PROJECT-REF].supabase.co",-
Go to vercel.com and sign up/login
-
Click "New Project"
-
Import your GitHub repository
-
Add these Environment Variables:
NEXT_PUBLIC_SUPABASE_URL=your_supabase_url NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key SUPABASE_SERVICE_ROLE_KEY=your_service_role_key OPENAI_API_KEY=your_openai_api_key NEXT_PUBLIC_UNSPLASH_ACCESS_KEY=your_unsplash_access_key
-
Vercel will auto-detect Next.js - click "Deploy"
npm run dev
-
Run the following command to generate rooms, users, tickets and associated images
npm run generate:all
That's it! Your Smart Office Dashboard is now live on Vercel with a hosted Supabase backend. For pgflow workflows in production, see Deploy to Supabase.com.
- Fork the repository
- Create feature branches (
feature/analytics-enhancement) - Follow TypeScript best practices
- Add tests for new features
- Submit pull request with detailed description
MIT License - see LICENSE file for details
This application is built for the fictional law firm "Dewey, Cheatham & Howe," serving as a sophisticated demonstration of modern office technology solutions. The firm's 57 conference rooms across multiple floors provide an ideal scenario for showcasing enterprise-scale IoT monitoring and analytics capabilities.
Built with ❤️ for enterprise IoT demonstrations Showcasing: Next.js 15, Supabase, Analytics Buckets, Real-time Data Processing