{"messages":[{"role":"user","content":"make me a glass calendar"},{"role":"assistant","content":"```runsplash\nlet months = [\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"]\nlet month_idx = 5\nlet year = 2026\nlet selected = 25\nlet first_dow = 0\nlet days_in = 30\n\nfn refresh(){\n ui.title.set_text(months[month_idx] + \" \" + year)\n}\n\nView{\n width: Fill height: Fit\n flow: Down spacing: 14 padding: 18\n\n glass.Card{\n View{width:Fill height:Fit flow:Right align:Align{y:0.5} spacing:10\n glass.GlassButton{text:\"<\" width:48 height:42 on_click:|| {\n month_idx = month_idx - 1\n if month_idx < 0 { month_idx = 11; year = year - 1 }\n ui.title.set_text(months[month_idx] + \" \" + year)\n }}\n title := glass.H1{text:\"June 2026\" width:Fill align:Align{x:0.5}}\n glass.GlassButton{text:\">\" width:48 height:42 on_click:|| {\n month_idx = month_idx + 1\n if month_idx > 11 { month_idx = 0; year = year + 1 }\n ui.title.set_text(months[month_idx] + \" \" + year)\n }}\n }\n }\n\n glass.Panel{\n View{width:Fill height:Fit flow:Right spacing:4\n glass.Caption{text:\"SUN\" width:Fill align:Align{x:0.5}}\n glass.Caption{text:\"MON\" width:Fill align:Align{x:0.5}}\n glass.Caption{text:\"TUE\" width:Fill align:Align{x:0.5}}\n glass.Caption{text:\"WED\" width:Fill align:Align{x:0.5}}\n glass.Caption{text:\"THU\" width:Fill align:Align{x:0.5}}\n glass.Caption{text:\"FRI\" width:Fill align:Align{x:0.5}}\n glass.Caption{text:\"SAT\" width:Fill align:Align{x:0.5}}\n }\n\n View{width:Fill height:Fit flow:Right spacing:6\n glass.GlassButton{text:\"1\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 1, 2026\")}\n glass.GlassButton{text:\"2\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 2, 2026\")}\n glass.GlassButton{text:\"3\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 3, 2026\")}\n glass.GlassButton{text:\"4\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 4, 2026\")}\n glass.GlassButton{text:\"5\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 5, 2026\")}\n glass.GlassButton{text:\"6\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 6, 2026\")}\n glass.GlassButton{text:\"7\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 7, 2026\")}\n }\n View{width:Fill height:Fit flow:Right spacing:6\n glass.GlassButton{text:\"8\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 8, 2026\")}\n glass.GlassButton{text:\"9\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 9, 2026\")}\n glass.GlassButton{text:\"10\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 10, 2026\")}\n glass.GlassButton{text:\"11\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 11, 2026\")}\n glass.GlassButton{text:\"12\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 12, 2026\")}\n glass.GlassButton{text:\"13\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 13, 2026\")}\n glass.GlassButton{text:\"14\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 14, 2026\")}\n }\n View{width:Fill height:Fit flow:Right spacing:6\n glass.GlassButton{text:\"15\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 15, 2026\")}\n glass.GlassButton{text:\"16\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 16, 2026\")}\n glass.GlassButton{text:\"17\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 17, 2026\")}\n glass.GlassButton{text:\"18\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 18, 2026\")}\n glass.GlassButton{text:\"19\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 19, 2026\")}\n glass.GlassButton{text:\"20\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 20, 2026\")}\n glass.GlassButton{text:\"21\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 21, 2026\")}\n }\n View{width:Fill height:Fit flow:Right spacing:6\n glass.GlassButton{text:\"22\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 22, 2026\")}\n glass.GlassButton{text:\"23\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 23, 2026\")}\n glass.GlassButton{text:\"24\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 24, 2026\")}\n glass.GlassButtonProminent{text:\"25\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 25, 2026\")}\n glass.GlassButton{text:\"26\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 26, 2026\")}\n glass.GlassButton{text:\"27\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 27, 2026\")}\n glass.GlassButton{text:\"28\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 28, 2026\")}\n }\n View{width:Fill height:Fit flow:Right spacing:6\n glass.GlassButton{text:\"29\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 29, 2026\")}\n glass.GlassButton{text:\"30\" width:Fill height:42 on_click:|| ui.sel.set_text(\"June 30, 2026\")}\n View{width:Fill height:42}\n View{width:Fill height:42}\n View{width:Fill height:42}\n View{width:Fill height:42}\n View{width:Fill height:42}\n }\n }\n\n glass.Card{\n View{width:Fill height:Fit flow:Right align:Align{y:0.5} spacing:10\n glass.Caption{text:\"SELECTED\"}\n sel := glass.H2{text:\"June 25, 2026\" width:Fill align:Align{x:1.0}}\n }\n }\n}\n```"},{"role":"user","content":"make me a weather app where i can click on the days and it shows a graph of that day"},{"role":"assistant","content":"```runsplash\nlet days = [\n {name:\"Monday\" abbr:\"Mon\" icon:\"☀\" desc:\"Sunny\" hi:78 lo:56 graph:\"06:00 ▇▇▇ 56°\\n09:00 ▇▇▇▇▇ 64°\\n12:00 ▇▇▇▇▇▇▇▇ 74°\\n15:00 ▇▇▇▇▇▇▇▇▇ 78°\\n18:00 ▇▇▇▇▇▇▇ 72°\\n21:00 ▇▇▇▇ 60°\"}\n {name:\"Tuesday\" abbr:\"Tue\" icon:\"⛅\" desc:\"Partly Cloudy\" hi:74 lo:54 graph:\"06:00 ▇▇ 54°\\n09:00 ▇▇▇▇ 60°\\n12:00 ▇▇▇▇▇▇▇ 70°\\n15:00 ▇▇▇▇▇▇▇▇ 74°\\n18:00 ▇▇▇▇▇▇ 68°\\n21:00 ▇▇▇ 58°\"}\n {name:\"Wednesday\" abbr:\"Wed\" icon:\"☁\" desc:\"Cloudy\" hi:68 lo:54 graph:\"06:00 ▇▇ 54°\\n09:00 ▇▇▇ 58°\\n12:00 ▇▇▇▇▇ 64°\\n15:00 ▇▇▇▇▇▇ 68°\\n18:00 ▇▇▇▇ 62°\\n21:00 ▇▇▇ 56°\"}\n {name:\"Thursday\" abbr:\"Thu\" icon:\"🌧\" desc:\"Rainy\" hi:62 lo:52 graph:\"06:00 ▇▇ 52°\\n09:00 ▇▇▇ 56°\\n12:00 ▇▇▇▇ 60°\\n15:00 ▇▇▇▇▇ 62°\\n18:00 ▇▇▇ 58°\\n21:00 ▇▇ 54°\"}\n {name:\"Friday\" abbr:\"Fri\" icon:\"☀\" desc:\"Sunny\" hi:80 lo:58 graph:\"06:00 ▇▇▇ 58°\\n09:00 ▇▇▇▇▇ 66°\\n12:00 ▇▇▇▇▇▇▇▇ 76°\\n15:00 ▇▇▇▇▇▇▇▇▇▇ 80°\\n18:00 ▇▇▇▇▇▇▇ 74°\\n21:00 ▇▇▇▇ 62°\"}\n]\n\nView{\n width: Fill height: Fit\n flow: Down spacing: 14 padding: 18\n\n View{width:Fill height:Fit flow:Down spacing:2\n glass.H1{text:\"Weather\"}\n glass.Caption{text:\"SAN FRANCISCO · TAP A DAY\"}\n }\n\n glass.Panel{\n View{width:Fill height:Fit flow:Right spacing:8\n glass.GlassButton{text:\"Mon\\n78°\" width:Fill height:64 on_click:|| {\n ui.bigicon.set_text(days[0].icon); ui.sel.set_text(days[0].name)\n ui.cond.set_text(days[0].desc); ui.hilo.set_text(\"H:\"+days[0].hi+\"° L:\"+days[0].lo+\"°\")\n ui.graph.set_text(days[0].graph)\n }}\n glass.GlassButton{text:\"Tue\\n74°\" width:Fill height:64 on_click:|| {\n ui.bigicon.set_text(days[1].icon); ui.sel.set_text(days[1].name)\n ui.cond.set_text(days[1].desc); ui.hilo.set_text(\"H:\"+days[1].hi+\"° L:\"+days[1].lo+\"°\")\n ui.graph.set_text(days[1].graph)\n }}\n glass.GlassButton{text:\"Wed\\n68°\" width:Fill height:64 on_click:|| {\n ui.bigicon.set_text(days[2].icon); ui.sel.set_text(days[2].name)\n ui.cond.set_text(days[2].desc); ui.hilo.set_text(\"H:\"+days[2].hi+\"° L:\"+days[2].lo+\"°\")\n ui.graph.set_text(days[2].graph)\n }}\n glass.GlassButton{text:\"Thu\\n62°\" width:Fill height:64 on_click:|| {\n ui.bigicon.set_text(days[3].icon); ui.sel.set_text(days[3].name)\n ui.cond.set_text(days[3].desc); ui.hilo.set_text(\"H:\"+days[3].hi+\"° L:\"+days[3].lo+\"°\")\n ui.graph.set_text(days[3].graph)\n }}\n glass.GlassButton{text:\"Fri\\n80°\" width:Fill height:64 on_click:|| {\n ui.bigicon.set_text(days[4].icon); ui.sel.set_text(days[4].name)\n ui.cond.set_text(days[4].desc); ui.hilo.set_text(\"H:\"+days[4].hi+\"° L:\"+days[4].lo+\"°\")\n ui.graph.set_text(days[4].graph)\n }}\n }\n }\n\n glass.Card{\n View{width:Fill height:Fit flow:Right align:Align{y:0.5} spacing:14\n bigicon := glass.H1{text:\"☀\"}\n View{width:Fill height:Fit flow:Down spacing:2\n sel := glass.H2{text:\"Monday\"}\n cond := glass.Body{text:\"Sunny\"}\n }\n hilo := glass.OptionLabel{text:\"H:78° L:56°\"}\n }\n }\n\n glass.Panel{\n glass.Caption{text:\"HOURLY TEMPERATURE\"}\n graph := glass.Body{text:\"06:00 ▇▇▇ 56°\\n09:00 ▇▇▇▇▇ 64°\\n12:00 ▇▇▇▇▇▇▇▇ 74°\\n15:00 ▇▇▇▇▇▇▇▇▇ 78°\\n18:00 ▇▇▇▇▇▇▇ 72°\\n21:00 ▇▇▇▇ 60°\"}\n }\n}\n```"},{"role":"user","content":"make me a glass calculator"},{"role":"assistant","content":"```runsplash\nlet acc = 0.0\nlet stored = 0.0\nlet op = \"\"\nlet fresh = true\n\nView{ width: Fill height: Fit flow: Down spacing: 12 padding: 18\n\n glass.Card{ display := glass.H1{text:\"0\" width: Fill align: Align{x:1.0}} }\n\n View{width:Fill height:Fit flow:Right spacing:8\n glass.GlassButton{text:\"C\" width:Fill height:54 on_click:|| { acc = 0.0; stored = 0.0; op = \"\"; fresh = true; ui.display.set_text(\"0\") }}\n glass.GlassButton{text:\"±\" width:Fill height:54 on_click:|| { acc = -acc; ui.display.set_text(\"\" + acc) }}\n glass.GlassButton{text:\"%\" width:Fill height:54 on_click:|| { acc = acc / 100.0; ui.display.set_text(\"\" + acc) }}\n glass.GlassButtonProminent{text:\"÷\" width:Fill height:54 on_click:|| { stored = acc; acc = 0.0; op = \"/\"; fresh = true }}\n }\n\n View{width:Fill height:Fit flow:Right spacing:8\n glass.GlassButton{text:\"7\" width:Fill height:54 on_click:|| { acc = acc*10.0 + 7.0; fresh = false; ui.display.set_text(\"\" + acc) }}\n glass.GlassButton{text:\"8\" width:Fill height:54 on_click:|| { acc = acc*10.0 + 8.0; fresh = false; ui.display.set_text(\"\" + acc) }}\n glass.GlassButton{text:\"9\" width:Fill height:54 on_click:|| { acc = acc*10.0 + 9.0; fresh = false; ui.display.set_text(\"\" + acc) }}\n glass.GlassButtonProminent{text:\"×\" width:Fill height:54 on_click:|| { stored = acc; acc = 0.0; op = \"*\"; fresh = true }}\n }\n\n View{width:Fill height:Fit flow:Right spacing:8\n glass.GlassButton{text:\"4\" width:Fill height:54 on_click:|| { acc = acc*10.0 + 4.0; fresh = false; ui.display.set_text(\"\" + acc) }}\n glass.GlassButton{text:\"5\" width:Fill height:54 on_click:|| { acc = acc*10.0 + 5.0; fresh = false; ui.display.set_text(\"\" + acc) }}\n glass.GlassButton{text:\"6\" width:Fill height:54 on_click:|| { acc = acc*10.0 + 6.0; fresh = false; ui.display.set_text(\"\" + acc) }}\n glass.GlassButtonProminent{text:\"−\" width:Fill height:54 on_click:|| { stored = acc; acc = 0.0; op = \"-\"; fresh = true }}\n }\n\n View{width:Fill height:Fit flow:Right spacing:8\n glass.GlassButton{text:\"1\" width:Fill height:54 on_click:|| { acc = acc*10.0 + 1.0; fresh = false; ui.display.set_text(\"\" + acc) }}\n glass.GlassButton{text:\"2\" width:Fill height:54 on_click:|| { acc = acc*10.0 + 2.0; fresh = false; ui.display.set_text(\"\" + acc) }}\n glass.GlassButton{text:\"3\" width:Fill height:54 on_click:|| { acc = acc*10.0 + 3.0; fresh = false; ui.display.set_text(\"\" + acc) }}\n glass.GlassButtonProminent{text:\"+\" width:Fill height:54 on_click:|| { stored = acc; acc = 0.0; op = \"+\"; fresh = true }}\n }\n\n View{width:Fill height:Fit flow:Right spacing:8\n glass.GlassButton{text:\"0\" width:Fill height:54 on_click:|| { acc = acc*10.0; fresh = false; ui.display.set_text(\"\" + acc) }}\n glass.GlassButton{text:\"00\" width:Fill height:54 on_click:|| { acc = acc*100.0; fresh = false; ui.display.set_text(\"\" + acc) }}\n glass.GlassButtonProminent{text:\"=\" width:Fill height:54 on_click:|| {\n let r = acc\n if op == \"+\" { r = stored + acc }\n if op == \"-\" { r = stored - acc }\n if op == \"*\" { r = stored * acc }\n if op == \"/\" { r = stored / acc }\n acc = r; op = \"\"; fresh = true\n ui.display.set_text(\"\" + r)\n }}\n }\n}\n```"},{"role":"user","content":"please use the glassy radio buttons to make another app"},{"role":"assistant","content":"```runsplash\nlet wifi = true\nlet bt = false\nlet air = false\nlet dnd = false\nlet active = 1\n\nView{\n width: Fill height: Fit\n flow: Down spacing: 14 padding: 20\n\n glass.H1{text: \"Quick Settings\"}\n glass.Caption{text: \"CONNECTIVITY\"}\n\n glass.Card{\n View{width:Fill height:Fit flow:Down spacing:14\n View{width:Fill height:Fit flow:Right spacing:16 align:Align{y:0.5}\n glass.GlassRadio{on_click:|| { wifi = !wifi; ui.status.set_text(wifi ? \"Wi-Fi enabled\" : \"Wi-Fi off\") }}\n glass.OptionLabel{text:\"Wi-Fi\" width:Fill}\n }\n Hr{height:1 width:Fill}\n View{width:Fill height:Fit flow:Right spacing:16 align:Align{y:0.5}\n glass.GlassRadio{on_click:|| { bt = !bt; ui.status.set_text(bt ? \"Bluetooth enabled\" : \"Bluetooth off\") }}\n glass.OptionLabel{text:\"Bluetooth\" width:Fill}\n }\n Hr{height:1 width:Fill}\n View{width:Fill height:Fit flow:Right spacing:16 align:Align{y:0.5}\n glass.GlassRadio{on_click:|| { air = !air; ui.status.set_text(air ? \"Airplane mode ON\" : \"Airplane mode off\") }}\n glass.OptionLabel{text:\"Airplane Mode\" width:Fill}\n }\n }\n }\n\n glass.Caption{text: \"FOCUS\"}\n glass.Card{\n View{width:Fill height:Fit flow:Right spacing:16 align:Align{y:0.5}\n glass.GlassRadio{on_click:|| { dnd = !dnd; ui.status.set_text(dnd ? \"Do Not Disturb ON\" : \"Do Not Disturb off\") }}\n glass.OptionLabel{text:\"Do Not Disturb\" width:Fill}\n }\n }\n\n glass.Card{\n status := glass.Body{text:\"Wi-Fi enabled\"}\n }\n\n View{width:Fill height:Fit flow:Right spacing:10\n glass.GlassButtonProminent{text:\"Apply\" on_click:|| ui.status.set_text(\"Settings applied ✓\")}\n glass.GlassButton{text:\"Reset\" on_click:|| {\n wifi = true; bt = false; air = false; dnd = false\n ui.status.set_text(\"Settings reset to defaults\")\n }}\n }\n}\n```"}]}