textual/docs/roadmap.md
Dave Pearson aad6d98aa5
More documentation tweaks (#2001)
* Change the title of some widget references to their class names

The widget reference index had a slight mixture of widget title styles, some
being their class name, others being "written English" type titles. This
settles on the titles always being the class name.

* Add a link to the ContentSwitcher to the widget gallery

No screenshot for this, on purpose. By definition this widget isn't visible,
except via other widgets that it's enclosing and handling.

* Have mkdocs watch the main nav file

* Mark the content switcher off the roadmap
2023-03-09 14:01:48 +00:00

81 lines
2.1 KiB
Markdown

---
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
- [ ] Command interface
* [ ] Command menu
* [ ] 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
* [ ] 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
* [ ] Validation
* [ ] Error / warning states
* [ ] Template types: IP address, physical units (weight, volume), currency, credit card etc
- [X] Markdown viewer
* [ ] Collapsible sections
* [ ] Custom widgets
- [ ] Plots
* [ ] bar chart
* [ ] line chart
* [ ] Candlestick chars
- [ ] Progress bars
* [ ] Style variants (solid, thin etc)
- [X] Radio boxes
- [ ] Spark-lines
- [X] Switch
- [ ] Tabs
- [ ] TextArea (multi-line input)
* [ ] Basic controls
* [ ] Indentation guides
* [ ] Smart features for various languages
* [ ] Syntax highlighting