TerminalUI Save

Project README

terminal-ui

A way to build TUI apps with a layout system and API that's similar to SwiftUI.

This was just a proof of concept. SwiftTUI looks a lot more complete and supported.

We reimplemented parts of the SwiftUI layout system in the Swift Talk series SwiftUI Layout Explained. This tries to stay as close to that as possible.

A specific goal is to keep the layout behavior as close to SwiftUI as possible. So most SwiftUI programs should "just work" here as well.

Implementation Status

  • Views (in random order)
    • Alignment
    • GeometryReader
    • Border
    • Color (so far we only support 16 colors)
    • FixedFrame
    • FlexibleFrame
    • HStack
    • Overlay
    • Background
    • ZStack
    • Text
    • Padding (In progress)
      • Add tests
    • VStack
    • Progress
    • ScrollView
    • List
    • Button
    • Switch
    • Custom Alignment Guides
    • Layout Priorities
    • More ideas (lower priority)
      • Tree View (similar to outlines)
      • Menus
      • Navigation? (Not sure if this is a good idea, but could be fun to try)
  • State/Lifecycle/Interactivity
    • Custom View structures (I think we can build this on top of BuiltinView)
    • Environment (should be easy)
    • Preferences
    • State/Binding/ObservedObject
    • Focus (we should have some way for a control to be in focus, and )
    • Interaction (nothing is interactive yet)
    • Animations
    • ...

Similar Projects:

Inspiration:

Open Source Agenda is not affiliated with "TerminalUI" Project. README Source: chriseidhof/TerminalUI
Stars
326
Open Issues
3
Last Commit
1 year ago
License
MIT

Open Source Agenda Badge

Open Source Agenda Rating