# Travelingo SaaS Platform

A SaaS-ready travel language learning platform built with PHP, MySQL and vanilla JavaScript.

## What is included

- Multi-tenant schema
- User registration and login
- App dashboard
- Trip creation
- Language packs
- Phrase lessons
- XP, levels, badges and readiness score
- Landed Mode travel companion
- Admin dashboard
- Subscription/billing placeholders
- PWA manifest and service worker
- Seed data for Greek, Spanish, French, Italian and German

## Local setup

1. Create a MySQL database called `travelingo`.
2. Import `database/schema.sql`.
3. Import `database/seed.sql`.
4. Copy `config/env.example.php` to `config/env.php` and update DB details.
5. Point your local web server document root to `/public`.
6. Open `/` in the browser.

## Demo users after seed

- Admin: `admin@travelingo.local` / `password123`
- User: `joe@example.com` / `password123`

## Structure

```text
api/                 JSON API endpoints
config/              Environment config
src/                 Shared PHP classes
public/              Web root
public/app/          Customer app
public/admin/        Admin portal
database/            SQL schema and seed data
docs/                Product and technical notes
```

## Production notes

Before live use, add real email sending, Stripe/Paddle keys, rate limiting, HTTPS-only cookies, proper queue workers and production logging.
