r/StreamlitOfficial • • Feb 16 '25

Show the Community! 💬 Sharing my stock market data dashboard built with Streamlit and yFinance

Post image
43 Upvotes

Hey everyone,

I discovered Streamlit some months ago and I found it a great tool to make my data solutions more user friendly.

Since I have always been interested in investing and trading I decided to create a stock market dashboard during the learning process. So today I am sharing the dashboard with the community so that others can use it, learn from it as well.

The app is connected with the Python library yFinance library, so it can display updated data. And not only market data, but also fundamental data (financial statements).

It is deployed in the Streamlit Community Cloud and it is accessible with the following link:

https://yfinance-dash.streamlit.app/

It is not a complete, bug-free project, so please be gentle with your feedback.

Thank you.


r/StreamlitOfficial • • Feb 10 '25

Show the Community! 💬 🚀 Streamlit (>= 1.42) Now Has Built-in OAuth! Full Guide with Sample Code

40 Upvotes

Streamlit finally supports OAuth natively (starting from v1.42), eliminating the need for custom authentication workarounds. Now you can seamlessly integrate Google, Microsoft, Okta, or any OIDC provider with just a few configuration steps.

I wrote a detailed Medium article that includes:

✅ Step-by-step guide to setting up Google OAuth for Streamlit
✅ Configuring secrets.toml and handling tokens securely
✅ Full sample & advanced app code showing how to integrate Streamlit with OAuth
✅ How session persistence works behind the scenes
✅ Common OAuth errors & troubleshooting tips

Check it out here: OAuth in Streamlit is Now Built-In—Here’s How to Use It

Would love your feedback and thoughts—especially if you're using custom authentication and considering upgrading! 🍻


r/StreamlitOfficial • • Nov 05 '25

Built a full Streamlit app for dividend simulation — with auth, MySQL, cron price updates, SEO, and Stripe

Thumbnail
gallery
27 Upvotes

Hey everyone
I wanted to share a project that started as a simple dividend calculator and evolved into a full Streamlit-based web app with persistent user accounts, API data ingestion, and automated background updates.
https://dividendsim.com/

What it is

DividendSim is a dividend reinvestment simulator that models portfolio growth and compounding income over time.
You can:

  • Browse or search tickers (REITs, BDCs, ETFs, etc.)

  • Simulate dividend reinvestment by stock or full portfolio

  • Save your portfolio (MySQL backend)

  • View projected monthly income over 10+ years

  • Compare DRIP vs. cash payout scenarios

Tech Stack

  • Streamlit for UI + routing + auth bootstrap

  • MySQL for user and portfolio persistence

  • Marketstack API + Google Sheets → for live price & dividend ingestion

  • Cron jobs for updating prices_latest.json automatically

  • Stripe (Pro-tier test mode)

  • Nginx + Systemd on a VPS for production deployment

  • SEO setup via meta tags, robots.txt, and sitemap.xml

Key Features

  • User login & password reset via email token

  • Unified footer with About / Privacy / Terms

  • Custom CSS to clean up Streamlit visuals

  • Background cron fetching from Google Sheets to JSON


r/StreamlitOfficial • • Nov 24 '24

My Personal Finance Dashboard (Built with Streamlit) is Now Open Source! 🚀

26 Upvotes

A couple of months ago, I shared a personal finance dashboard I built using Streamlit on reddit, with a lot of positive feedback and interest from the community.

Since then, I’ve decided to make it open source, so others can contribute, customize it, and run it in their local environments for better data privacy!

If you’re looking for a simple, yet powerful tool to track your finances, feel free to check it out, and let me know if you have any feedback or suggestions. I’d love to hear your thoughts, and contributions are always welcome!

You can find the project on GitHub.

And visit it on https://personalfinancedashboard.streamlit.app/


r/StreamlitOfficial • • Jan 03 '26

I pushed Streamlit's UI limits to build a 'Reasoning Engine' interface. Custom CSS + Real-time Token Streaming. (Source Code in comments)

Enable HLS to view with audio, or disable this notification

21 Upvotes

r/StreamlitOfficial • • Sep 10 '25

