Sections
Want to Contribute?
Do you have a cool example of Degrafa in action you'd like to share? We're always looking for community samples to add to the list, so shoot us an email.
- Use Degrafa for:
- Rich User Interfaces
- Data Visualization
- Mapping
- Graphics Editing
- More
Degrafa : Declarative Graphics Framework
The focus behind the Declarative Graphics Framework (Degrafa) is to bring the graphics classes up a level to provide a common ground between developer and designer within Flex, and enable the graphics classes to become first class citizens within the Flex framework.
There are many goals we want to achieve by developing Degrafa. One is eliminating the learning requirements for ActionScript in order to use the framework. There is a learning curve for a designer, or a programmer who is new to graphic development in ActionScript, which can cause a slow down in production levels.
By abstracting the graphics classes and bringing them closer to a dialect that most programmers or designers understand (MXML), regardless of background. This allows for a much easier transition.
In addition, we hope to combine high reuse and productivity (functions/algorithms/overrides) possibilities to allow both a designer and developer to interactively experiment and experience new avenues that couldn't otherwise be easily explored, understood or discovered.
Of course for adoption to be successful the abstraction needs to be readable. Although SVG is a tight format and grammar, it does not readily lend itself to readability. Thus a more verbose mark-up is required, which is why MXML is used for a more transparent transition.
MXML provides an excellent abstraction for both designers and developers. Easy to learn, easy to read, and most programming aspects that would otherwise confuse issues during cross communication are hidden. Binding is a natural expectation of MXML, so reuse of certain framework products can easily be had. There can be less code and more productivity.
Another important goal is that of optimization. Various tactics, including reuse wherever possible, use of overrides and binding are being integrated wherever possible. There are many opportunities to create something once and make small adjustments versus recreating a very similar object for every new instance.
Even with all the attention to creating an easier, more understandable method of creating graphics in Flex, there will be a need to integrate a supporting set of visual tools to rapidly create graphics. Our hopes are to develop these tools as Degrafa evolves as a framework.
With all these features we've assigned as goals, it is hard for us not to imagine all the possibilities of this framework. Whether for UI development, skinning, graphically dependant applications, rapid development or light weight widgets, Degrafa could be used in a variety of ways. Hopefully, we'll be able to make it everything we think it can be and more.
Degrafa Team
As an open source project, Degrafa maintains a strong core team, as well as community contributors, who continually help push the framework forward. If you'd lik to contribute to the project, let us know.
Core Team

-
Jason Hawryluk
Founder & Framework Architect
In 2006, Jason created the Flex 2 Primitive Explorer which has served as the inspiration for what Degrafa has become today. Jason continues to lead and guide the direction of the Degrafa framework while developing its core functionality and leading the rest of the development team. Jason's passion for software design and development is a powerful force that continues to drive Degrafa and the team into new and innovative directions. Jason currently works as a consultant for EffectiveUI in France, helping companies to design and build next generation RIA applications.
If you have any technical questions, or just want to pick Jason's brain, you can email him at jason[at]degrafa[dot]com. Check out Jason's Blog or follow @jasonhawryluk on Twitter.

-
Juan Sanchez
Founder & UX Architect
Juan is an Experience Architect at EffectiveUI, the creator of ScaleNine and the author behind the majority of themes that are available there. He brings a designer perspective and serves up new ways of pushing the framework. Juan serves as Degrafa's resident usability and design expert, helping to chart out the Degrafa feature set,and future direction as well as managing the public aspects of Degrafa like the website, blog and press and marketing materials.
For any design or visually driven questions, or questions about Degrafa's capabilities, you can contact Juan at juan[at]degrafa[dot]com or follow @juansanchez on Twitter.

-
Greg Dove
Framework Developer
Greg plays an important role in advancing the Degrafa framework forward. Working closely with Jason, Greg has been collaborating on the additional research and the coding work required to flush out new areas of Degrafa since April 2008.
After many years in corporate roles, with ActionScript coding as a side interest, Greg switched careers to focus on coding full time as an independent developer. One of his recent personal projects, LineArticulator involves translation of SVG vector data into code format which led to an interest in Degrafa. Greg is involved in the core framework coding as well as enhancing the feature overlap between SVG and Degrafa.
Greg is another contact for general technical questions, or for questions about what Degrafa features correspond with SVG features. You can contact Greg at greg[at]degrafa[dot]com. Check out Greg's Blog or follow @greg_dove on Twitter.

