Skip to content

Sackson-Partners/Kazi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

KAZI Platform v1.0

Investment Intelligence Platform for Sackson Capital Partners

KAZI is a closed, invite-only platform that enables SCP's investment team, co-investors, and sponsored search fund operators to manage deals, track portfolio entities, and act on AI-powered intelligence across Africa and Asia.


🏗️ Architecture

Monorepo structure with Turborepo orchestration:

kazi-platform/
├── apps/
│   ├── api/              # NestJS backend (REST + WebSocket)
│   ├── mobile/           # React Native/Expo mobile app
│   └── admin/            # Next.js admin dashboard (in development)
├── packages/
│   ├── ai-agents/        # LangGraph AI agents (5 specialized agents)
│   ├── shared-types/     # TypeScript type definitions
│   ├── config/           # Shared configuration
│   └── ui-components/    # Shared React components
└── infrastructure/       # Terraform IaC for Azure

📱 Key Features

7-Stage Investment Lifecycle

Map → Signal → Originate → Analyze → Execute → Own → Report

5 AI Agents

  1. Signal Scout — Daily intelligence briefs from 100+ sources
  2. Deal Analyst — Automated deal screening and risk flagging
  3. Portfolio Monitor — KPI anomaly detection
  4. Report Writer — Draft quarterly and EITI compliance reports
  5. Deal Coach — Conversational AI for search fund operators

Multi-Tier Access Control

  • Tier 1 (Principal): Full platform access
  • Tier 2 (Partner): Deal + portfolio, no system admin
  • Tier 3 (Operator): Search fund operators, Deal Coach access
  • Tier 4 (Portfolio): Read-only portfolio KPI submission

Real-Time Collaboration

  • WebSocket live updates
  • Push notifications
  • Team assignment and mentions
  • Audit trail for all changes

🚀 Quick Start

Prerequisites

  • Node.js: 20.x or later
  • npm: 10.x or later
  • PostgreSQL: 15 or later
  • Redis: 6.x or later
  • Azure CLI (for deployment)
  • Docker (for local storage emulation)

Installation

# Clone repository
git clone https://github.com/sackson-capital/kazi-platform.git
cd kazi-platform

# Install dependencies
npm ci

# Start local storage emulator (Azurite)
npm run storage:dev --workspace=apps/api

Environment Setup

# API
cp apps/api/.env.example apps/api/.env
# Edit apps/api/.env with your credentials

# Mobile (optional for local dev)
cp apps/mobile/.env.example apps/mobile/.env

Required secrets:

  • DATABASE_URL — PostgreSQL connection string
  • REDIS_HOST, REDIS_PASSWORD — Azure Redis
  • JWT_SECRET, JWT_PRE_MFA_SECRET — 64-char random strings
  • ANTHROPIC_API_KEY — Claude API key
  • OPENAI_API_KEY — OpenAI embeddings
  • PINECONE_API_KEY — Vector database

Database Migrations

cd apps/api
npx prisma migrate dev
npx prisma db seed  # Creates initial admin user

Development

# Start all services in parallel (API + Mobile)
npm run dev

# Or individually:
npm run dev --workspace=apps/api      # API at http://localhost:3000
npm run dev --workspace=apps/mobile   # Expo dev server

Running Tests

# Run all tests
npm test

# API unit tests only
npm run test:unit --workspace=apps/api

# Integration tests (requires running DB)
npm run test:integration --workspace=apps/api

🏭 Production Deployment

Azure DevOps Pipeline

  1. Push to develop → Auto-deploys to staging
  2. Push to main → Requires approval, deploys to production

See DEPLOYMENT.md for complete setup instructions.

Manual Docker Build

docker build -t kazi-api:latest -f apps/api/Dockerfile .
docker run -p 3000:3000 --env-file apps/api/.env kazi-api:latest

Mobile App Deployment

cd apps/mobile

# iOS build
eas build --platform ios --profile production

# Android build
eas build --platform android --profile production

# OTA update (no rebuild)
eas update --branch production --message "Fix critical bug"

📚 Documentation

