Skip to content
/ atlas Public

A production-ready integration platform that leverages Next.js 14+ App Router, Nango for multi-system integration, and Zep Cloud for intelligent document storage and event recording.

Notifications You must be signed in to change notification settings

mslavov/atlas

Repository files navigation

Integration Platform MVP

A production-ready integration platform that leverages Next.js 14+ App Router, Nango for multi-system integration, and Zep Cloud for intelligent document storage and event recording.

Features

  • 🔗 Multi-system integration (GitHub, Notion, Jira)
  • 🔄 Automated data synchronization
  • 📊 Event recording and storage
  • 🔐 Secure webhook handling
  • 📈 Health monitoring
  • 🎯 Rate limiting and security middleware

Quick Start

Prerequisites

Installation

  1. Install dependencies:
npm install
  1. Configure environment variables:
cp .env.example .env.local

Edit .env.local with your actual API keys:

  • NANGO_SECRET_KEY - From Nango Environment Settings
  • NANGO_WEBHOOK_SECRET - Generate with: openssl rand -hex 32
  • ZEP_API_KEY - From Zep dashboard
  • ZEP_PROJECT_ID - Your Zep project ID
  • DATABASE_URL - PostgreSQL connection string (optional)
  1. Set up the database (optional):
npx prisma generate
npx prisma migrate dev
  1. Run the development server:
npm run dev

Open http://localhost:3000 to view the application.

API Endpoints

Health & Monitoring

  • GET /api/health - System health check

Authentication

  • POST /api/auth/session - Create Nango session token

Webhooks

  • POST /api/webhooks/nango - Nango webhook receiver
  • HEAD /api/webhooks/nango - Webhook validation

Sync Management

  • POST /api/sync - Trigger sync for provider
  • GET /api/sync?syncId=... - Check sync status

Connection Management

  • GET /api/connections - List all connections
  • POST /api/connections - Create new connection
  • GET /api/connections/[id] - Get connection details
  • DELETE /api/connections/[id] - Remove connection
  • PATCH /api/connections/[id] - Update connection

Project Structure

integration-platform/
├── app/                      # Next.js App Router
│   ├── api/                  # API routes
│   ├── components/           # React components
│   ├── connections/          # Connection management UI
│   └── page.tsx              # Landing page
├── lib/                      # Core libraries
│   ├── nango/                # Nango integration
│   ├── zep/                  # Zep integration
│   ├── db/                   # Database utilities
│   ├── errors/               # Error handling
│   └── utils/                # Utilities
├── prisma/                   # Database schema
└── middleware.ts             # Security middleware

Security Features

  • Webhook signature verification
  • Rate limiting (100 requests/minute)
  • Security headers (CSP, XSS protection)
  • Input validation with Zod
  • Environment variable validation

Development

Running Tests

npm test

Linting

npm run lint

Building for Production

npm run build
npm start

Webhook Configuration

Configure your Nango webhook URL:

https://your-domain.com/api/webhooks/nango

For local testing, use ngrok:

ngrok http 3000

Troubleshooting

Environment Variables

Validate required variables:

node scripts/validate-env.js

Database Connection

Test database connection:

npx prisma db push

License

MIT

About

A production-ready integration platform that leverages Next.js 14+ App Router, Nango for multi-system integration, and Zep Cloud for intelligent document storage and event recording.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages