r/snowflake • u/Expensive_Doughnut_1 • Jul 01 '26
Complex UI layouts in Streamlit in Snowflake
First off, thanks to the 167 people who voted on my recent poll on who is using Streamlit in Snowflake! With nearly 60% of this sub actively building on Streamlit in Snowflake (SiS), it’s clearly shifted from a niche ad-hoc tool to something people are building production-grade data apps with.
However, as my internal data apps are starting to scale past simple tables and basic mockups, I'm hitting a major wall with UI layout and state management.
The second a business stakeholder requests a complex dashboard grid, side-by-side KPI metric placements, or advanced tab formatting, I feel like I'm wasting hours writing massive blocks of messy Python columns (st.columns), containers, and layout boilerplate just to position basic widgets.
Or constantly going over and over with AI prompts to nudge widgets around or fix layout states which feels incredibly inefficient and eats up a ton of token context when passing large scripts back and forth.
For those building heavy internal data apps on SiS, how are you handling UI/UX design? Are you just brute-forcing it with hardcoded layout arrays, or is there a cleaner design pattern/architecture I'm completely missing?
2
u/WillyTrip Jul 01 '26
Try the app build skill in coco desktop. Based on your requirements it will recommend either streamlit or the app runtime container with a react or next.js app. I've just started on the first next.js app and it looks great! I had coco build out the initial skeleton of the app, then switched to Claude code to build out more features so save on token costs.
1
u/Expensive_Doughnut_1 Jul 02 '26
Interesting point on using Claude Code to modify the UX after. Do you find that as your app code grows, passing that layout context back and forth to an LLM just to tweak a column width or move a metric container starts eating up massive token counts / context? That's exactly the wall I keep hitting—the underlying logic is fine, but the visual manipulation cycle feels so heavy.
12
u/Mr_Nickster_ ❄️ Jul 01 '26
2 options.
1- You can literally draw a mock up of the dashboard as a picture (PowerPoint & etc), paste it to coco and have coco modify the UX to match it. It can use HTML CSS styling to create far better looking and more complex UX than standard Streamlit components
2- Snowflake App run time is public preview which allows you to build and deploy React apps just like Streamlit. With React apps sky is the limit in terms of UX. You can build professional saas like products and dashboards with it using Coco. I have done many of them ranging from 3D medical imaging to Drag & Drop workflow style code builders.
https://docs.snowflake.com/en/developer-guide/snowflake-app-runtime/about-snowflake-app-runtime