All notesGuide

How to share a Streamlit app privately with your team

Share a Streamlit app with named people only, without exposing your repository and without writing your own login page.

Debraj

Streamlit makes it easy to build an internal dashboard and awkward to share it safely. The sharing needs to happen at the host.

The problem

Free community hosting for Streamlit is built for public apps. A tool that reads private data needs access control before the app code even runs.

Steps

  • Make sure the app runs with streamlit run app.py --server.port $PORT --server.address 0.0.0.0 --server.headless true.
  • Upload the folder, a .zip or a GitHub repo, or ask your assistant to deploy it over MCP. Cohostly shows draft settings first, and nothing goes live until you confirm.
  • Share it with named people or your team.
  • Connect the data source with a read-only connection.

Streamlit-specific notes

  • st.session_state lives in memory, so it is empty after the app rests and wakes.
  • Keep secrets out of secrets.toml in the repository.
  • Streamlit uses websockets, so the host must keep long connections open.

Questions

Can I keep my Streamlit app private?

Yes. Share it with named people at the host level.

Do I need a GitHub repo?

No, a folder or .zip works.

Will it be slow when it wakes?

The first visit after a quiet spell takes about a second.

Keep reading

See what people host on Cohostly