-
Tom Gonzalez
Framework Engineer & Business Operations
Tom currently plays two primary roles within the Degrafa Team. First and foremost Tom loves to engineer software and is a core contributor to Degrafa framework enhancements and language design. Secondly, Tom helps to manage the necessary executive and business operations required to grow and manage a community driven open source effort such as Degrafa.Tom is currently the Managing Director at BrightPoint Consulting, a consultancy focused on delivering highly immersive and visually engaging data centric applications.You can read more about Tom's continued research in the field of visual design and software development on his blog Form-Function.
If you have any technically related questions you can contact Tom at tom[at]degrafa[dot]com. Check out Tom's Blog or follow @twgonzalez on Twitter.
Contributors
-
Jim Armstrong
Mr. Armstrong did his undergraduate work in Math and Aerospace Engineering with some graduate studies in Operations Research. Much of his undergraduate time was spent studying numerical analysis and computational geometry.
After graduating, he moved into the high-performance computing industry and spent the majority of that time writing assembly-language math libraries for supercomputers. At the end of his HPC career, he became interested in operations research and business decision analytics. This interest eventually led him to become market development manager for Finance and OR at Silicon Graphics. His tour of duty in the operations research arena included writing low-level solvers for multi-objective decision analysis and planning under uncertainty. He then moved onto freelance work where a career writing plugins in C++ for high-end 3D software has migrated to custom application development, mostly in Adobe Flash. About 70% of his time is spent in application development with the remainder split among applied math consulting and background projects.
Although he currently programs predominantly in Flash Actionscript (2 and 3), his past programming experience includes assembler, Fortran 77, Fortran 90, C, C++, and C#.
Feel free to mail Jim to discuss computational geometry and its application in Degrafa at jim.armstrong[at]degrafa[dot]com.

-
Taras Novak
Taras is a cross-platform software architect with design skills and experience in .Net, J2EE, Flex and mobile web technologies. His core specialties are information dashboards, corporate portals, and data visualizations. He started experimenting with Degrafa early on and contributed a number of Degrafa samples.
Most recently Taras started working on miniShape Designer, a graphics design tool for Flex and web developers that uses Degrafa for drawing, and provides a number of graphics markup output options to bridge the gap between Degrafa, SVG, and FXG. Taras is looking to contribute and introduce new IO options to the Degrafa framework.
Check out his blog or follow @TarasNovak on Twitter

-
Ryan Campbell
Ryan has over 10 years of software development experience with many different languages. He's an independent consultant living up in BC, Canada who over the last few years has focused developing on the flash platform and J2EE. Knowledge gained from his contributions to OpenFlux will be used to help remove dependencies on Flex from Degrafa and development of an AS3-only branch of the project.
Check out Ryan's Blog or follow @bobjim on Twitter.

-
Ben Stucki
Ben is a Flex developer with a passion for custom styling and interaction design. He brings an in-depth knowledge of CSS and the Flex styling framework, along with years of experience using the Flash graphics API. You can check out Ben's blog to learn more about his latest projects.
If you have any CSS or skinning questions regarding Degrafa, you can contact Ben at ben[at]degrafa[dot]com.

-
Josh McDonald
Josh is an interface-obsessed hacker from Brisbane, Australia. By day he tries to sneak the pretty into enterprise applications for international corporations. By night, he's a mild mannered reporter for a major metropolitan newspaper.
Along with blogging, Josh contributes where he can to interesting open source projects. His main interests are: creating new and exciting user interfaces to make our boring daily computing tasks a little easier and more pleasant, and making it easier for other programmers to do the same through sensible APIs and frameworks.
-
Pavan Podila
Pavan has a strong background in WPF/XAML and has worked on complex UI designs and custom controls. Through Pavan's blog he discusses custom control development, animations, 3D, architecture,etc. and developed the Illustrator to XAMLexporter. Pavan feels Flex is very similar in principle to WPF, so he decidedto jump on.
You can contact Pavan at pavan[at]degrafa[dot]com.
-
Jim Cheng
Jim is a seasoned Flex/AJAX Senior Developer at EffectiveUI with a strong background in data structures and algorithms. He augments the Degrafa team with years of experience in performance optimization and file format parsers. Jim looksforward to improving the core framework as well as contributing new features.
You can contact Jim at jim[at]degrafa[dot]com.