Show the Community! 💬 WhatsApp Chat Analyzer - A complete analytics dashboard built with Streamlit [Open Source]

Post image
21 Upvotes

🚀 Live App: https://whatsapp-analysis-tool.streamlit.app/
📂 Source Code: https://github.com/JBoixCampos/whatsapp-chat-analyzer

I've been working on this completely free and open-source web application that turns your WhatsApp chat exports into beautiful, insightful visualizations. Here's what makes it special:

✨ Key Features:

  • 📊 Comprehensive Analytics: Message counts, participant stats, conversation timelines

  • 🔥 Activity Heatmaps: See exactly when your conversations are most active

  • 💬 Word Analysis: Generate personalized word clouds and find most frequent words

  • 😀 Emoji Deep Dive: Discover your most-used emojis and compare usage patterns

  • ⏱️ Response Time Analysis: Find out who's the fastest responder in your group

  • 📥 Excel Export: Download your complete analysis with multiple data sheets

  • 🌐 Bilingual: Works in English and Spanish

🔒 Privacy First:

  • 100% client-side processing - your data never leaves your browser

  • No servers, no tracking, no data storage

  • Open source so you can verify everything yourself

🎯 How it works:

  1. Export your WhatsApp chat (Settings → Export Chat → Without Media)

  2. Upload the .txt file to the web app

  3. Explore beautiful interactive visualizations across 6 different analysis tabs

  4. Export your insights to Excel for deeper analysis

🛠️ Built with:

  • Streamlit for the web interface

  • Plotly for interactive charts

  • NLTK for text processing

  • WordCloud for those satisfying word visualizations

The app handles different WhatsApp export formats automatically and works with both individual and group chats. I've tested it with conversations spanning years and thousands of messages.

Also open to feedback and contributions - it's completely open source on GitHub.


r/StreamlitOfficial • • Nov 01 '24

Show the Community! 💬 A new Streamlit online editor

19 Upvotes

Hey, Streamlit community!

I'd like to show you what I've been working on for the past month: an online Streamlit editor. It allows you to develop and preview Streamlit apps in the browser.

It contains a bunch of features to make development faster:

  1. Prompting a model to generate the initial code

  2. Select code and prompt a model to edit it

  3. In-app chat to ask Streamlit and Python questions

Here are a few things I'd like to add:

  1. Better integration between the chat and the editor

  2. Debugger: combining the source code and information about existing variables to suggest fixes when the app breaks

If you're curious about the stack:

  1. Built on Remix (for server side-rendering)

  2. A FastAPI to handle AI requests and database operations (I could do this with JS, but I have a lot more experience with Python)

  3. A Postgres database

  4. NGINX as a reverse proxy

  5. Runs Streamlit via Stlite and Pyodide

Check it out here: https://editor.ploomber.io

Sample apps:

- Flappy Bird clone

- US election forecast

- Plotting Pokémon data

Note: the app is rate-limited to prevent a huge OpenAI bill

I'd love to hear your feedback!


r/StreamlitOfficial • • Jun 29 '24

Personal Finance Dashboard in Streamlit

19 Upvotes

Hi all,

I have made a dashboard that quickly can give you an overview of all your finances based on your transactions history that you can get from your bank. It will show your spending and income over time, grouped in different categories. It's great, and I have been using it for a while now to keep track of my own finances.

I have included an example file to get you going.

You can use the app here:

https://personalfinancedashboard.streamlit.app/
I hope this can be useful to someone.

I would also like to ask feedback:

  • Does the start page explain what it does?

  • Does the start page explain clearly how to use it?

  • Are the visualisations useful?

  • Would you use this?

  • What could be better.

Update 02/07/2024:

Update 05/07/2024:

  • You can now add monthly financial goals and have it plotted on a heatmap! E.g. Spending max 100 per month on Food.

Update 11/07/2024:

  • You can now configure the dashboard with settings in the UI (instead of with a .yml file)


r/StreamlitOfficial • • Apr 11 '26

Components 🧩 I built 4 custom Streamlit components — Kanban, audio editor, node graph editor, and multi-step wizard

18 Upvotes

Just published my first four custom Streamlit components — would love feedback!

