# Apache MyFaces Tomahawk

> :warning: **This project is in maintaneance mode**

MyFaces provides a series of JSF components that go beyond the JSF specification. These components are 100% compatible with the Sun JSF 1.1 Reference Implementation (RI) or any other JSF 1.1 compatible implementation. Of course the custom components can also be used with the Apache MyFaces JSF implementation.

## Links

* [Wiki](https://cwiki.apache.org/confluence/display/MYFACES2/Tomahawk/)
* [SVN ViewVC](https://svn.apache.org/viewvc/myfaces/tomahawk/trunk/)
* [SVN](https://svn.apache.org/repos/asf/myfaces/tomahawk/trunk/)






