Content enhancement ideas — social preview workflow, tagging, graphics, timing
Generate Social Posts (AI)
Claude drafts platform posts from Jeff's Picks + act handles + stored hashtags. Accessible via the Ramp Report & Weekly Preview page.
Act handle & hashtag discovery
Handles and hashtags are auto-discovered by Claude on first generation and stored in the act_tags table for reuse every subsequent week.
Single short tease for IG · TikTok · YouTube Shorts
All three short-form platforms use the same ~1-line caption ("Who's flying where this weekend?"). Generate one field — not three — and copy-paste to all. Currently each platform gets its own draft.
Dynamic CTA direction
The tease CTA currently always says "FB page." As the email list grows, the generator should switch to "liveairshowtv.com" or "link in bio" and eventually promote the newsletter directly.
Twitter / X thread format
A single tweet pointing to Facebook underperforms. A 2-tweet thread (tweet 1: tease · tweet 2: full lineup with show names + acts) gets more engagement and is still readable as a standalone tweet.
Act handles (performers)
Claude looks up known handles in the performers table and act_tags, discovers new ones, and saves them back automatically.
Show account handles
The posts that perform best tag the show's own account (e.g. @daytonairshow, @ocairshow) — not just the acts. A show_tags table needs to be added, and the generator updated to tag shows by name match.
Facebook event page tagging
Airshow Facebook posts often tag the event page separately from the show's main account. This is different from an @handle and needs its own discovery/storage field.
Engagement tracking
Show accounts that reply to your tags are your best amplifiers. Over time, flag which accounts consistently engage so the generator prioritizes tagging them. Could live as an engages boolean in show_tags.
Auto-generate graphic text spec
The Ramp Report hub already has all the data — show name, dates, location, featured acts. Auto-output a formatted spec (dates · show · top acts) that can be dropped into a Canva template with one copy-paste. No manual re-typing of the lineup.
Thursday email vs Fri/Sat social cadence
The newsletter goes out Thursday ("here's what's coming this weekend"). Social preview posts perform best Friday morning or Saturday morning ("this weekend!" urgency). The generator should produce time-relative language based on the intended publish day — not always the same copy.
Airshow calendar API (Render)
FastAPI backend deployed at airshow-api.onrender.com — serves the full airshow calendar (214 shows through Dec 2026) to all LASTV tools via /lineups. Render Blueprint auto-deploys from github.com/phurst451/airshow_db on every push. Note: free tier spins down after 15 min of inactivity (~30s cold start). Upgrade to Render Starter ($7/mo) if cold starts become a problem for live use.
Replace SQLite-on-git with live DB writes
Currently, scraper runs update airshow.db locally, the file is committed to git, and Render redeploys to pick up the new data. This works for a weekly workflow but means every data update requires a git push + full redeploy. The upgrade path: FastAPI writes directly to a persistent Render disk or Turso cloud, eliminating the git-as-transport pattern.
Retire duplicate Turso shows/performers tables
The lastv-gfx Turso DB has its own shows and performers tables that partially duplicate airshow.db. Once the Render API is the reliable show/act source, these Turso tables can be retired. Turso should own only GFX-specific operational data: lowers, bigbox, rundowns, ramp report issues, act tags.
Scheduled lineup scraper
scrape_lineups.py populates act lineups from airshows.aero + milavia.net but must be run manually. Set up a weekly cron (Render Cron Job or GitHub Actions) to auto-scrape and commit updated data every Monday.
Render Blueprint — airshow-api
Deployed June 2026. Service: airshow-api (Python 3, Oregon region). Reads airshow.db committed to the airshow_db repo. CORS configured for lastv-gfx.vercel.app. Blueprint ID: exs-d8on053sq97s73fs4lf0. Requires ADMIN_API_KEY env var set in Render dashboard.
Vercel FASTAPI_URL env var
Added FASTAPI_URL=https://airshow-api.onrender.com to the lastv-gfx Vercel project (production). The lineup-suggest API route now falls back to this when airshow.db is not present locally (i.e. always on Vercel).
2026 lineup scrape
June 16, 2026: scraped airshows.aero + milavia.net — 327 lineup rows written across 89 shows for 2026 season. Committed to airshow_db repo and redeployed to Render.
Loj opt-in on LiveAirShowTV.com homepage
Eugene Loj's core recommendation: large above-the-fold opt-in form on the homepage. First Name + Email only. Proven results: 7,500 leads in 60 days for similar air show clients. Not yet implemented on the site.
Shift primary CTA from Facebook to email list
Currently all social posts drive to Facebook for "full details." The long-term play is to own the audience — drive followers to the newsletter/site instead. Facebook reach is rented; the email list is owned.
Historical hashtag performance
Track which hashtags correlate with higher reach over time. The act_tags table could grow an engagement_score column updated after each week's posts are published.