castella-core

Build cross-platform UIs with Castella's declarative widgets and reactive state.

41|1|Updated May 21, 2022
One-click install
npx skills add https://github.com/i2y/castella --skill castella-core
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: castella-core
Source: https://github.com/i2y/castella/tree/main/skills/castella-core
Command: npx skills add https://github.com/i2y/castella --skill castella-core

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires castella, and includes scripts (resource) components.

What problem does it solve?

Castella provides a pure-Python UI framework to create desktop, web, and terminal applications from a single codebase, combining declarative widgets, reactive state, and theming.

Core Features & Use Cases

  • Declarative widgets for UI composition
  • Reactive state management with attachable states and data binding
  • Cross-platform rendering for desktop (GLFW/SDL2), web (PyScript/Pyodide), and terminal (prompt-toolkit)
  • Built-in animation, theming and design tokens, and rich text/markdown rendering
  • Examples and guidance to rapidly prototype apps

Quick Start

Run a simple example to see Castella in action, for example by executing scripts/counter.py.

Frequently Asked Questions about castella-core

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build cross-platform desktop and web UIs using a single Python codebase?

You can build cross-platform UIs in pure Python by using Castella's declarative widget system and reactive state model. It renders to desktop (GLFW/SDL2), web (PyScript/Pyodide), and terminal (prompt-toolkit) from one codebase.

How does reactive state management work for Python UI widgets?

Reactive state management in Castella uses attachable states and data binding. When state values change, the declarative widgets automatically update and re-render to reflect the new data.

Can I use pure Python to create terminal applications with rich text and markdown?

Yes, you can create terminal applications using pure Python with Castella. It supports rendering rich text and markdown in terminal environments through the prompt-toolkit backend.

What is the best way to prototype a cross-platform app in pure Python?

The best way to prototype a cross-platform app in pure Python is using Castella's declarative widgets and built-in theming. You can rapidly prototype by running example scripts like counter.py to see the UI in action.

Does Castella support web deployment using PyScript and Pyodide?

Yes, Castella supports web deployment using PyScript and Pyodide. This allows your pure Python declarative widgets and reactive state applications to run directly in the browser.

What are the limitations of using a declarative UI framework for Python desktop apps?

While Castella enables declarative Python UIs across desktop, web, and terminal, performance and native API access may be limited compared to native frameworks. Rendering relies on backends like GLFW and SDL2 rather than platform-native toolkits.