We polish the layout & focus on improving user experience.
First, we update the Reading view so that the main image always shows the last card pulled, making readings feel more dynamic as you add cards. Next, we refine the Pull Reading button: instead of always overwriting cards without warning, we design two versions—one that runs instantly on a blank reading, and another that asks for confirmation if cards already exist. We also polish the layout by making buttons prominent, customizing confirmation messages, and ensuring the Quick Pull button is accessible from anywhere in the app. Finally, we improve consistency by renaming actions (e.g. “New Reading,” “Pull Cards”) and re-ordering fields so the card list displays more clearly at the top of each reading.
What you’ll learn in this episode:
Build a virtual column that displays the last pulled card’s image.
Use INDEX([Cards], COUNT([Cards])) with dereferencing to always show the latest card.
Make the Pull Reading button prominent and user-friendly.
Duplicate and conditionally display buttons with ISBLANK([Cards]) / ISNOTBLANK([Cards])).
Write a custom confirmation message warning users about overwriting cards.
Add the Quick Pull button to multiple views for easy access.
Clean up display names (“New Reading,” “Pull Cards”) for consistency.
Adjust the Reading detail layout so the cards list is the main focus.
IN THIS LESSON
-
00:00 Intro
00:13 Virtual column for last pulled card
00:48 INDEX + COUNT formula explained
01:36 Updating the image column to dereference last card
03:06 Making Pull Reading button prominent
04:19 Problem: overwriting existing cards
04:36 Using Google Sheets version history as backup
05:32 Adding confirmation to Pull Reading button
06:10 Show If with ISBLANK / ISNOTBLANK)
10:01 Adjusting view actions & button placement
11:34 Custom confirmation message text
12:45 Adding Quick Pull button to all views
14:19 Hiding helper columns & cleaning layout
15:00 Renaming buttons: “New Reading” & “Pull Cards”
16:41 Reordering Reading detail view for clarity
17:27 Wrap up – UX polish complete
-
Readings[Last Pulled]
INDEX([Cards], COUNT([Cards]))
Readings[Image]
[Last Pulled].[Image]
Want to skip a few steps?
Jump straight into a working version of the app.
By purchasing access, you’ll unlock the current AppSheet project template + full project folder contents—including the tarot deck spreadsheet, card images, descriptions, and other assets.
⚡️ Live updates included
This isn’t a static file—the template is updated every time a new lesson is released. You’ll have ongoing access, so you can come back any time, clone the latest version, and see the new features in action.
🎨 Yours to customise
You’re free to modify, expand, and experiment with the template however you like. The idea isn’t just to hand you a finished app, but to give you a live playground where you can learn by doing and build confidence in your own no-code skills.
💡 Pro tip: Start with a simple goal. Maybe it’s adding your own custom card deck, building a new button, or creating a new layout view. Use the template as your foundation, and let each step spark ideas for what else is possible.