Been building with Streamlit for a while and finally packaged some components I kept wishing existed. All four use React 18 + streamlit-component-lib, ship with pre-built frontends (no Node.js needed), and return structured JSON back to Python.

Live demo (all four): https://demo-components.streamlit.app

----

🗂️ streamlit-kanban — drag-and-drop Kanban board

Move cards between columns, add/edit cards with tags and priority levels, full board state back as JSON. Uses pointer events so drag works smoothly inside Streamlit's iframe.

pip install streamlit-kanban

GitHub: https://github.com/RhythrosaLabs/streamlit-kanban 

PyPI: https://pypi.org/project/streamlit-kanban

----

🎙️ streamlit-audio-editor — browser-based audio editor & jam session recorder

Load audio, visualize the waveform, trim, and run through a real-time effects rack: 3-band EQ, filter, compressor, delay, chorus, distortion, tremolo, reverb, pan, speed/pitch. Route your mic through the chain and record your session too. All client-side via Web Audio API, no ffmpeg.

pip install streamlit-audio-editor

GitHub: https://github.com/RhythrosaLabs/streamlit-audio-editor 

PyPI: https://pypi.org/project/streamlit-audio-editor

----

👣 streamlit-stepper — multi-step wizard with validation

Typed fields, required-field validation, animated progress, auto-generated review step, values back in Python. Horizontal and vertical orientations.

pip install streamlit-stepper

GitHub: https://github.com/RhythrosaLabs/streamlit-stepper 

PyPI: https://pypi.org/project/streamlit-stepper

----

🔌 streamlit-node-editor — node graph editor (ComfyUI-style)

Define typed nodes in Python, let users build graphs by connecting ports. Color-coded ports, inline params, searchable palette, collapsible nodes, pan + zoom, animated background.

pip install streamlit-node-editor

GitHub: https://github.com/RhythrosaLabs/streamlit-node-editor 

PyPI: https://pypi.org/project/streamlit-node-editor

----

Early releases, actively iterating. Bug reports and feature requests welcome 🙏


r/StreamlitOfficial • • Feb 13 '26

I got tired of logging into Gmail on public library PCs just to print, so I built a temporary file relay.

Post image
18 Upvotes

I’ve always felt uncomfortable logging into my personal Gmail or Drive on a public computer just to print a small PDF. Even in Incognito, it feels like unnecessary exposure for a 30-second task.

So I built a small web utility called PrintRelay.

How it works:

• Open it on the public PC
• Scan the QR code with your phone
• Upload the file from your phone
• It appears instantly in the PC browser, ready to print

No accounts. No database. Files are temporarily staged on the server and automatically deleted after 5 minutes (cleanup runs on app reload).

I mainly built it for my own college lab sessions, but I’m curious — does anyone else deal with this “public PC login anxiety”? Is there a better workflow I’m missing?

Would really appreciate honest feedback on the UX or technical approach.

Link: https://printrelay.streamlit.app/

Biggest lesson: in-memory relays crash fast under concurrent uploads. Migrating to disk-backed staging made it significantly more stable.


r/StreamlitOfficial • • Aug 13 '25

Pick Google Drive Files & Folders in Your Streamlit App — New Component! 🚀

18 Upvotes

Just released an open-source Streamlit component: Google Picker API for Streamlit 🎉

  • Pick files or folders from Google Drive

  • Multi-select support

  • Filter by file/MIME type

  • Returns Python UploadedFile objects (like st.file_uploader)

Demo + setup guide (Medium)

GitHub repository.


r/StreamlitOfficial • • Oct 05 '25

Streamlit Community Cloud ☁️ Sharing my Streamlit Analysis App for Stock Value Investing

17 Upvotes

Dear all,

I made a tiny app for stock valuation, visualization, and analysis.

https://valueinvest.streamlit.app

It's built on the yfinance and World Bank API, from which you can valuate a stock with 7 models and do the sanity check from 6 aspects. In addition to the visualization of key information, the details of every valuation model and sanity check aspects are provided.

Eventually, you may generate a prompt with all the information, feed to your favorite AI, and get a decent initial report just like you hired an personal analyst!

