Skip to content

Tutorials

Learn AppMecca step-by-step. Each tutorial track takes you from a hello-world app through to production deployment patterns, building a complete todo application along the way.

Choose Your Stack

All three tracks build the same application (a todo list API) with the same REST endpoints, so frontends and backends are interchangeable between tracks. Pick the language you're most comfortable with.

Track Backend Frontend Worker System Est. Time
Python + React Django (DRF) React (Vite) Celery + Redis ~2.5 hours
Java + Vue Spring Boot (JPA) Vue 3 (Vite) Spring Task + Redis ~2.5 hours
Node.js + Svelte Express (Knex.js) SvelteKit (Vite) BullMQ + Redis ~2.5 hours

Learning Path

Each track has 8 parts that progressively introduce AppMecca features:

Part 1: Your First Deployment
  └── Deploy a hello-world app (build, deploy, logs, undeploy)

Part 2: Adding a Database
  └── Add PostgreSQL, migrations, entrypoint scripts

Part 3: Going Full-Stack
  └── Add a frontend SPA, multi-container builds

Part 4: SPA Runtime Config
  └── Runtime environment injection for static frontends

Part 5: Background Workers
  └── Portless worker services with command overrides

Part 6: Branch Deployments
  └── Deploy feature branches side-by-side

Part 7: Internal Service Discovery
  └── How services address each other, and what `visibility` does

Part 8: Production Patterns
  └── Memory limits, health checks, rollback, backups

Prerequisites

Before starting any tutorial, you need:

  1. An AppMecca environment -- ask your platform admin for access to a dev environment
  2. The AppMecca CLI installed -- see Installing the CLI
  3. Git authentication configured -- run appmecca git-auth login and follow the prompts
  4. Docker installed locally -- for testing apps before deploying (optional but recommended)

Standard API Contract

All three tracks implement the same REST API:

GET    /api/todos          -> [{id, title, done, created_at}, ...]
POST   /api/todos          -> {id, title, done, created_at}
PUT    /api/todos/:id      -> {id, title, done, created_at}
DELETE /api/todos/:id      -> 204
GET    /health             -> {status: "healthy"}

This means you can mix and match: complete the Python backend tutorial, then follow the Vue frontend tutorial from the Java track, and everything will work together.

Tutorials vs Examples

Tutorials Examples
Format Step-by-step guided walkthrough Reference documentation
Approach Build incrementally, each part extends the previous Complete, standalone apps
Audience New AppMecca users learning the platform Developers looking for patterns to copy
Coverage Every mecca command and flag Focused on configuration patterns

If you prefer to learn by reading code, jump straight to the Examples.