Skip to main content

streamapp

Base modules to use in a Streamlit project.

  • Snowflake connection with templates
  • Cards generator for landing page
  • Environment selector if needed
  • Auth module to login users and grant roles
  • Report generator for .xlsx files and templates
  • Request handler to integrate with .secrets
  • Subpages selector

Requirements

streamlit>=1.30.0
streamlit-authenticator==0.2.2
snowflake-connector-python>=3.0.4
openpyxl==3.1.2
pydantic>=2.5.3

Secrets file

# environment variables
key = streamlit cookies key for auth module
snow_key = key for hased snowflake password with Fernet
queries_path = 'static/queries'  # your folder queries path
utils_files = 'static/consume'  # your static files path
admin_contact = 'admin@admin.com'  # show contact if something went wrong
dev = false  # sert true to see a detailed error in development
allowed_roles = ['analysts', 'support', 'guess', 'admin']  # roles for UI interface

# snowflake credentials
# see snowflake documentation
[SNOW_SERVER]
account = '************'
database = '*********'
warehouse = '******'
role = '*********'
user = '**********'
password = '***********'

# see streamlit authenticator documentation
[credentials.usernames]
Pepe.name = '**********'
Pepe.roles = ['admin', 'dev', 'other]
Pepe.password = 'password hash'

# if you prefer user credentials in an Mongo DDBB
[mongo_auth]
host = 'localhost'
port = 27017
username = 'root'
password = 'example'

[mongo_conf]  # Optional if you prefer set up an specific database and collection
database = 'credentials_test'  # Mongo database name, default credentials
collection = 'users_test'  # Mongo database collection, default users

[auth_cookie]
cookie_name = 'cookie'
cookie_key = 'INTJB0EvLz1PzeEVp...'
cookie_expiry_days = 1

[ENVIRONMENTS]
name.image = ''  # Some image to show for the environment
name.url = 'https://pokeapi.co'  # host url for request with different environments  

[REQUESTS]
get_pockemon.url = '/api/v2/berry/'
get_pockemon.method = 'get'

Generate Passwords

To generate passwords use Hasher from streamlit_authenticator Hasher([password]).generate()[0]

Metadata

Release files for streamapp 0.0.13

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for streamapp 0.0.13
File Size Uploaded
streamapp-0.0.13.tar.gz 23.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for streamapp 0.0.13
File Interpreter ABI Platform
streamapp-0.0.13-py3-none-any.whl Python 3 none any Details

Total release size: 49.8 kB

Release files / streamapp-0.0.13.tar.gz

Download URL streamapp-0.0.13.tar.gz
Size 23.2 kB
Tags Source
SHA-256 checksum
How to use checksums
50314ea10496c3bcd567231aa150cc4a0f3356c5a775a86f809ed91112e51e50
BLAKE2b-256 checksum
How to use checksums
b04e470e81f389442737d69092ee1091fb4f392f0a5c78c782734dcde903b06b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.2

Release files / streamapp-0.0.13-py3-none-any.whl

Download URL streamapp-0.0.13-py3-none-any.whl
Size 26.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
415de571536f35bff671b3b6701a4e76f2908b4960f4ecb2bb3b78cb1b6a6dfe
BLAKE2b-256 checksum
How to use checksums
cdc23c2478449034244311de966b477e77057f9fd29e0b6f0254da475528780f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.2

Release history Release notifications | RSS feed

This release

0.0.13 This release

2 release files

0.0.12

2 release files

0.0.11

2 release files

0.0.10

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page