DioxusLabs / DioxusLabs/taffy

Roadmap

Open
#345 18 comments 39 reactions 0 assignees View on GitHub
meta
Dominant language
Rust
Stars
3.6k
Forks
222
Avg merge
10h 41m
Merged PRs (30d)
40

Description

I thought it might be useful to track possible future feature work in a more structured way (grouped into categories).

See also: the [Taffy Project Board](https://github.com/orgs/DioxusLabs/projects/10)

## 0.11
- [ ] https://github.com/DioxusLabs/taffy/issues/533
- [ ] #212
- [x] https://github.com/DioxusLabs/taffy/issues/871

## Future

### CSS layout algorithms
- [x] #405
- [ ] #467
- [x] #437
- [x] Flexbox
- [x] #204
- [ ] #468
- [ ] #910
- [ ] #533
- [ ] #703

### Other CSS layout features

- [x] #289
- [x] https://github.com/DioxusLabs/taffy/issues/706
- [x] #750
- [x] #213
- [x] https://github.com/DioxusLabs/taffy/issues/550
- [x] https://github.com/DioxusLabs/taffy/issues/709
- [x] #751
- [ ] #225
- [ ] #752
- [ ] #560
- [ ] Better baseline alignment support (particularly measure function support for baseline alignment)

### API Enhancements
- [x] #216
- [x] #568
- [x] #714
- [ ] #275

### Non-CSS layout features
- [ ] Support for `stretch` for `width`/`height` and possibly `margin`/`inset`
- [ ] #308
- [ ] Sciter's "flex flow" layout (https://sciter.com/docs/flex-flow/flex-layout.htm)
- [ ] AutoLayout / Cassowary
- [ ] Hstack/Vstack/Zstack

### FFI / Bindings for other languages
- [ ] #399 (widely useful)
- [ ] #241 (Web/Node.js/Deno) Useful for examples/playground. Also enables Node.js where Taffy may be useful for TUIs. Deno even has GUI bindings)
- [ ] Swift/Objective-C (for iOS/macOS)
- [ ] Kotlin/Java (for Android)
- [ ] C++ (widely useful, and we could expose our full LayoutTree API to C++ if we wanted to. Could enable cool use cases like close integration with layout code written in C++)
- [ ] C# (Unity uses Yoga for layout. Could also be used in Xamarin)

Contributor guide

Open the contributing guide

Research direction

This issue is a broad roadmap linking the Taffy Project Board and many separate issues, but it names no implementation files, tests, or entry point. Start by reviewing the project board and selecting one unchecked item with a defined scope. Done cannot be determined until that item is separately specified.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, csharp, css, deno, java, kotlin, node.js, objective-c, rust, swift
Domain
developer-experience, frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.