Skip to content

vsharha/fira

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

169 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fira

AI-powered freelance contract management platform with blockchain-based escrow payments.

Overview

Fira is a platform that facilitates contract management between employers and freelancer teams. It features AI-driven milestone verification and Solana blockchain escrow for secure, transparent payments.

Key Features

  • Contract Management: Create and manage contracts with milestone-based deliverables
  • GitHub Integration: Track project progress through GitHub issues linked to milestones
  • AI Verification: Two-stage AI pipeline (Gemini + Claude) generates verification reports for milestone completion
  • Solana Escrow: Secure blockchain-based payment escrow with manual employer release
  • Real-time Dashboard: Monitor contract status, payments, and milestone progress

Architecture

├── backend/           # FastAPI Python backend
│   ├── hackeurope/
│   │   ├── database/    # Supabase database operations
│   │   ├── github_service/  # GitHub API integration
│   │   ├── ml/          # AI agents for report generation
│   │   ├── reports/     # Verification report handling
│   │   ├── routers/     # API endpoints
│   │   ├── schemas/     # Pydantic models
│   │   ├── solana/      # Blockchain escrow logic
│   │   └── verification/ # Milestone verification
│   └── main.py
├── frontend/          # Next.js React frontend
│   ├── app/           # App router pages
│   ├── components/    # React components + shadcn/ui
│   ├── hooks/         # Custom React hooks
│   └── lib/           # Utilities and types

Tech Stack

Backend

  • Python 3.13
  • FastAPI
  • Supabase (PostgreSQL)
  • Solana (blockchain)
  • PyGithub
  • Pydantic AI
  • Anthropic Claude & Google Gemini

Frontend

  • Next.js 16
  • React 19
  • TypeScript
  • Tailwind CSS 4
  • shadcn/ui + Radix UI
  • Recharts

Getting Started

Prerequisites

  • Python 3.13
  • Node.js 18+
  • pnpm

Backend Setup

cd backend

# Create virtual environment and install dependencies
uv sync

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

# Run the server
python main.py

Frontend Setup

cd frontend

# Install dependencies
pnpm install

# Run development server
pnpm dev

The frontend runs at http://localhost:3000 and the API at http://localhost:8000.

Environment Variables

Backend (.env)

Variable Description
GITHUB_OWNER GitHub repository owner
GITHUB_REPO GitHub repository name
GITHUB_TOKEN GitHub personal access token
SOLANA_NETWORK Solana network (devnet/mainnet)
ESCROW_WALLET_KEY Solana escrow wallet keypair
ANTHROPIC_API_KEY Claude API key
GEMINI_API_KEY Gemini API key
SUPABASE_URL Supabase project URL
SUPABASE_KEY Supabase service key

API Endpoints

  • /contracts - Contract CRUD operations
  • /milestones - Milestone management
  • /github - GitHub issue tracking
  • /payment - Solana escrow operations
  • /reports - Verification report generation

License

MIT License - see LICENSE

About

A fork of the monorepo for Fira at hackeurope

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • TypeScript 52.2%
  • Python 46.4%
  • CSS 1.2%
  • JavaScript 0.2%