Twelve features, five fixes: what shipped to MantaGlow this week
5 min read
Long week. Most of this list came out of real shows my beta users were running, with real problems they Slacked me about at 7pm on a doors-at-8 night. That's the best and worst thing about shipping live event production software. You can't tell someone 'we'll fix it next sprint' when their show starts in an hour.
Here's everything that landed between last Friday and this morning.
Travel got a massive overhaul
If your crew is flying in from multiple cities, travel in MantaGlow used to be rough. You'd type in 'LAX' and the system would try to resolve it as a street address. Flight numbers were just free text. Return trips didn't really exist as a concept, you had to create two separate one-way trips and hope you got the dates right.
Fixed. All of it.
Airport codes are first-class now
Type 'PHX' or 'LAX' or 'JFK' and the system knows what you mean. It auto-fills the airport name, the city, and uses the code everywhere in the UI. Your travel card shows the code, not a 40-character address string. The crew call sheet shows the code. The exports show the code.
This is how your crew actually talks about flights. Nobody says 'meet at 1800 North 24th Street at 4pm.' They say 'PHX at 4.'
Flight numbers and auto-return trips
Add a flight number and the system looks it up. Add an outbound trip, check the 'auto return' box, and the return trip shows up in that crew member's itinerary with a placeholder you can fill in once the return flight is booked.
This used to take 4 or 5 minutes per crew member. Now it's about 30 seconds.
<!-- screenshot: travel card with airline branding and flight info -->
Travel cards with airline branding
Small thing, honest. The travel card on the crew view now shows the airline's colors and wordmark. Delta card is Delta-looking. Southwest card is Southwest-looking. It's purely cosmetic but it makes the dashboard scannable when you have 14 crew flying in on 6 different airlines.
Schedule: copy days and CSV import
The ask was 'I build the same day plan for Wed, Thu, and Fri of a 3-day show. Please let me not type it three times.' Reasonable.
Copy days
Click a day in the schedule, click duplicate, pick the target day. Done. It copies the session blocks, the crew assignments, and the notes. You can then edit whatever's different.
CSV import
If you already have a run of show in a spreadsheet, drop the CSV in and it'll map columns to fields. Headers like 'time', 'item', 'department' just work. Weird headers you can drag-map manually.
This one wasn't fun to build because CSVs from the real world are a mess. People put dates in every format that exists. Times come in with and without timezones. Someone had a column literally called 'time (but sometimes duration)'. We handle more of those cases than I expected to.
<!-- screenshot: CSV import column mapping -->
Venues create themselves now
When you started a new project and put in a venue name that didn't exist, the system used to stop you. Go to a different screen, create the venue, come back, pick it. Five clicks, three screens, one rage quit.
Now: type the venue name, hit tab, and it creates a venue placeholder with the name you typed. You can fill in the address and load-in details later from the venue screen. The project keeps moving.
The truck packing bug that kept biting
Okay, this one. The same bug got 'fixed' twice in the changelog because it came back. Sorry.
The behavior: you mark a case as 'packed.' The items inside the case should inherit that status. They weren't. So your crew chief would look at the pack sheet and see 'case packed, but 6 of 12 items inside show as unpacked' and have no idea what was actually on the truck.
The first fix was optimistic client-side only. If you refreshed the page, the cascade didn't persist. The second fix does it at the API layer so the state actually saves. Tested with 200 cases. Works now. If it comes back a third time I owe the beta group a round.
Equipment release on project close
Same category of bug. You mark a project as cancelled, closed, or wrapped. The equipment that was checked out to that project should return to available inventory.
It wasn't. You'd close a wrap and the gear would stay 'out' indefinitely, which made your inventory numbers drift and made the next project unable to pull what should've been available.
Fixed at the status-change hook. All three end states (cancel, close, wrap) now cascade a release. Backfilled for projects closed in the last 30 days so nobody has to manually fix their inventory counts.
<!-- screenshot: equipment inventory view after release cascade -->
Smaller things worth mentioning
- Crew roles by department: Pick a department (audio, lighting, video, etc.) and the role dropdown shows the right options for that department. No more scrolling past 60 unrelated roles to find A2.
- 3-column desktop layout: The app looks like it was actually designed for a 1440px monitor now, not an iPhone stretched horizontally. If you're on mobile, nothing changes.
- Share endpoint crash: A regex in the share link validator was matching nothing, which made the endpoint 500 when any share was accessed. This one was embarrassing. Turnaround was about 40 minutes from first report.
What's next
Lasso integration. Check-in and check-out for real gear, tied to the truck packing layer so the cases you pack in MantaGlow actually reflect what's out of the cage. That's the next big push.
If you want to poke at any of this, beta is still open. I read every bug report, and I'm trying to bring the turnaround on critical bugs down from 72 hours to 24.