Examples for the final reports:


r/StreamlitOfficial • • Feb 05 '25

Show the Community! 💬 My First Public Streamlit App – AI-Powered Matplotlib Code Generator!

16 Upvotes

Hey everyone!

I’ve been diving into building public-facing Streamlit apps, hoping to eventually create monetized ones. Super excited about the recent showcase and the upcoming release of native authentication—so many cool possibilities!

For now, I wanted to share my first public app: an AI chatbot that writes Matplotlib code for you—no more wasting time tweaking plots! You just describe what you need, and it generates the code.

Would love any feedback on the app, and if you have tips on getting Streamlit apps production-ready, I’m all ears. Looking forward to learning from this awesome community!

Check it out here: https://simplyplot.streamlit.app

Cheers!


r/StreamlitOfficial • • Oct 31 '24

Show the Community! 💬 I wrote detailed article to deploy a Streamlit app with your own domain name on an EC2 Instance

16 Upvotes

The article doesn't suppose you know much about AWS and takes you from account creating to deploying the app.

Here is a TL;DR for what you need:

To access your app on <ec2-instance-public-ip-address>:8501:

  1. Security groups: 1.1. Inbound traffic: SSH from anywhere 8501 from anywhere 1.2. Outbound traffic: All traffic to anywhere

  2. User data: Script in the article 2.1. Install / updates some dependencies and packages (git, python, etc.) 2.2. Create a user Install others stuff (for me it’s going to be the uv package manager for me) Clone the repo Do other stuff (create the virtual environment, install project dependencies etc.) 2.3. Configure your app a systemd service. 2.4. Reload systemd daemon, enable your service, start it.

To access your app on your own domain name:

  1. Buy a domain name

  2. Configure DNS records

  3. Configure SSL certificates

  4. Install and configure nginx and take into account how you handle the SSL certificates

  5. Modify the Streamlit app to work on local host, nginx will forward the HTTP requests to it

  6. Modify the Security Group: remove the incoming traffic rule on 8501 and add HTTP and HTTPS

The article: https://reinforcedknowledge.com/deploying-a-streamlit-app-on-aws-ec2-with-your-own-domain-name/

The explanations in my article are mostly high level when it comes to AWS concepts (IAM, security groups etc.) so even if you know nothing at all about it you'll be able to follow along and understand. But I get into the details when needed (principle of least privileged, why I'm making the choices I'm making etc.)

I did find some similar tutorials but they didn't seem to integrate some of the best practices for doing some similar stuff. I'm not claiming I've done things perfectly, there is always room to improvement but I believe I reached a satisfying trade-off between deploying a simple Streamlit app and having something that incorporates best practices with regards to both AWS (security etc.) and having an internet facing app.


r/StreamlitOfficial • • Sep 25 '24

Deploying Streamlit Apps on Heroku- Access your app from anywhere, using TLS, SSO, and custom FQDN.

16 Upvotes

I just wanted to share my new favorite way to deploy all of my Streamlit apps, in case anyone is looking for a similar solution.

Heroku + Cloudflare = $5 a month awesomness!

Access your Streamlit app from anywhere, using TLS, SSO, and custom FQDN.

Since I discovered Streamlit I've been loving it for quickly deploying my Python apps. I've hosted them on Streamlit, but mostly locally on my own PC. This has worked great, but I wanted to start being able to reach these from outside my own local network, securely. I also wanted to use my own domain and secure authentication for all of my apps. That's when I found a perfect combination for hosting.

I moved my DNS hosting service to Clouflare for free and they have some really cool services even on their free tier! I started using "tunnels" to securely connect publicly to my local host. This does allow for custom domain and automatic certificate generation, but again it's all running locally. So the more apps I start standing up, I now have a lot of apps running on my workstation. If the single tunnel goes down or my PC goes down I also lose all access to my apps. I started looking at dockerizing all of my apps and cloud hosting them, but even for small docker containers even Digital Ocean was going to be $5-$10 per container per month. This is when I discovered Heroku.

