Quickstart
Get up and running with the Vertical Template in under 5 minutes.
Step 1: Clone the Repository
git clone https://github.com/enterpriseaigroup/Vertical-Template.git
cd Vertical-Template
Step 2: Install Dependencies
npm install
This installs all dependencies for both the main application and the @enterpriseaigroup/client package.
Step 3: Configure Environment
Copy the example environment file:
cp .env.example .env.local
Edit .env.local with your Entra ID credentials:
# Auth (Microsoft Entra ID)
ENTRA_TENANT_ID=your-tenant-id
ENTRA_TENANT_NAME=your-tenant-name
ENTRA_CLIENT_ID=your-client-id
ENTRA_CLIENT_SECRET=your-client-secret
ENTRA_SCOPES=openid profile email
# NextAuth
NEXTAUTH_SECRET=your-secret
NEXTAUTH_URL=http://localhost:3000
# API (optional - for backend integration)
BASE_URL_PUBLIC_API=https://your-api-url
Generate a secure NEXTAUTH_SECRET:
openssl rand -base64 32
Step 4: Start Development Server
npm run dev
Step 5: Verify Setup
Open http://localhost:3000 in your browser.
You should see the application's landing page. If authentication is configured, you can sign in via the "Sign In" button.
✅ Success! The Vertical Template is now running locally.
Quick Verification Checklist
| Check | Expected Result |
|---|---|
npm run dev completes | No errors, server starts |
| Browser opens localhost:3000 | Application loads |
| No console errors | Clean browser console |
| Hot reload works | Edit a file, see changes |
Troubleshooting
"Module not found" errors
# Clear node_modules and reinstall
rm -rf node_modules package-lock.json
npm install
Environment variable issues
- Ensure
.env.localexists (not.env) - Check for typos in variable names
- Restart the dev server after changes
Port 3000 already in use
# Kill process on port 3000
npx kill-port 3000
# Or use a different port
npm run dev -- -p 3001
Authentication errors
- Verify Entra ID app registration has correct redirect URI
- Check that ENTRA_CLIENT_SECRET hasn't expired
- Confirm NEXTAUTH_URL matches your localhost URL
For more issues, see Troubleshooting.
What's Next?
Now that you have the template running:
- First Vertical — Build your first feature
- Tutorials — Follow step-by-step guides (build a task tracker, add AI chat, deploy to Azure)
- EAI CLI — Learn the command-line tool for managing your vertical
- Platform Guide — Understand the architecture and services
- Configuration — Customize branding, features, and behavior
- API Reference — Platform SDK, React Hooks, and REST API contracts
Project Structure Quick Reference
src/
├── app/ # Next.js App Router pages and API routes
├── eai.config/ # Tenant configurations (start here!)
│ └── tenants/ # Add your tenant configs here
├── components/ui/ # UI components (Shadcn)
├── lib/ # Utilities
└── middleware.ts # Route protection
packages/client/ # @enterpriseaigroup/client package
The most important file to understand first is src/eai.config/tenants/template.config.ts - this defines how the UI is rendered.