Nexara is a modern, AI-powered project management platform designed for development teams. Built with cutting-edge technologies and focused on developer experience.
- No-code automation using n8n (just drag and drop rules!)
- AI features like ticket summarization and sprint planning with GPTβ4
- Live dashboards and visual tools like Gantt charts
- Deep integrations with GitHub/GitLab, Slack, CI/CD tools, and more
Itβs built as a full web application β not just a browser extension β meaning teams log into Zenjira just like any other SaaS platform to get started.
- π Secure Registration: Complete user registration with real-time validation
- π§ Email Verification: Beautiful HTML emails with 6-digit OTP codes
- π‘οΈ JWT Authentication: Secure token-based auth with refresh token support
- π€ Flexible Login: Support for both email and username authentication
- π Protected Routes: Secure dashboard and user-specific content
- π Real-time Validation: Instant feedback for usernames, emails, and passwords
- π¨ Beautiful Templates: Professional HTML email designs
- β±οΈ Smart OTP: 6-digit codes with 10-minute expiration
- π Resend Feature: Rate-limited OTP resending with countdown
- π― Development Mode: Ethereal Email integration for testing
- π¬ Welcome Emails: Automated welcome messages after verification
- β‘ Real-time Feedback: Instant username/email availability checking
- π― Form Validation: Comprehensive client and server-side validation
- π Animated UI: Smooth transitions and micro-interactions
- π± Responsive Design: Works perfectly on all device sizes
- π Dark Theme: Modern dark interface with gradient accents
- π§ Type Safety: Full TypeScript implementation
- ποΈ Database ORM: Prisma for type-safe database queries
- π API Documentation: Well-documented REST endpoints
- π§ͺ Error Handling: Comprehensive error management
- π Logging: Detailed logging for debugging and monitoring
Frontend Architecture
| Technology | Purpose | Version |
|---|---|---|
| Next.js | React Framework | 13+ |
| TypeScript | Type Safety | 4.9+ |
| Tailwind CSS | Styling System | 3.x |
| shadcn/ui | Component Library | Latest |
| Redux Toolkit | State Management | 1.9+ |
Backend Infrastructure
| Technology | Purpose | Implementation |
|---|---|---|
| Node.js + Express | Runtime & API Framework | REST API |
| PostgreSQL | Primary Database | 14+ via Prisma |
| Prisma ORM | Database Management | Type-safe queries |
| JWT + Refresh | Authentication | Secure tokens |
| Nodemailer | Email Service | SMTP/Gmail |
| bcrypt | Password Hashing | Secure encryption |
| Express Validator | Input Validation | Server-side |
AI & Machine Learning
| Service | Purpose | Provider |
|---|---|---|
| GPT-4 | Natural Language Processing | OpenAI |
| LangChain | AI Pipeline Management | Community |
| Hugging Face | Semantic Search Models | Transformers |
DevOps & Infrastructure
| Technology | Purpose | Environment |
|---|---|---|
| PostgreSQL | Database | All |
| Kubernetes | Orchestration | Production |
| GitHub Actions | CI/CD Pipeline | All |
| AWS EKS | Managed Kubernetes | Production |
| Prometheus + Grafana | Monitoring & Metrics | Production |
Connect with fellow developers, get technical support, and stay updated on the latest features and releases.
gantt
title Nexara Development Timeline
dateFormat MM-DD
section Phase 1
Authentication System :done, p1, 08-01, 09-30
section Phase 2
Project Management :active, p2, 10-01, 10-31
section Phase 3
AI Integration :p3, 11-01, 11-30
section Phase 4
Production Launch :p4, 12-01, 12-31
- User Authentication System - JWT tokens with refresh token support
- Email Verification - Beautiful OTP emails with 6-digit codes and HTML templates
- User Registration - Real-time validation for usernames, emails, and passwords
- Secure Login/Logout - Support for both email and username authentication
- User Dashboard - Protected routes and user profile management
- Database Schema - PostgreSQL with Prisma ORM for type-safe queries
- API Infrastructure - Express.js with comprehensive validation and error handling
- Project Creation - Create and manage multiple projects per user
- Issue Management - Create, edit, assign, and track issues with status workflows
- Project Boards - Kanban boards and basic sprint functionality
- Team Management - Invite users to projects with role-based permissions
- Project Settings - Configure project preferences and visibility
- AI Integration - GPT-4 integration for intelligent summaries and planning assistance
- Automation Engine - Workflow builder for custom automations
- External Integrations - GitHub/GitLab pull request insights and code-to-issue linking
- Real-time Collaboration - WebSocket integration for live updates
- Advanced Analytics - Sprint retrospectives and team performance metrics
- Quality Assurance - Comprehensive testing suite (Jest, Cypress)
- Performance Optimization - Load testing and optimization
- Monitoring & Observability - Prometheus, Sentry, logging
- Documentation & Launch - API docs, user guides, beta release
- Node.js 18+ and npm (or yarn)
- PostgreSQL 14+ database server
- Git for version control
- Gmail account (for email verification) or SMTP server
# Clone the repository
git clone https://github.com/Axelvyn/Nexara.git
cd Nexara
# Install frontend dependencies
cd frontend
npm install
# Install backend dependencies
cd ../backend
npm install# Create PostgreSQL database
psql -U postgres
CREATE DATABASE nexara_db;
\q
# Or use your preferred database management tool# Copy environment template
cd backend
cp .env.example .envEdit .env file with your configuration:
# Database Configuration
DATABASE_URL="postgresql://username:password@localhost:5432/nexara_db?schema=public"
# JWT Configuration (generate strong secrets)
JWT_SECRET="your-super-secret-jwt-key-here-min-32-chars"
JWT_EXPIRES_IN="7d"
JWT_REFRESH_SECRET="your-super-secret-refresh-key-here-min-32-chars"
JWT_REFRESH_EXPIRES_IN="30d"
# Server Configuration
PORT=5000
NODE_ENV="development"
# Email Configuration (Gmail)
EMAIL_USER="[email protected]"
EMAIL_PASSWORD="your-app-password" # Gmail App Password, not regular password
EMAIL_FROM="Nexara <[email protected]>"
# Frontend URL
FRONTEND_URL="http://localhost:3000"- Go to Google Account Settings
- Enable 2-Factor Authentication if not already enabled
- Go to Security β App passwords
- Generate an app password for "Mail"
- Use this password in
EMAIL_PASSWORD(not your regular Gmail password)
# Push database schema
cd backend
npx prisma db push
# Generate Prisma client
npx prisma generate
# Optional: Seed database with test data
npm run db:seed# Terminal 1: Start backend (from backend directory)
cd backend
npm run dev
# Backend runs on http://localhost:5000
# Terminal 2: Start frontend (from frontend directory)
cd frontend
npm run dev
# Frontend runs on http://localhost:3000cd frontend
# Start development server with Turbopack
npm run dev # Runs on http://localhost:3000
# Build for production
npm run build
# Start production server
npm run start
# Run linting
npm run lintcd backend
# Start development server with auto-reload
npm run dev # Runs on http://localhost:5000
# Start production server
npm start
# Check API health
curl http://localhost:5000/health
# Format backend code
npm run format
# Check code formatting
npm run format:check# Option 1: Run both frontend and backend simultaneously (recommended)
npm run dev # Runs both servers with auto-reload
# Option 2: Run individually in separate terminals
# Terminal 1: Start backend
npm run dev:backend
# Terminal 2: Start frontend
npm run dev:frontend# Format backend code
npm run format:backend
# Check backend formatting
npm run format:check:backend
# Or from backend directory
cd backend
npm run format
npm run format:check| Endpoint | Method | Description |
|---|---|---|
/health |
GET | Server health check |
/api/auth/register |
POST | User registration with email verification |
/api/auth/login |
POST | User login (email or username) |
/api/auth/verify-email |
POST | Verify email with OTP code |
/api/auth/resend-otp |
POST | Resend verification code |
/api/auth/me |
GET | Get current user profile (protected) |
/api/auth/logout |
POST | User logout (protected) |
/api/auth/refresh |
POST | Refresh JWT token |
| Endpoint | Method | Description |
|---|---|---|
/api/auth/check-username/:username |
GET | Check username availability |
/api/auth/check-email/:email |
GET | Check email availability |
| Endpoint | Method | Description |
|---|---|---|
/api/projects |
GET | List user projects |
/api/projects |
POST | Create new project |
/api/issues |
GET | List project issues |
/api/boards |
GET | List project boards |
- Frontend: http://localhost:3000
- Backend API: http://localhost:5000
- API Health Check: http://localhost:5000/health
- Visit http://localhost:3000/signup
- Fill out the registration form:
- Real-time username availability checking
- Real-time email availability checking
- Password strength validation with visual feedback
- Submit form β Check your email for verification code
- Visit verification link or enter OTP code
- Successful verification β Redirected to dashboard
- Development Mode: Check console for Ethereal Email preview links
- Gmail Mode: Check your Gmail inbox for beautiful verification emails
- Test OTP: 6-digit codes expire in 10 minutes
- Resend Feature: 60-second cooldown between resends
- Visit http://localhost:3000/login
- Login with email or username
- Unverified users β Redirected to email verification
- Verified users β Redirected to dashboard
Database Connection Error:
# Check PostgreSQL is running
sudo service postgresql status
# Restart PostgreSQL if needed
sudo service postgresql restart
# Verify database exists
psql -U postgres -lEmail Not Sending:
# Check Gmail App Password is correct
# Verify 2FA is enabled on Google Account
# Check .env EMAIL_* variables
# Test email configuration
node -e "console.log(process.env.EMAIL_USER)"Prisma Client Issues:
# Regenerate Prisma client
cd backend
npx prisma generate
# Reset database if needed
npx prisma db push --force-resetFrontend Build Errors:
# Clear Next.js cache
cd frontend
rm -rf .next
npm run build- View Emails in Development: Check console for Ethereal Email preview URLs
- Database GUI: Use
npx prisma studioto view/edit database - API Testing: Use Postman or curl to test endpoints
- Logs: Check terminal output for detailed error messages
Please read our Code of Conduct to understand the expected behavior in this community.
Please review our Community Guidelines before contributing.
This project is licensed under the MIT License - see the LICENSE file for details.
Built with β€οΈ by the Nexara Team
Transforming development workflows, one sprint at a time.