Py.Cafe

maartenbreddels/

pycafe-secrets

getting and displaying secrets on pycafe

DocsPricing
  • app.py
  • requirements.txt
app.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import solara
from pycafe import get_secret
import site
import os


key = solara.reactive("KEY1")
secret = solara.reactive(None)
error = solara.reactive(None)
reason = solara.reactive("No reason, just for this demo [we support markdown](/docs/secrets)")


@solara.component
def Page():
    def request_secret():
        try:
            secret.value = get_secret(key.value, reason=reason.value)
            error.value = None
        except Exception as e:
            error.value = repr(e)

    with solara.Card("Secrets pycafe demo"):
        solara.Markdown("Using pycafe.get_secret, you can ask a user for a secrets")
        solara.InputText(label="key", value=key)
        solara.InputText(label="reason", value=reason)
        if secret.value is None:
            solara.Text("No secret")
        else:
            solara.Text("secret=" + secret.value)
        if error.value:
            solara.Text(error.value)
        solara.Button(label=f"get secret", on_click=request_secret)