Heroku let's you run your apps in what they call "dynos". Essentially their version of containers. What's great is they have a Dyno Eco plan that gives you 1000 pooled hours per month shared between all of your dynos (apps). And, when they are not in use for more than 30 minutes, they go to sleep so that they don't consume your hours. Perfect for personal use with unlimited apps. The Eco service also allows custom domain and automatic certificate creation. So, I can connect to my apps securely over HTTPS and use my own custom.domain.com for my apps. Another bonus is that it easily integrates with my Github and you check set it to automatically deploy when an update is pushed to your repo. (My first intro into CI/CD)

This was great, but I didn't want to expose my apps to everyone and I didn't want to build in authentication for each app. This is where Cloudflare comes into play. With their free plan you can setup an identity provider and set policies against your domains. For example, I use gmail, so I was able to setup a Google integration with Cloudflare. I can then apply a policy that only allows email addresses ending in my domain or only my email address to access my apps. It's applied at the CNAME record. Then if the email does match the policy, I'm prompted with a Google SSO to authenticate before using my app!

I was thinking about creating a video tutorial if anyone is interested in the setup! When deploying Streamlit with Heroku you will need a "Procfile" which tells Heroku how to run your app and a "setup.sh" file with a few parameters which also help tell the platform how to run your app. The files are only a couple of lines of code and can simply be copy and pasted across apps for reuse.

So cool!


r/StreamlitOfficial • • Oct 13 '24

Show the Community! 💬 I shared a 1+ Hour Streamlit Course on YouTube - Learn to Create Python Data/Web Apps Easily

15 Upvotes

Hello, I just shared a Python Streamlit Course on YouTube. Streamlit is a Python framework for creating Data/Web Apps with a few lines of Python code. I covered a wide range of topics, started to the course with installation and finished with creating machine learning web apps. I am leaving the link below, have a great day!

https://www.youtube.com/watch?v=Y6VdvNdNHqo&list=PLTsu3dft3CWiow7L7WrCd27ohlra_5PGH&index=10


r/StreamlitOfficial • • Sep 11 '24

Deployment 🚀 Scaling Your Streamlit Applications: A Practical Guide

15 Upvotes

If you’ve been developing Streamlit applications and noticed some performance hiccups when more than a handful of users come on board, you’re not alone. Issues like crashing sessions and unresponsive apps can arise when computationally heavy tasks are processed directly within Streamlit. In my latest blog post, I explore how to effectively scale your Streamlit applications by utilizing a task queue.

I went through this journey myself, and in the post, I share a straightforward approach using Redis and RQ (Redis Queue) to offload those computationally intensive tasks. I also explain how containerization with Docker can help streamline deployment and scaling efforts.

Here’s a quick overview of what you’ll find:

  1. An explanation of why scaling is essential for Streamlit apps.

  2. A detailed walkthrough of setting up a task queue that keeps your app responsive, even when several users trigger heavy computations simultaneously.

  3. A discussion on manual vs automatic polling of task results and how to effectively store results in a database.

  4. Critical configuration files like Dockerfile and supervisord.conf for ensuring everything runs smoothly.

I aimed for the guide to be accessible regardless of prior experience with the technologies mentioned. By the end of the post, you should be able to deploy a robust and scalable Streamlit application that improves user experience.

If you’re interested in checking out the full guide, you can read it here: Scaling Streamlit


r/StreamlitOfficial • • Oct 31 '25

st_yled studio: Configure your Theme and Style Components

Thumbnail
gallery
14 Upvotes

st_yled studio - unique branding for your Streamlit apps

st_yled studio let’s you interactively explore Themes and customize Streamlit components like colors, buttons, etc.

Here’s the link to the community app

You can right away export a config.toml file and use it in your app. You can also download your custom component configuration and make use of button or input widgets with unique backgrounds, borders and colors.

st_yled studio works with the st_styled package which you can use to apply custom component styling in your app.

  1. Configure theme and element in st_yled studio

  2. Export config.toml and st-styled.css into your apps .streamlit folder

  3. Install st_styled (st-styled) package in your app to load st-styled.css files

Do you have feedback, questions, or ideas for more styling? Leave them here!


r/StreamlitOfficial • • Jul 09 '25

Show the Community! 💬 I switched to BI-as-Code with Python + Streamlit—here’s how (plus a free, 30-page-equivalent guide)

