import gradio as gr demo = gr.Blocks(css="""#btn {color: red} .abc {font-family: "Comic Sans MS", "Comic Sans", cursive !important}""") with demo: default_json = {"a": "a"} num = gr.State(value=0) squared = gr.Number(value=0) btn = gr.Button("Next Square", elem_id="btn", elem_classes=["abc", "def"]) stats = gr.State(value=default_json) table = gr.JSON() def increase(var, stats_history): var += 1 stats_history[str(var)] = var**2 return var, var**2, stats_history, stats_history btn.click(increase, [num, stats], [num, squared, stats, table]) if __name__ == "__main__": demo.launch()