The admin panel allows authorized users to upload CSV files and deploy updates to the Cereyan website without technical knowledge.
Visit: https://cereyan.xyz/admin
Add these to your Vercel project:
Comma-separated list of authorized email addresses (no spaces after commas).
ADMIN_EMAILS=ainsley@example.com,colleague@example.com
Shared password for all admin users.
ADMIN_PASSWORD=your-secure-password-here
Important: Use a strong password and share it securely with your team (e.g., via 1Password, LastPass, or in-person).
Personal Access Token with repo write access.
Create token:
- Go to https://github.com/settings/tokens
- Click "Generate new token (classic)"
- Name it "Cereyan Admin Panel"
- Select scope:
repo(Full control of private repositories) - Generate and copy the token
GITHUB_TOKEN=ghp_xxxxxxxxxxxxxxxxxxxxx
Claude API key for AI assistance with CSV validation.
Get key:
- Go to https://console.anthropic.com/
- Create API key
- Copy the key
ANTHROPIC_API_KEY=sk-ant-xxxxxxxxxxxxxxxxxxxxx
# Using Vercel CLI
vercel env add ADMIN_EMAILS
vercel env add ADMIN_PASSWORD
vercel env add GITHUB_TOKEN
vercel env add ANTHROPIC_API_KEYOr add via Vercel Dashboard:
- Go to Project Settings → Environment Variables
- Add each variable for Production, Preview, and Development
- Make sure to enable "Sensitive" for ADMIN_PASSWORD and GITHUB_TOKEN
After adding environment variables, redeploy:
git push origin mainOr in Vercel Dashboard → Deployments → Redeploy
- Visit
/admin - Enter your authorized email
- Enter the shared admin password
- Click Login
- Click "Choose File" and select your CSV
- Click "Preview Changes"
The system will show:
- Date range
- Number of screenings
- Cereyan Selects count
- Any warnings (unknown venues, missing data)
Claude will assist with:
- Unknown venues → suggests similar names or asks for clarification
- Missing required data → requests additional information
- Format issues → explains what needs to be fixed
- If everything looks good, click "Deploy to Production"
- The system will:
- Commit changes to GitHub
- Trigger automatic Vercel deployment
- Site updates in ~1 minute
Use the template: templates/weekly-screenings-template.csv
Tarih- Date (DD.MM.YYYY)Gösterim- Film title (Turkish)Saat- Time (HH:MM or "Farklı Saatler")Mekan- Venue name
Gösterim (EN)- English titleYönetmen- DirectorYıl- Release yearSüre- Runtime (minutes)STAR- Put "X" for Cereyan SelectsEtkinlik- Event series nameLink- Ticket/info URL
→ Check that:
- Your email is in the
ADMIN_EMAILSlist - You're using the correct shared password
- Contact site admin if issues persist
Claude will help you:
- Match to existing venues
- Add new venues to the system
- Fix typos
- Check that
GITHUB_TOKENis valid - Verify token has
reposcope - Check Vercel logs for details
- Shared password protects access (not just email)
- Password verified on every API call
- GitHub token encrypted in Vercel
- Auth stored in session only (cleared on logout)
- All changes logged with commit history in GitHub
- Can roll back via GitHub if needed
Note: This uses a shared password (all admins use the same password). For higher security, consider implementing magic links or OAuth in the future.
Questions? Contact the site admin or check:
- GitHub: https://github.com/ainsleys/cereyan
- Scripts documentation:
/scripts/README.md