# Packaging for CodeCanyon (Author checklist)

Use this checklist before uploading your ZIP to Envato.

## Recommended ZIP layout

```
Academy-LMS-v1.0.0.zip
├── Documentation/
│   └── index.html          (copy from documentation/)
├── Main Files/             (clean project source)
│   ├── manage.py
│   ├── requirements.txt
│   ├── .env.example
│   ├── passenger_wsgi.py
│   ├── apps/
│   ├── config/
│   ├── templates/
│   ├── static/
│   ├── media/Logo/         (default logo only)
│   ├── storage/            (empty except .gitkeep — NO installed lock)
│   ├── documentation/      (optional duplicate)
│   ├── README.md
│   ├── CHANGELOG.md
│   └── VERSION
└── Screenshots/            (for your Envato preview upload — optional in ZIP)
```

## Remove before ZIP (never ship to buyers)

- `venv/`
- `.env` (secrets)
- `db.sqlite3` / local databases
- `__pycache__/` / `*.pyc`
- `storage/installed` (buyers must run installer)
- `.DS_Store`, IDE folders, personal media uploads
- Agent / Cursor tooling folders

## Keep

- `.env.example`
- Empty `storage/` with `.gitkeep`
- Default logo in `media/Logo/`
- `documentation/index.html`
- Web installer at `/install/`

## Envato listing tips

- Category: often **PHP Scripts → Miscellaneous** is crowded; Python items may fit **Other** or platform-specific — check current Envato categories.
- Provide a **live demo** with demo logins (separate from buyer package).
- Screenshots: dashboard, courses, payments, settings/theme, installer, tickets.
- Mention: Python 3.10+, Django 5, SQLite/MySQL, Stripe optional.
- Do not put support behind a purchase-code gate for documentation (docs must be readable).

## Demo site

On your demo server, complete installer once, seed demo data, and publish demo accounts in the item description (not inside buyer docs as the only password if you rotate them).

## After purchase flow (buyer)

1. Extract Main Files  
2. `pip install -r requirements.txt`  
3. Run app  
4. Open `/install/`  
5. Configure Academy Settings  

## Before review — common Envato soft rejects

1. Prefer **local** Bootstrap/Icons assets instead of CDN (vendor into `static/vendor/`) if reviewers flag CDN use.
2. Offline documentation must open without a purchase key — already true (`documentation/index.html`).
3. Installation must be beginner-friendly — web installer covers this.
4. Do not include demo user passwords as the only admin path; installer creates the buyer’s admin.
