Skip to content

inati/co-intel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Co-Intel

A multi-tenant workspace platform that combines structured documentation (like Notion) with AI-powered development assistance (like Cline), specifically designed for knowledge workers and development teams.

πŸ—οΈ Project Structure

co-intel/
β”œβ”€β”€ memory-bank/                 # Memory Bank documentation system
β”‚   β”œβ”€β”€ projectbrief.md         # Core project vision and requirements
β”‚   β”œβ”€β”€ productContext.md       # User experience goals and market positioning
β”‚   β”œβ”€β”€ systemPatterns.md       # Technical architecture and design patterns
β”‚   β”œβ”€β”€ techContext.md          # Technology stack and development environment
β”‚   β”œβ”€β”€ activeContext.md        # Current work state and decision tracking
β”‚   └── progress.md             # Status tracking and milestone management
β”œβ”€β”€ backend/                     # FastAPI backend application
β”‚   β”œβ”€β”€ app/
β”‚   β”‚   β”œβ”€β”€ api/v1/             # API endpoints
β”‚   β”‚   β”‚   β”œβ”€β”€ endpoints/      # Route handlers
β”‚   β”‚   β”‚   └── api.py          # Router configuration
β”‚   β”‚   β”œβ”€β”€ core/               # Core configuration
β”‚   β”‚   β”‚   β”œβ”€β”€ config.py       # Settings management
β”‚   β”‚   β”‚   └── database.py     # Database connection
β”‚   β”‚   └── main.py             # FastAPI app entry point
β”‚   β”œβ”€β”€ requirements.txt        # Python dependencies
β”‚   └── Dockerfile              # Backend container config
β”œβ”€β”€ frontend/                    # Next.js frontend application
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   └── app/                # Next.js App Router
β”‚   β”‚       β”œβ”€β”€ globals.css     # Global styles with Tailwind
β”‚   β”‚       β”œβ”€β”€ layout.tsx      # Root layout
β”‚   β”‚       β”œβ”€β”€ page.tsx        # Home page
β”‚   β”‚       └── providers.tsx   # React providers
β”‚   β”œβ”€β”€ package.json            # Node.js dependencies
β”‚   β”œβ”€β”€ next.config.js          # Next.js configuration
β”‚   β”œβ”€β”€ tailwind.config.js      # Tailwind CSS configuration
β”‚   β”œβ”€β”€ tsconfig.json           # TypeScript configuration
β”‚   └── Dockerfile              # Frontend container config
β”œβ”€β”€ docker-compose.yml          # Local development environment
β”œβ”€β”€ .env.example                # Environment variables template
└── README.md                   # This file

πŸš€ Technology Stack

Backend

  • FastAPI - High-performance async API framework
  • Supabase - PostgreSQL database with built-in auth and real-time features
  • SQLAlchemy - Database ORM with async support
  • Redis - Caching and session management
  • Pydantic - Data validation and settings management
  • PydanticAI - Type-safe AI agent framework for LLM integration

Frontend

  • Next.js 14 - React framework with App Router
  • TypeScript - Type-safe JavaScript
  • Tailwind CSS - Utility-first CSS framework
  • Radix UI - Accessible component primitives
  • TanStack Query - Server state management
  • Zustand - Client state management
  • CopilotKit - AI assistant integration framework
  • ProseMirror - Rich text editor (planned)

Development & Deployment

  • Docker - Containerization
  • uv - Ultra-fast Python package installer and dependency management
  • pnpm - Fast Node.js package manager
  • ESLint & Prettier - Code formatting and linting

πŸƒβ€β™‚οΈ Quick Start

Prerequisites

  • Docker and Docker Compose
  • Node.js 18+ (for local development)
  • Python 3.11+ (for local development)

1. Clone and Setup

git clone <repository-url>
cd co-intel

# Copy environment variables
cp .env.example .env
# Edit .env with your configuration

2. Start with Docker Compose

# Start all services
docker-compose up -d

# View logs
docker-compose logs -f

3. Access the Application

πŸ› οΈ Development Setup

Backend Development

cd backend

# Install uv (if not already installed)
curl -LsSf https://astral.sh/uv/install.sh | sh

# Install dependencies with uv
uv pip install -r requirements.txt

# Or install from pyproject.toml
uv pip install -e .

# Run development server
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000

Frontend Development

cd frontend

# Install dependencies
npm install

# Run development server
npm run dev

πŸ“‹ Current Status

βœ… Completed

  • Memory Bank documentation system
  • Project structure and scaffolding
  • Backend API framework with FastAPI
  • Frontend setup with Next.js 14
  • Docker Compose development environment
  • Basic API endpoints (stub implementations)
  • Configuration management
  • Tailwind CSS styling setup

🚧 In Progress

  • Database schema implementation
  • Authentication system integration
  • Multi-tenant data isolation
  • Basic UI components

πŸ“… Planned

  • ProseMirror rich text editor
  • Real-time collaboration with Y.js
  • AI agent integration
  • Document templates system
  • User management interface
  • Organization and project management

πŸ›οΈ Architecture Overview

Multi-Tenant Design

  • Organizations - Top-level tenant isolation
  • Users - Can belong to multiple organizations with roles
  • Projects - Organization-owned workspaces
  • Documents - Project-specific or team-wide documents

Security Model

  • Row Level Security (RLS) - Database-level tenant isolation
  • JWT Authentication - Supabase Auth integration
  • Role-Based Access Control - Granular permissions

AI Integration

  • Agent Registry - Public and private AI agents
  • Capability System - Granular permissions for AI actions
  • Context-Aware - AI agents understand document and project context

πŸ“š Memory Bank System

This project implements a comprehensive Memory Bank system for maintaining context across development sessions:

  • projectbrief.md - Foundation document with core requirements
  • productContext.md - Product vision and user experience goals
  • systemPatterns.md - Technical architecture and design patterns
  • techContext.md - Technology stack and development setup
  • activeContext.md - Current work focus and decisions
  • progress.md - Status tracking and milestone management

🀝 Contributing

  1. Read the Memory Bank documentation to understand the project context
  2. Follow the development setup instructions
  3. Create feature branches for new work
  4. Update relevant Memory Bank files when making architectural decisions
  5. Ensure tests pass and code follows style guidelines

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ”— Links


Note: This is an early-stage project. Many features are planned but not yet implemented. Check the Memory Bank documentation for the most current project status and roadmap.

About

Co-Intelligence

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published