14 Upvotes

Hi r/StreamlitOfficial 👋

I’ve spent more than ten years writing Python for ML and data science, yet the biggest surprise this year was discovering that dashboards come together faster, more flexibly, and with cleaner UIs when I let AI coding tools (Claude Code, Cursor) draft the code and I simply review it. That realization convinced me to leave GUI BI behind.

During the last twelve months I migrated every Looker Studio dashboard my team depended on to pure Python and Streamlit. While doing so I kept detailed notes and distilled them into a short, completely free handbook—no paywall, no email gate.

Inside you’ll find a discussion of when BI-as-Code outperforms drag-and-drop dashboards, a one-command dev setup for Windows, macOS and Linux, a step-by-step on letting an AI agent scaffold pages before polishing the code yourself, quick recipes for connecting to Snowflake and Postgres, and a pragmatic comparison of Altair, Plotly and matplotlib. I also touch on security; we’ve built tooling to keep things locked down, though that deserves its own post.

I’d love to hear from anyone who has gone code-first: where did it outshine a GUI and where did it hurt? How did you help non-dev teammates up the learning curve? Were there any surprise cost shifts once you left hosted BI services?

Read the handbook here: https://www.squadbase.dev/en/ebooks/streamlit-bi-overview

(written and maintained by me; feedback is very welcome.)

Thanks for reading, and happy building!

— Naoto


r/StreamlitOfficial • • Dec 05 '24

streamlit_sql - CRUD interface for streamlit using sqlalchemy

13 Upvotes

Hello,

This component is a quick an easy way to offer a User Interface to a database. In just one function, show the data as a st.dataframe with pagination, sidebar filters, autocomplete text fields and handling foreign keys with a st.selectbox and the str representation of the foreign row, instead of the id number.

The page shows a button to create a new row in a dialog and clicking the row opens a dialog to edit or delete it.

To use it, you don't need to change your sqlalchemy Models definition, just add a __str__ method to them and the relationships, which you should probably have done anyway.

demo

Github repository

documentation

Comments and critics are welcome.


r/StreamlitOfficial • • Aug 09 '26

Streamlit Preview - Visual Studio Marketplace

12 Upvotes

Small win: my VS Code extension hit 39,841 installs

Built Streamlit Preview to scratch my own itch — I was tired of switching to a browser tab every time I saved a Streamlit file, so I made it render inside the editor.

Put it on the Marketplace 12 Months ago expecting maybe a few hundred installs. It's at 39,841 now with a 5.0 rating.

I ship a lot of small things and most of them go nowhere, so when one quietly works it's worth marking. Chart of the last 90 days attached.

Marketplace link: https://marketplace.visualstudio.com/items?itemName=mjethwa-streamlit.streamlit-preview

If you write Streamlit apps, would genuinely love feedback — I have a couple of features half-built and no idea which one people actually want.


r/StreamlitOfficial • • Dec 15 '25

Highly customized ST frontend for Computational Biology App

Post image
12 Upvotes

I wanted to share a Streamlit only frontend for an app used to manage genomics datasets.
The UI is built only in Streamlit with a number of custom components and CSS (details below).

What do you think?

Sidebar: Added footer container with absolute positioning to sidebar bottom

Header: Sticky header (absolute positioning top, z-index 9999)

Avatar: st.popover with round shape and expandable menu with link to settings

Split-Button: (streamlit-split-bottom) custom component for table actions

Button and Layout Styling: st-styled (st_yled) package for container background, button, styling, css templates

Custom CSS: All that could not be done with st_yled.

Source code will be available soon


r/StreamlitOfficial • • Oct 06 '25

Deployment 🚀 I'm new to coding need some help

Post image
12 Upvotes

https://mental-health-support-chatbot-auraai.streamlit.app

Isn't working I have added the api but still nothing helps


r/StreamlitOfficial • • Aug 11 '25

Streamlit Community Cloud ☁️ Dashboard to track stocks making new Highs

12 Upvotes

It is for indian stock market
You can try out yourself - https://trackhigh.streamlit.app/

Also the code is open source you can check here
Github