This article is a stub and needs to be finished. Plunge forward and help it grow!
A good reference to the ETL/synfig/synfigstudio source code is the synfig doxygen documentation. Please note that currently the API and ABI is subject to change and breakage. We do our best to keep the file format from breaking though.
NOTE: the code tree that used to be listed here became out of date after a restructuring of the source code. Please browse the tree using github instead.
Synfig Studio has three parts with their own directories: ETL, synfig-core, and synfig-studio.
ETL is a template library that implements reference counting, portable threading, gaussian blur, and plenty of other goodies. Every part of the Synfig project uses ETL in some way. It is like the C++ STL.
synfig-core is Synfig's backend. It renders scenes and knows how to read and write Synfig XML files. This directory contains the Synfig library and the Synfig command-line tool.
synfig-studio is the graphical editor. It uses the GTK+ widget library. If you want to hack on the interface, this is what you should look at.