Open-source AI-driven development outsourcing platform
Revolutionizing software development outsourcing through intelligent automation, transparent processes, and seamless collaboration.
Website | Quick Start | Features | Discussions | Contributing
English | ζ₯ζ¬θͺ | δΈζ | νκ΅μ΄ | EspaΓ±ol | FranΓ§ais | Deutsch | PortuguΓͺs | Ψ§ΩΨΉΨ±Ψ¨ΩΨ© | ΰ€Ήΰ€Ώΰ€¨ΰ₯ΰ€¦ΰ₯ | Π ΡΡΡΠΊΠΈΠΉ
Team@Once is an open-source AI-driven development outsourcing marketplace that eliminates traditional risks through intelligent automation, AI-powered assessments, escrow payments, and real-time project management. Built for businesses looking to outsource development and dev teams looking for clients, Team@Once replaces fragmented toolchains with a single integrated platform.
Unlike Upwork that charges 10-20% fees with limited project tools, or Toptal that gates access behind expensive vetting, Team@Once gives you a self-hosted, low-fee platform with built-in collaboration, AI matching, and full control over your data.
Team@Once β Open-source AI-driven development outsourcing platform
- Post or Discover -- Clients post projects with requirements; the AI engine matches them with the best-fit development companies based on skills, track record, and availability.
- Assess & Contract -- Developers showcase verified skills through AI-generated assessments and certificates. Smart contracts are auto-generated with milestones and e-signatures.
- Build & Collaborate -- Teams work together with built-in project management, real-time chat, video calls, shared whiteboards, and milestone tracking.
- Pay & Review -- Milestone-based escrow payments release funds only when deliverables are approved. Both sides leave verified reviews.
- π€ AI-Powered Matching -- NLP-based engine matches projects to the best-fit development teams using skill vectors and track records
- π° Escrow Payments -- Milestone-based Stripe escrow ensures developers get paid and clients get quality work
- πΉ Built-in Video Calls -- LiveKit-powered video conferencing with screen sharing, no third-party tools needed
- π Project Management -- Kanban boards, milestones, deliverables, and time tracking in one place
- π Learning & Certification -- AI-generated assessments, courses, learning paths, and verifiable certificates
- π Smart Discovery -- Qdrant vector search + web crawling data engine for finding and enriching company profiles
- π Smart Contracts -- Auto-generated contracts with e-signature and milestone-linked payment terms
Outsourcing software development is broken. Businesses waste weeks vetting agencies, overpay platform middlemen, juggle disconnected tools for chat, project management, and payments, and still end up with misaligned expectations and failed deliveries.
Common pain points we address:
- β High platform fees -- Existing marketplaces charge 10-20% or apply hidden markups
- β No transparency -- Clients can't verify developer skills beyond self-reported profiles
- β Tool fragmentation -- Teams use Slack + Jira + Zoom + Wise + DocuSign separately
- β Payment disputes -- No built-in escrow or milestone-gated payment protection
- β Vendor lock-in -- Your data, conversations, and project history trapped in proprietary platforms
β 3-5% platform fee -- Open-source and self-hostable, dramatically lower costs
β AI-verified skills -- Automated assessments, certificates, and portfolio verification
β All-in-one workspace -- Chat, video, project management, contracts, and payments unified
β Escrow protection -- Milestone-based payments via Stripe protect both parties
β Full data ownership -- Self-host with Docker Compose; your data never leaves your infrastructure
| Feature | Team@Once | Upwork | Toptal | Fiverr | Deel |
|---|---|---|---|---|---|
| AI-Powered Matching | β NLP + smart matching | β | β | β | |
| Built-in Project Mgmt | β Kanban, milestones, time tracking | β | β | β | |
| Escrow Payments | β Milestone-based | β | β | β | β |
| Video Collaboration | β Built-in calls + screen share | β | β | β | β |
| Skill Assessments | β AI-generated + certificates | β Rigorous | β | ||
| Learning Paths | β Courses + certifications | β | β | β | β |
| Real-Time Chat | β Channels + file sharing | β | β | ||
| Team Workspaces | β Multi-project org | β | β | β | β |
| Data Engine | β Company discovery crawler | β | β | β | β |
| Smart Contracts | β Auto-generated + e-sign | β | β | ||
| API Access | β Full REST API | β | β | β | |
| Self-Hosted | β Docker Compose | β | β | β | β |
| Open Source | β AGPL 3.0 | β | β | β | β |
| Platform Fee | π’ 3-5% | π° 10-20% | π° ~2x markup | π° 20% | π° Custom |
| i18n | β 11 languages | β | β | β | β |
| Learning Curve | π’ Low | π’ Low | π‘ Medium | π’ Low | π‘ Medium |
- Fully open-source and self-hostable -- No vendor lock-in, no data leaving your infrastructure, AGPL 3.0 licensed
- AI-native from day one -- Matching, assessments, contract generation, and content analysis all powered by AI
- All-in-one platform -- Replaces 5+ separate tools (marketplace + PM + chat + video + payments + contracts)
- Developer-first learning -- Built-in courses, certifications, and learning paths make it a growth platform, not just a gig board
- Pluggable architecture -- Swap search providers (Qdrant/Meilisearch/Typesense), storage (S3/MinIO), AI (OpenAI/Ollama), and email with config changes
- β Invoicing system -- Full invoice generation and tracking
- β Portfolio module -- Company and developer portfolio showcase
- β Install wizard -- Interactive setup wizard for new deployments
- β Multi-provider video -- Pluggable video conferencing providers
- β 11-language i18n -- Full internationalization coverage
- β
Docker one-command setup -- Single
docker compose upstarts everything
Run the entire platform with a single command -- no Node.js, no database setup:
git clone https://github.com/teamatonce/teamatonce.git
cd teamatonce
docker compose up --buildThe first build takes a few minutes (downloading images + installing dependencies). Subsequent starts are much faster thanks to Docker layer caching.
Database migrations run automatically on startup. Once you see Team@Once Backend is running on: http://localhost:3001, open:
| Service | URL |
|---|---|
| Frontend | http://localhost:5173 |
| Backend API | http://localhost:3001 |
| API Docs (Swagger) | http://localhost:3001/api-docs |
To stop everything:
docker compose downTo stop and remove all data (clean start):
docker compose down -vOptional services can be enabled with profiles:
# Enable Meilisearch and local email capture
docker compose --profile meilisearch --profile maildev up --buildAvailable profiles: meilisearch, typesense, minio, maildev, ollama
Click to expand manual setup steps
Prerequisites: Node.js >= 18, Docker (for databases)
# Start PostgreSQL, Redis, and Qdrant
docker compose up -d postgres redis qdrantWithout Docker (manual install)
Install and start PostgreSQL, Redis, and Qdrant yourself, then update backend/.env with your connection details:
# PostgreSQL -- create the dev database
createdb -U postgres teamatonce_dev
# Update DATABASE_PASSWORD in backend/.env to match your PostgreSQL passwordcd backend
cp .env.example .env # credentials already match docker-compose.yml
npm install
npm run migrate
npm run start:devcd frontend
cp .env.example .env
npm install
npm run dev
Seller Dashboard β Company details, team members, performance metrics, and quick actions
- Company Profiles -- Showcase portfolios, team skills, and certifications
- AI-Powered Matching -- Intelligent company-to-project matching based on skills and track record
- Data Engine -- Web crawling and pipeline for company discovery and enrichment
- Escrow Payments -- Secure milestone-based payments via Stripe
- Developer Profiles -- Skill-verified profiles with assessment scores and certificates
- Course Management -- Create and manage technical courses with modules and lessons
- AI Assessments -- AI-generated quizzes and skill evaluations
- Certificates -- Verifiable achievement certificates
- Learning Paths -- Structured skill development routes
- Achievements -- Gamification with badges and progress tracking
- Real-Time Chat -- Channels, direct messages, and file sharing via Socket.io
- Video Conferencing -- LiveKit-powered calls with screen sharing
- Project Management -- Kanban boards, milestones, deliverables, and time tracking
- Collaborative Whiteboard -- Real-time shared drawing and diagramming
- Discussion Forums -- Community discussions and knowledge sharing
- Meeting Scheduling -- Calendar integration and meeting management
- Collaborative Notes -- Shared note-taking within projects
- Smart Contracts -- Auto-generated contracts with customizable templates
- E-Signatures -- Built-in electronic signature workflow
- Escrow -- Milestone-gated fund release via Stripe
- Invoicing -- Invoice generation, tracking, and payment history
- Subscriptions -- Tiered platform subscription plans
- AI Integration -- OpenAI-powered content generation, analysis, and matching
- Vector Search -- Qdrant semantic search for companies, skills, and content
- Admin Dashboard -- Platform administration, analytics, and user management
- Multi-language -- 11 languages with automatic browser detection
- Blog & Content -- CMS for articles, guides, and landing pages
Modern, production-ready technologies powering Team@Once
| Layer | Technology |
|---|---|
| Backend | NestJS 11, TypeScript, PostgreSQL (raw SQL), Redis, Qdrant, Socket.io |
| Frontend | React 19, Vite, TypeScript, Tailwind CSS, Radix UI, Zustand |
| AI | OpenAI (GPT-4o-mini, embeddings) |
| Payments | Stripe (escrow, subscriptions, invoicing) |
| Search | Qdrant (vector search) |
| Video | LiveKit (conferencing, screen share) |
| Real-Time | Socket.io with Redis adapter |
| Deployment | Docker Compose |
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Frontend β
β React 19 Β· Vite Β· Tailwind Β· Zustand β
β Port 5173 (development) β
ββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββββ
β REST API + WebSocket
ββββββββββββββββββββββββΌβββββββββββββββββββββββββββββββββββ
β Backend β
β NestJS 11 Β· TypeScript β
β Port 3001 Β· 34+ modules β
β β
β ββββββββββββ ββββββββββββ ββββββββββββ βββββββββββββ β
β β Auth β βMarketplaceβ β Learning β β Payment β β
β β JWT β β AI Match β β Courses β β Escrow β β
β ββββββββββββ ββββββββββββ ββββββββββββ βββββββββββββ β
β ββββββββββββ ββββββββββββ ββββββββββββ βββββββββββββ β
β β Comms β β Projects β βContracts β β Admin β β
β βChat/Videoβ β Kanban β β E-Sign β β Analytics β β
β ββββββββββββ ββββββββββββ ββββββββββββ βββββββββββββ β
βββββ¬βββββββββββββββ¬ββββββββββββββ¬βββββββββββββ¬ββββββββββββ
β β β β
βββββΌββββ βββββββΌβββββ ββββββΌββββ ββββββΌβββββ
β Postgresβ β Redis β β Qdrant β β Stripe β
β :5433 β β :6379 β β :6333 β β (API) β
ββββββββββ ββββββββββββ ββββββββββ βββββββββββ
Backend (/backend) -- NestJS 11 API with 34+ feature modules, raw PostgreSQL queries, WebSocket gateway, and BullMQ job queues.
Frontend (/frontend) -- React 19 SPA with Vite, Tailwind CSS, Radix UI primitives, Zustand state management, and i18n for 11 languages.
Team@Once ships with pluggable provider support across these categories:
| Category | Providers |
|---|---|
| Search | Qdrant (default), Meilisearch, Typesense |
| Storage | AWS S3, MinIO (self-hosted) |
| AI | OpenAI (default), Ollama (local LLMs) |
| Nodemailer (SMTP), Maildev (local dev) | |
| Video | LiveKit |
| Payments | Stripe |
| Auth | JWT, Google OAuth, GitHub OAuth |
| Notifications | Firebase Admin (push), WebSocket (in-app) |
Team@Once supports 11 languages via i18next with automatic browser language detection:
English, ζ₯ζ¬θͺ, δΈζ, νκ΅μ΄, EspaΓ±ol, FranΓ§ais, Deutsch, PortuguΓͺs, Ψ§ΩΨΉΨ±Ψ¨ΩΨ©, ΰ€Ήΰ€Ώΰ€¨ΰ₯ΰ€¦ΰ₯, Π ΡΡΡΠΊΠΈΠΉ
Want to add a new language? See the translation guide -- just add a JSON file to frontend/src/i18n/locales/.
Team@Once is more than just another open-source project -- it's an opportunity to build the future of how software teams find and work with each other.
π Learn a Modern Tech Stack
- NestJS 11 -- Enterprise-grade Node.js framework with modular architecture
- React 19 -- Latest React with hooks, suspense, and concurrent features
- PostgreSQL (raw SQL) -- Learn to write performant queries without ORM abstractions
- Qdrant -- Vector databases and semantic search, a high-demand skill
- Stripe -- Payment integration, escrow, and subscription billing
- Socket.io -- Real-time WebSocket communication at scale
πΌ Build Your Portfolio
- Contribute to a production-ready platform with 34+ modules
- Work on features that appear on your GitHub profile
- Get recognition in our contributor hall of fame
- Build expertise in marketplace platforms and AI integration -- highly valued skills in 2026
π€ Join a Growing Community
- Connect with developers from around the world
- Get code reviews from experienced maintainers
- Learn best practices in software architecture
- Participate in technical discussions and design decisions
π― Make Real Impact
- Your code will help businesses and developers connect more efficiently
- See your features being used in production environments
- Influence the direction of open-source outsourcing tools
β‘ Quick Onboarding
- Docker Compose gets you running in under 5 minutes
- Well-documented codebase with module-level READMEs
- Friendly maintainers who respond to PRs promptly
- "Good first issue" labels for newcomers
Get started contributing in under 10 minutes:
# Fork the repository on GitHub, then clone your fork
git clone https://github.com/YOUR_USERNAME/teamatonce.git
cd teamatonce
# Start with Docker (easiest way)
docker compose up --build
# Access the app
# Frontend: http://localhost:5173
# Backend API: http://localhost:3001
# API Docs: http://localhost:3001/api-docsThat's it! You're running Team@Once locally.
Choose based on your experience level:
π’ Beginner-Friendly
- π Fix typos or improve documentation
- π Add translations -- We support 11 languages
- π Fix simple bugs
- β¨ Improve UI/UX
π‘ Intermediate
- π§ͺ Write tests for existing modules
- π Add new integration providers
- π Performance improvements
- π Write module-level documentation
π΄ Advanced
- π€ AI matching algorithm improvements
- βοΈ Core engine enhancements
- ποΈ Architecture improvements
- π Security features and hardening
# Create a new branch
git checkout -b feature/your-feature-name
# Make your changes
# - Backend code: /backend/src/modules/
# - Frontend code: /frontend/src/
# - Translations: /frontend/src/i18n/locales/
# Test your changes
cd backend && npm run lint
cd frontend && npm run lint
# Commit with a clear message
git commit -m "feat: add your feature description"# Push to your fork
git push origin feature/your-feature-name
# Open a PR on GitHub
# - Describe what you changed and why
# - Link to any related issues
# - Add screenshots if it's a UI changeWhat happens next?
- β Automated CI checks run on your PR
- π A maintainer reviews your code
- π¬ We may suggest changes or improvements
- π Once approved, your code gets merged!
β¨ Start small -- Your first PR doesn't need to be a huge feature
π Read the code -- Browse existing modules for patterns and conventions
β Ask questions -- Open a Discussion if you're stuck
π§ͺ Write tests -- PRs with tests get merged faster
π Follow conventions -- Use Conventional Commits format
We welcome contributions! See our Contributing Guide to get started.
Ways to contribute:
- Report bugs or request features via GitHub Issues
- Submit pull requests for bug fixes or new features
- Add new integration providers (search, storage, AI, email)
- Improve documentation
- Add translations
Thank you to all the amazing people who have contributed to Team@Once! π
Want to see your face here? Check out our Contributing Guide and start contributing today!
Connect with developers, get help, and stay updated on Team@Once's latest developments!
| Platform | Purpose | Link |
|---|---|---|
| π‘ GitHub Discussions | Ask questions, share ideas, feature requests | Start Discussion |
| π GitHub Issues | Report bugs, request features | Open Issue |
| π Website | Documentation, guides, blog | teamatonce.com |
- π€ Be Respectful -- Treat everyone with respect and kindness
- π‘ Share Knowledge -- Help others learn and grow
- π Report Issues -- Found a bug? Let us know on GitHub Issues
- π Celebrate Wins -- Share your success stories and deployments
- π Think Global -- We're a worldwide community with 11+ languages
Please report security vulnerabilities responsibly. See SECURITY.md.
This project is licensed under the GNU Affero General Public License v3.0.
Copyright 2025 Team@Once Contributors.
Built with NestJS, React, PostgreSQL, Qdrant, Stripe, LiveKit, Socket.io, and Tailwind CSS.
Website | Discussions | Contributing
Built with β€οΈ by the Team@Once community
If you find this project useful, please consider giving it a star! β