Contributing to the FreeNAS 10 GUI

FreeNAS 10 is still incredibly early in development. We're looking for contributors who can provide a concrete mockup for a given feature, work with us to refine the mockup, and then implement it independently.

To read about actually working on the FreeNAS 10 GUI, read the Architecture and Development guides.

How to Coordinate with the FreeNAS Team

Our preferred way to see a mockup is with Balsamiq Mockups. If you don't have commit access, simply open an issue with your proposed mockup attached (Balsamiq also exports to PNG, if needed). A template project and any existing mockups may be found in the mockups directory in the source. Balsamiq offers a 30-day free trial. If you don't have access to Balsamiq, we also accept cellphone pictures of whiteboards and cocktail napkins. All we need is something clear enough to review.

The FreeNAS team at iXsystems has regular meetings to assess and provide feedback on mockups. Once a mockup is approved (probably a pretty informal process after the first look) the contributor should be prepared to implement that feature according to that mockup without substantial further feedback. This should be done in a feature branch for those with commit access and in a fork otherwise.

Once a feature is ready, send a pull request or merge your changes. Don't send a pull request or merge your changes until you're absolutely sure your feature is ready, because it will be summarily rejected if it's broken, substantially different from the mockup, or negatively impacts any other part of the GUI.

Where to Contribute

Many of the planned features of FreeNAS 10 are completely unimplemented. We're adding github issues as we go. If there's a feature that's clearly not being worked on and which doesn't depend immediately on work being done elsewhere, free free to submit a mockup.