← Back to Home

Setup Guide

Complete installation and configuration guide for Elipse Platform

🚀 Tech Stack

Backend

  • Framework: Next.js 16 (App Router)
  • Runtime: Node.js with Edge Runtime
  • Language: TypeScript (Strict Mode)
  • Database: PostgreSQL (Neon)
  • ORM: Drizzle ORM
  • Authentication: JWT (HS256)
  • Real-time: MQTT (EMQX Cloud)
  • Caching: Upstash Redis
  • Storage: Cloudflare R2

Security

  • Password Hashing: bcrypt (12 rounds)
  • JWT Tokens: 1hr access, 30d refresh
  • Rate Limiting: Redis-based
  • Input Validation: Zod schemas
  • CORS: Configurable origins
  • HTTPS: TLS 1.3 enforced

📦 Installation

1. Clone Repository

git clone https://github.com/ElipseTechnology/elipse-web.git
cd elipse-web

2. Install Dependencies

npm install

⚙️ Environment Setup

Create .env.local file in project root:

DATABASE_URL="postgresql://..."
JWT_SECRET="your-secret-key-min-32-chars"
JWT_REFRESH_SECRET="your-refresh-secret"
MQTT_BROKER_URL="broker.emqxcloud.com"
EMQX_API_ENDPOINT="https://broker.emqxcloud.com:8443/api/v5"
EMQX_APP_ID="your-app-id"
EMQX_APP_SECRET="your-app-secret"
UPSTASH_REDIS_REST_URL="https://your-redis.upstash.io"
UPSTASH_REDIS_REST_TOKEN="your-redis-token"

🛠️ Development

Start Development Server

npm run dev

API available at: http://localhost:3000/api/v1

Database Migrations

npx drizzle-kit push

Build for Production

npm run build
npm start

🌍 Deployment Environments

Development

Branch: development

URL: elipse-web-git-development-rushikesh-chandgudes-projects.vercel.app

Purpose: Active development and testing

Staging

Branch: staging

URL: elipse-web-git-staging-rushikesh-chandgudes-projects.vercel.app

Purpose: Pre-production validation and QA

Production

Branch: main

URL: https://elipse.app

Purpose: Live production environment

Note: Each environment has isolated database instances, MQTT brokers, Redis caches, JWT secrets, and storage buckets.

📱 Mobile App Integration

Use these base URLs in your mobile apps:

Development:http://localhost:3000
Staging:https://staging.elipse.app
Production:https://elipse.app

Only change the base URL - all endpoint paths remain identical across environments.

📝 Available Scripts

CommandDescription
npm run devStart development server
npm run buildProduction build
npm run startStart production server
npm run lintLint TypeScript code
npm run testRun unit tests
npx drizzle-kit pushPush database schema

🔗 Quick Links

© 2025 Elipse Technology. All rights reserved.

Enterprise-grade IoT & Construction Management Platform