Skip to content
ferrous26 edited this page Aug 7, 2011 · 7 revisions

This project is still young and there is still lots that can be done. There are lots of little things, some medium sized tasks, and one or two large things that should get done.

Any and all contributions are welcome, there is no pull request too small!

Tasks are not organized by target version number, but instead by their size.

Large things

  • Cocoa Auto Layout

OS X Lion introduced a new way to specify how a UI should be laid out. They called it Cocoa Auto Layout. The existing layout manager for HotCocoa can be a little clunky since it uses the older APIs available. Auto Layout seems to have a very good programmatic interface that we could hook into.

  • Thoughts on delegates and custom methods

The HotCocoa delegation style is cool, it would be nice if it worked everywhere, or would it? This is really something to think about.

Similarly custom methods might benefit from being defined everywhere and not just scoped to HotCocoa. In some cases it is impossible to have Hot Cocoa customizations applied to an object, such as any object that is created for you by a service (e.g. Bonjour). Or maybe the solution in this case is to catch those objects and apply Hot Cocoa customizations before they are passed to client code.

  • API documentation

The large documentation challenge is documenting the mappings. It is nice to have things automatically configured for you, but having to dig around in the code to find out what the default configuration is set to can be annoying. It would also be nice to have custom methods and delegate methods documented properly. This is a large task as it requires writing a plug-in for the documentation system.

  • Guides

There are some large guides that could be written...

  • Example code

Small projects demonstrating things not shown in other examples might be useful to newcomers... ### Little things

  • New mappings
  • New features

Medium things

  • HotCocoa Grahpics

We should merge in changes for hotcocoa/graphics from upstream and its network.

  • API documentation

There are other APIs that need documentation, there are entire classes that need some documentation love. Specifically the classes in lib/hotcocoa/graphics have sparse documentation.

  • Regression tests

Some tests are harder to implement than others. The challenge is to make the tests non-invasive so that they can be run as part of Gem Testers.

  • Guides

Some documentation is not suited to be directly with the code and deserves its own guide.

  • Configuring your build.yml file
  • Adding gems to your project
  • Using HotCocoa with your existing Xcode projects
  • General cleanup and refactoring

The code base has accumulated a bit of "code debt" and should be cleaned up and refactored a little bit. Specific problems can be found if you search the code base for @todo tags.

  • New mappings
  • New features

Little things

  • API documentation

This can be done in small chunks, and by many people; it is a good way to get familiar with the code base! Feel free to add small examples, or explain edge cases.

  • Regression tests

Some regression tests are easier than others, and can be done in small chunks, there are some features that have no regression tests yet.

Clone this wiki locally