Owner: Engineering Team | Last Updated: 2026-01-30 | Status: Current
This page documents every repository in the WWAI (Walter AI) GitHub organization, including its purpose, tech stack, branching strategy, and setup instructions. All repositories are hosted under the wwai GitHub organization at github.com/wwai/.
Total repositories: 7 primary + supporting repositories.
| Repository | Description | Tech Stack | Primary Branch | CI/CD Status | Access Level |
|---|---|---|---|---|---|
app-main |
Web application (SaaS frontend) | Next.js 16, TypeScript, Redux, Tailwind CSS | main |
GitHub Actions | All Engineers |
backend |
REST API and core business logic | Django 5.x, Python 3.11, PostgreSQL, Redis, Celery | main |
GitHub Actions | All Engineers |
mobile-app |
iOS and Android mobile application | Flutter 3.24, Dart 3.5 | main |
GitHub Actions + Fastlane | Mobile Team |
chrome-plugin |
Chrome browser extension | TypeScript, Chrome Extensions API (Manifest V3) | main |
GitHub Actions | Plugin Team |
shopify-plugin |
Shopify app integration | TypeScript, Shopify App Bridge, Polaris | main |
GitHub Actions | Plugin Team |
wordpress-plugin |
WordPress plugin | PHP 8.2, WordPress Plugin API | main |
GitHub Actions | Plugin Team |
docs |
Developer documentation and Wiki content | Markdown, MkDocs / Wiki.js | main |
GitHub Actions (lint + deploy) | All Engineers |
app-main -- Web ApplicationRepository: git@github.com:wwai/app-main.git
The primary SaaS web application that users interact with. Handles text humanization UI, user account management, subscription/billing, document management, and analytics dashboards.
| Attribute | Value |
|---|---|
| Framework | Next.js 16 (App Router) |
| Language | TypeScript 5.x (strict mode) |
| State Management | Redux Toolkit + RTK Query |
| Styling | Tailwind CSS 3.x + custom design system |
| Testing | Jest + React Testing Library + Playwright (E2E) |
| Package Manager | pnpm 9.x |
| Node Version | 20.9.0 (enforced via .nvmrc) |
| Port (local) | 3000 |
Key directories:
app-main/
src/
app/ # Next.js App Router pages and layouts
components/ # Shared React components
features/ # Feature-specific modules (auth, humanizer, billing, etc.)
lib/ # Utility libraries and helpers
store/ # Redux store, slices, and RTK Query APIs
styles/ # Global styles and Tailwind config
types/ # Shared TypeScript type definitions
public/ # Static assets
tests/
e2e/ # Playwright E2E tests
unit/ # Jest unit tests
backend -- Django REST APIRepository: git@github.com:wwai/backend.git
The backend API powering all WWAI products. Handles authentication, text humanization orchestration, AI model inference, credit management, subscription billing via Stripe, and administrative tooling.
| Attribute | Value |
|---|---|
| Framework | Django 5.x + Django REST Framework 3.x |
| Language | Python 3.11 |
| Database | PostgreSQL 15 |
| Cache / Queue | Redis 7, Celery 5.x |
| AI Integration | Custom model inference via internal gRPC/REST endpoints |
| Testing | pytest + pytest-django + factory_boy |
| API Docs | drf-spectacular (OpenAPI 3.1) |
| Port (local) | 8000 |
Key directories:
backend/
config/ # Django project settings (base, dev, staging, prod)
apps/
accounts/ # User auth, profiles, JWT/OAuth
humanizer/ # Core humanization logic and AI model orchestration
billing/ # Stripe integration, credits, subscriptions
documents/ # Document storage, versioning
analytics/ # Usage tracking and reporting
api/ # API versioning, routers, permissions
ml/ # Model interface layer (inference clients)
tasks/ # Celery async tasks
tests/ # Test suite
docker/ # Dockerfiles and compose configs
scripts/ # Management and deployment scripts
mobile-app -- Flutter Mobile ApplicationRepository: git@github.com:wwai/mobile-app.git
Cross-platform mobile app for iOS and Android. Provides core humanization features, account management, and push notifications.
| Attribute | Value |
|---|---|
| Framework | Flutter 3.24 |
| Language | Dart 3.5 |
| State Management | Riverpod 2.x |
| API Client | Dio + Retrofit |
| Testing | flutter_test + integration_test |
| Build System | Fastlane (iOS + Android) |
| Min iOS | 15.0 |
| Min Android | API 26 (Android 8.0) |
Key directories:
mobile-app/
lib/
core/ # App-wide utilities, theme, routing
features/ # Feature modules (auth, humanizer, settings, etc.)
models/ # Data models and DTOs
services/ # API service layer
providers/ # Riverpod providers
test/ # Unit and widget tests
integration_test/ # Integration tests
ios/ # iOS platform files
android/ # Android platform files
fastlane/ # Build automation (Fastfile, Appfile)
chrome-plugin -- Chrome ExtensionRepository: git@github.com:wwai/chrome-plugin.git
Chrome browser extension allowing users to humanize text directly in web forms, Google Docs, email composers, and other browser contexts.
| Attribute | Value |
|---|---|
| Manifest | Manifest V3 |
| Language | TypeScript 5.x |
| Build Tool | Vite + CRXJS |
| UI Framework | React 18 (popup and options pages) |
| Testing | Vitest + Puppeteer (extension testing) |
| Port (local) | N/A (loaded as unpacked extension) |
Key directories:
chrome-plugin/
src/
background/ # Service worker (background script)
content/ # Content scripts injected into pages
popup/ # Extension popup UI
options/ # Extension options/settings page
shared/ # Shared utilities, API client, types
public/ # Static assets, icons
manifest.json # Extension manifest
shopify-plugin -- Shopify AppRepository: git@github.com:wwai/shopify-plugin.git
Shopify embedded app that allows Shopify store owners to humanize product descriptions, blog posts, and other store content.
| Attribute | Value |
|---|---|
| Framework | Remix (Shopify App Template) |
| UI Library | Shopify Polaris |
| Language | TypeScript 5.x |
| Auth | Shopify App Bridge OAuth |
| Testing | Vitest |
| Port (local) | 3001 |
Key directories:
shopify-plugin/
app/
routes/ # Remix routes (embedded app pages)
components/ # Polaris-based UI components
services/ # WWAI API integration, Shopify Admin API
utils/ # Helpers and shared logic
extensions/ # Shopify app extensions (theme blocks, etc.)
prisma/ # Database schema (session storage)
wordpress-plugin -- WordPress PluginRepository: git@github.com:wwai/wordpress-plugin.git
WordPress plugin that integrates WWAI humanization into the WordPress editor (Gutenberg and Classic).
| Attribute | Value |
|---|---|
| Language | PHP 8.2 |
| JS Build | TypeScript + webpack (for Gutenberg blocks) |
| WordPress Min | 6.4 |
| PHP Min | 8.1 |
| Testing | PHPUnit + WP_UnitTestCase |
| Port (local) | 8080 (via wp-env) |
Key directories:
wordpress-plugin/
includes/ # Core PHP classes
src/ # Gutenberg block source (TypeScript/React)
build/ # Compiled block assets (generated)
templates/ # PHP template files
tests/ # PHPUnit tests
assets/ # CSS, images, static JS
wwai.php # Plugin entry point
docs -- Developer DocumentationRepository: git@github.com:wwai/docs.git
Source files for the internal developer documentation wiki. Content is authored in Markdown and published to Wiki.js via CI/CD.
| Attribute | Value |
|---|---|
| Format | Markdown |
| Platform | Wiki.js |
| Linting | markdownlint + textlint |
| Preview | MkDocs (local preview) |
Key directories:
docs/
wiki-content/
getting-started/ # Onboarding and setup
architecture/ # System design and ADRs
backend/ # Backend-specific docs
frontend/ # Frontend-specific docs
mobile/ # Mobile-specific docs
plugins/ # Plugin documentation
infrastructure/ # AWS, Docker, CI/CD
security/ # Security practices
api/ # API reference
All repositories in the wwai organization follow these naming rules:
| Convention | Rule | Examples |
|---|---|---|
| Lowercase | All names are lowercase | app-main, backend |
| Hyphens | Use hyphens as word separators (never underscores) | chrome-plugin, mobile-app |
| Descriptive | Name reflects the project's function | backend not api-server |
| Suffix for plugins | -plugin suffix for integrations |
chrome-plugin, shopify-plugin |
| Prefix for libraries | lib- prefix for shared libraries |
lib-shared-types, lib-api-client |
| Prefix for infrastructure | infra- prefix for IaC repositories |
infra-terraform, infra-k8s |
| No abbreviations | Avoid ambiguous abbreviations | wordpress-plugin not wp-plugin |
# Create project directory
mkdir -p ~/projects/wwai && cd ~/projects/wwai
# Clone all repositories
repos=(
"app-main"
"backend"
"mobile-app"
"chrome-plugin"
"shopify-plugin"
"wordpress-plugin"
"docs"
)
for repo in "${repos[@]}"; do
git clone "git@github.com:wwai/${repo}.git"
done
cd ~/projects/wwai/app-main
nvm use # Switches to Node 20.9.0
pnpm install # Install dependencies
cp .env.example .env.local # Configure environment variables
pnpm dev # Start dev server → http://localhost:3000
cd ~/projects/wwai/backend
python -m venv .venv
source .venv/bin/activate # Linux/macOS
# .\.venv\Scripts\Activate.ps1 # Windows PowerShell
pip install -r requirements.txt
pip install -r requirements-dev.txt
cp .env.example .env
docker compose up -d db redis # Start PostgreSQL and Redis
python manage.py migrate # Run database migrations
python manage.py createsuperuser
python manage.py runserver # Start dev server → http://localhost:8000
cd ~/projects/wwai/mobile-app
flutter pub get
cp .env.example .env
flutter run -d chrome # Run in Chrome for quick testing
# flutter run -d <device_id> # Run on physical device or emulator
cd ~/projects/wwai/chrome-plugin
nvm use
pnpm install
cp .env.example .env
pnpm dev # Build in watch mode
# Load in Chrome: chrome://extensions → Load unpacked → select dist/
cd ~/projects/wwai/shopify-plugin
nvm use
pnpm install
cp .env.example .env
pnpm dev # Start with Shopify CLI → http://localhost:3001
cd ~/projects/wwai/wordpress-plugin
nvm use
npm install # WordPress plugin uses npm
composer install # PHP dependencies
npx wp-env start # Start WordPress environment → http://localhost:8080
npx wp-env run cli wp plugin activate wwai-humanizer
cd ~/projects/wwai/docs
pip install mkdocs mkdocs-material
mkdocs serve # Preview docs → http://localhost:8001
All repositories follow the same branching model:
| Branch | Purpose | Protected | Auto-Deploy Target |
|---|---|---|---|
main |
Production-ready code | Yes (require PR + 1 approval) | Production |
staging |
Pre-production testing | Yes (require PR) | Staging environment |
develop |
Integration branch for features | Yes (require PR) | Development environment |
feature/<ticket>-<description> |
Feature branches | No | N/A |
bugfix/<ticket>-<description> |
Bug fix branches | No | N/A |
hotfix/<ticket>-<description> |
Urgent production fixes | No | N/A (merged directly to main + develop) |
release/<version> |
Release preparation | No | N/A |
Typical flow: feature/WWAI-123-add-credits-display -> develop -> staging -> main
All repositories use GitHub Actions for CI/CD. Pipelines are defined in .github/workflows/.
| Stage | Trigger | Actions |
|---|---|---|
| Lint | Every push, every PR | ESLint, Prettier, Pylint, markdownlint |
| Type Check | Every push, every PR | tsc --noEmit, mypy, Dart analyzer |
| Unit Tests | Every push, every PR | Jest, pytest, flutter_test, PHPUnit |
| E2E Tests | PR to develop, staging, main |
Playwright, integration_test |
| Build | PR to staging, main |
Docker build, Next.js build, Flutter build |
| Security Scan | Daily + PR to main |
Snyk, Trivy (container scanning) |
| Deploy (Staging) | Merge to staging |
AWS ECS deployment via Terraform |
| Deploy (Production) | Merge to main (manual approval) |
AWS ECS deployment via Terraform |
Add these to your local bookmarks for quick access:
| Repository | CI Status URL |
|---|---|
app-main |
github.com/wwai/app-main/actions |
backend |
github.com/wwai/backend/actions |
mobile-app |
github.com/wwai/mobile-app/actions |
chrome-plugin |
github.com/wwai/chrome-plugin/actions |
shopify-plugin |
github.com/wwai/shopify-plugin/actions |
wordpress-plugin |
github.com/wwai/wordpress-plugin/actions |
docs |
github.com/wwai/docs/actions |
| Date | Author | Change |
|---|---|---|
| 2026-01-30 | Admin | Initial creation |
Prev: Development Environment Setup | Next: First Day Onboarding Checklist | Up: General