Coordra is an AI-assisted workspace for coordinating projects, people, and priorities. It combines tenant-safe project delivery, live collaboration, and accountable actions with Pulse: a workspace-scoped assistant that answers from verified facts and prepares writes for explicit approval.
🔗 Live Demo: https://saas-team-workspace.vercel.app/ (wait for the backend to start on render)
Frontend
Backend
System Workflow Diagram
flowchart LR
User["User / Browser"]
subgraph Frontend["Next.js Frontend"]
UI["React UI"]
Query["TanStack Query"]
APIClient["API Client"]
SocketClient["Socket.IO Client"]
end
subgraph Backend["Node.js / Express Backend"]
API["REST API"]
Auth["Auth + RBAC"]
Services["Domain Services"]
subgraph Pulse["Pulse AI"]
Assistant["Assistant"]
Tools["Verified AI Tools"]
end
Realtime["Socket.IO Realtime"]
end
DB[("PostgreSQL<br/>Drizzle ORM")]
Groq["Groq API"]
User --> UI
UI --> APIClient
APIClient -->|HTTP / REST| API
API --> Auth
Auth --> Services
Services --> DB
Services --> Realtime
Realtime -->|Live updates| SocketClient
SocketClient --> Query
UI --> Pulse["Pulse UI"]
Pulse -->|HTTP / REST| API
API --> Assistant
Assistant --> Tools
Tools --> Services
Assistant -->|LLM| Groq
Query -->|Fetch / Refetch| APIClient
💡 Note for Reviewers: This section highlights my engineering mindset, problem-solving methodologies, and ability to overcome technical roadblocks during development.
Challenge 1: Safe AI Mutations in a Multi-Tenant Environment
PENDING proposal instead of directly executing writes. The approval process is model-free, atomically validating identity and roles before executing the command and emitting a live event.Challenge 2: Preventing LLM Hallucinations on Domain Data
Prerequisites
Make sure you have the following installed on your machine:
Installation & Environment Configuration
Clone the repository to your local machine:
git clone https://github.com/yourusername/coordra.git
cd coordra
Install the necessary dependencies for both the client and server:
# Install backend dependencies
npm ci
# Install frontend dependencies
npm --prefix frontend ci
Create a .env file in the root directory and frontend directory:
cp .env.example .env
cp frontend/.env.example frontend/.env
Running the Application
To launch the development server locally:
# Setup the database and seed it
npm run db:migrate
DEMO_SEED_CONFIRM=coordra-demo DEMO_SEED_PASSWORD='<12+ characters>' npm run db:seed:demo
# Run the backend
npm run dev
In another terminal, run the frontend:
npm run frontend:dev
The web app will be available at http://localhost:3000, the API at http://localhost:8000, and Swagger docs at http://localhost:8000/api-docs.