Document Description
DEPLOYMENT.md Complete deployment guide for Azure
CHANGELOG.md Version history and release notes
ARCHITECTURE.md System design and technical decisions
API_DOCS.md REST API reference (Swagger at /api/docs)
AI_AGENTS.md AI agent decision trees and prompts

🧪 Tech Stack

Backend

  • Framework: NestJS 10.3
  • Database: PostgreSQL 15 (Azure Flexible Server)
  • Cache: Redis 6 (Azure Cache for Redis)
  • Queue: Bull (Redis-backed)
  • ORM: Prisma 5.10
  • Auth: Passport.js, JWT, Speakeasy (MFA)

Mobile

  • Framework: React Native 0.76
  • Navigation: Expo Router 4.0
  • State: Zustand + React Query
  • Offline: WatermelonDB (v1.1)
  • Maps: Mapbox GL
  • Notifications: OneSignal

AI/ML

  • Orchestration: LangGraph 0.1
  • LLM: Anthropic Claude 3.5 Sonnet
  • Embeddings: OpenAI text-embedding-3-small
  • Vector DB: Pinecone
  • Observability: LangSmith

Infrastructure

  • Cloud: Azure (Container Apps, PostgreSQL, Redis, Blob Storage)
  • CI/CD: Azure DevOps Pipelines
  • IaC: Terraform
  • Monitoring: Azure Application Insights (planned v1.1)

🔐 Security

  • Authentication: JWT access tokens (15min) + refresh tokens (7 days)
  • MFA: TOTP-based, secrets encrypted via AWS KMS in production
  • Authorization: Row-level with 4-tier RBAC
  • Secrets: Azure Key Vault
  • Network: TLS 1.2+ for all connections, Redis TLS on port 6380
  • Audit: Full audit log for all CRUD operations

Vulnerability Disclosure: security@sacksonfund.com


🤝 Contributing

This is a private repository for Sackson Capital Partners. External contributions are not accepted.

Internal Development Workflow

  1. Create feature branch from develop: git checkout -b feat/signal-scout-improvements
  2. Make changes, write tests
  3. Run linter: npm run lint
  4. Run type check: npm run type-check
  5. Create PR to develop
  6. After staging verification, create PR from develop to main

Commit Convention

Follow Conventional Commits:

feat: add voice note transcription
fix: correct KPI calculation for EITI scope
chore: update Anthropic SDK to 0.24.3
docs: add AI agent decision tree diagrams

📊 Project Status

  • Version: 1.0.0 (Production Release)
  • Last Updated: May 25, 2026
  • Active Development: ✅ Yes
  • Production Status: ✅ Deployed on Azure
  • Mobile Apps: 🟡 TestFlight (iOS), Internal Testing (Android)

Roadmap

v1.1.0 (July 2026)

  • Offline-first mobile sync
  • Voice notes with transcription
  • AI explainability dashboard
  • WhatsApp signal integration
  • Sentry error tracking
  • 60% test coverage

v1.2.0 (September 2026)

  • Deal network graph (Neo4j)
  • Automated EITI reports
  • Multi-agent collaboration
  • Predictive deal scoring

See CHANGELOG.md for full version history.


🆘 Support

Internal Contacts

Role Contact
DevOps Lead devops@sacksonfund.com
Database Admin dba@sacksonfund.com
Security Officer security@sacksonfund.com
Mobile Lead mobile@sacksonfund.com

Troubleshooting

API won't start:

# Check logs
docker logs <container-id>

# Or on Azure
az containerapp logs show --name kazi-api-production -g kazi-rg --tail 100

Mobile app won't connect:

  • Check apps/mobile/.env for correct API URL
  • Verify network connectivity
  • Clear Expo cache: expo start -c

Database migration fails:

  • Ensure PostgreSQL firewall allows your IP
  • Check DATABASE_URL is correct
  • Run npx prisma generate first

📄 License

Proprietary — All Rights Reserved

© 2026 Sackson Capital Partners. This software is proprietary and confidential. Unauthorized access, use, or distribution is prohibited.


🙏 Acknowledgments

Built with:


Last Updated: May 25, 2026
Maintained by: Sackson Capital Partners DevOps Team

About

Sackson Capital Partners

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors