Skip to content
This repository
Browse code

Refactor README to be more up-to-date and include information about c…

…ontributing
  • Loading branch information...
commit e5e3e8ad0f626d2ff6617cb6c74bc3a897bb3c04 1 parent 3b1e22b
Justin Spahr-Summers jspahrsummers authored

Showing 1 changed file with 15 additions and 21 deletions. Show diff stats Hide diff stats

  1. +15 21 README.md
36 README.md
Source Rendered
... ... @@ -1,4 +1,4 @@
1   -# TwUI 0.2.0r1
  1 +# TwUI 0.3.0
2 2
3 3 TwUI is a hardware accelerated UI framework for Mac, inspired by UIKit. It enables:
4 4
@@ -11,44 +11,38 @@ It differs from UIKit in a few ways:
11 11 * Block-based layout and drawRect
12 12 * A consistent coordinate system (bottom left origin)
13 13 * Sub-pixel text rendering
14   -* Layout Constraints (ala Cocoa Auto-Layout)
15 14
16 15 # Setup
17 16
18   -To use the current development version, include all the files in your project and import TUIKit.h. Set your target to link to the ApplicationServices and QuartzCore frameworks. Be sure to add NS_BUILD_32_LIKE_64 to your preprocessor flags.
  17 +To use the current development version, include all the files in your project and import TUIKit.h. Set your target to link to the ApplicationServices and QuartzCore frameworks.
19 18
20 19 # Usage
21 20
22   -Your TUIView-based view hierarchy is hosted inside an TUINSView, which is the bridge between AppKit and TwUI. You may set a TUINSView as the content view of your window, if you'd like to build your whole UI with TwUI. Or you may opt to have a few smaller TUINSViews, using TwUI just where it makes sense and continue to use AppKit everywhere else.
  21 +Your `TUIView`-based view hierarchy is hosted inside an `TUINSView`, which is the bridge between AppKit and TwUI. You may set a `TUINSView` as the content view of your window, if you'd like to build your whole UI with TwUI. Or you may opt to have a few smaller `TUINSViews`, using TwUI just where it makes sense and continue to use AppKit everywhere else.
  22 +
  23 +You can also add `NSViews` to a TwUI hierarchy using `TUIViewNSViewContainer`, which bridges back into AppKit from TwUI.
23 24
24 25 # Example Project
25 26
26   -An included example project shows off the basic construction of a pure TwUI-based app. A TUINSView is added as the content view of the window, and some TUIView-based views are hosted in that. It includes a table view, and a tab bar (which is a good example of how you might build your own custom controls).
  27 +An included example project shows off the basic construction of a pure TwUI-based app. A `TUINSView` is added as the content view of the window, and some `TUIView`-based views are hosted in that. Within the table view cells, some `NSTextFields` are also added using `TUIViewNSViewContainer`. It includes a table view and a tab bar (which is a good example of how you might build your own custom controls).
27 28
28 29 # Status
29 30
30   -TwUI should be considered an alpha project. It is current shipping in Twitter for Mac and Github for Mac, in use 24/7 by many, many users and has proven itself very stable.
31   -
32   -This project follows the [SemVer](http://semver.org/) standard. The API may change in backwards-incompatible ways before the 1.0 release.
33   -
34   -The goal of TwUI is to build a high-quality UI framework designed specifically for the Mac. Much inspiration comes from UIKit, but diverging to try new things (i.e. block-based layout and drawRect), and to optimize for Mac-specific interactions is encouraged.
35   -
36   -# Known limitations
37   -
38   -There are many places where TwUI could be improved:
  31 +TwUI is currently shipping in Twitter for Mac and GitHub for Mac, in use 24/7 by many, many users, and has proven itself very stable.
39 32
40   -* Accessibility. It would be great to bridge the AppKit accessibility APIs to something simpler, again, inspired by UIKit.
  33 +This project follows the [SemVer](http://semver.org/) standard. The API may change in backwards-incompatible ways between major releases.
41 34
42   -* Text editing. TUITextEditor is a simple text editor (built on TUITextRenderer). It provides basic editing support and handles a number of standard keybindings. Fleshing this out to be indistinguishable from NSTextView (read: spellchecking, autocorrect) would be useful. If the logic around this were self-contained it would even be great as a standalone project, useful for anyone looking to build a custom text editor for the Mac.
  35 +The goal of TwUI is to build a high-quality UI framework designed specifically for the Mac. Much inspiration comes from UIKit, but diverging to try new things (i.e. block-based layout and drawRect), and optimizing for Mac-specific interactions is encouraged.
43 36
44   -# Documentation
  37 +# Contributing
45 38
46   -You can generate documentation with [doxygen](http://www.doxygen.org). Install it, and then run:
  39 +We will happily accept pull requests that meet one of the following criteria:
47 40
48   - cd docs
49   - doxygen
  41 + 1. It fixes some functionality that is already in TwUI. This might be a bug, or something not working as expected.
  42 + 2. It's something so basic or important that TwUI really should have it.
  43 + 3. It has to integrate with TwUI internals, and so can't easily be done outside of the framework. This one is the most ambiguous, because interesting things may match this criterion, but still be way out of scope. In some cases, a fork might be more appropriate. Use your best judgment.
50 44
51   -Documentation is a work in progress, but the API will be familiar if you have used UIKit. (TODO: [appledoc](http://gentlebytes.com/appledoc/) looks very cool, moving to that might be nice).
  45 +# Community
52 46
53 47 TwUI has a mailing list, subscribe by sending an email to <twui@librelist.com>.
54 48

0 comments on commit e5e3e8a

Please sign in to comment.
Something went wrong with that request. Please try again.