File: roadmap.md

package info (click to toggle)
textual 2.1.2-1.1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 55,080 kB
  • sloc: python: 85,423; lisp: 1,669; makefile: 101
file content (81 lines) | stat: -rw-r--r-- 2,122 bytes parent folder | download | duplicates (2)
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
---
hide:
  - navigation
---


# Roadmap

We ([textualize.io](https://www.textualize.io/)) are actively building and maintaining Textual.

We have many new features in the pipeline. This page will keep track of that work.

## Features

High-level features we plan on implementing.

- [ ] Accessibility
    * [ ] Integration with screen readers
    * [x] Monochrome mode
    * [ ] High contrast theme
    * [ ] Color-blind themes
- [X] Command palette
    * [X] Fuzzy search
- [ ] Configuration (.toml based extensible configuration format)
- [x] Console
- [ ] Devtools
    * [ ] Integrated log
    * [ ] DOM tree view
    * [ ] REPL
- [ ] Reactive state abstraction
- [x] Themes
    * [ ] Customize via config
    * [ ] Builtin theme editor

## Widgets

Widgets are key to making user-friendly interfaces. The builtin widgets should cover many common (and some uncommon) use-cases. The following is a list of the widgets we have built or are planning to build.

- [x] Buttons
    * [x] Error / warning variants
- [ ] Color picker
- [X] Checkbox
- [X] Content switcher
- [x] DataTable
    * [x] Cell select
    * [x] Row / Column select
    * [x] API to update cells / rows
    * [ ] Lazy loading API
- [ ] Date picker
- [ ] Drop-down menus
- [ ] Form Widget
    * [ ] Serialization / Deserialization
    * [ ] Export to `attrs` objects
    * [ ] Export to `PyDantic` objects
- [ ] Image support
    * [ ] Half block
    * [ ] Braille
    * [ ] Sixels, and other image extensions
- [x] Input
    * [x] Validation
    * [ ] Error / warning states
    * [ ] Template types: IP address, physical units (weight, volume), currency, credit card etc
- [X] Select control (pull-down)
- [X] Markdown viewer
    * [ ] Collapsible sections
    * [ ] Custom widgets
- [ ] Plots
    * [ ] bar chart
    * [ ] line chart
    * [ ] Candlestick chars
- [X] Progress bars
    * [ ] Style variants (solid, thin etc)
- [X] Radio boxes
- [X] Spark-lines
- [X] Switch
- [X] Tabs
- [X] TextArea (multi-line input)
    * [X] Basic controls
    * [ ] Indentation guides
    * [ ] Smart features for various languages
    * [X] Syntax highlighting