Adobe (Nasdaq:ADBE) today released a new, free open source JavaScript library called Snap.svg on GitHub for Web designers and developers working with Scalable Vector Graphics (SVG). Snap.svg is a powerful and intuitive API for animating and manipulating SVG content, offering capabilities like masking, clipping, patterns, full gradients and groups to make content more interactive and engaging. The new library complements Adobe Edge Tools & Services and supports powerful drawing and responsive graphics capabilities, needed to deliver beautiful experiences on today’s modern Web browsers.

“Adobe is passionate about creativity and advancing the modern Web,” said Vincent Hardy, director, Web Platform Engineering, Adobe. “We have done extensive work on new technologies like Snap.svg that address the ever-changing needs of designers and developers so that their work can reach the largest audience across browsers.”

“At PBS KIDS our mission is to create engaging content that will educate, inform and inspire kids,” said Chris Bishop, creative director, PBS KIDS. “By having Snap.svg in our Web tools arsenal we can now achieve the same type of expressive content that we have on television across various devices in a lightweight, flexible and stunning way without sacrificing quality.”

Released under an Apache 2 license, Snap.svg was written entirely from scratch by Adobe’s Dmitry Baranovskiy who also authored Raphaël, the de facto library for working with SVG on browsers all the way back to Internet Explorer 6. Unlike Raphaël, Snap.svg supports modern browsers including Internet Explorer 9 and up, Safari, Chrome, Firefox and Opera.

Snap.svg encourages the creation of code that is clean and easy to maintain, making it an excellent API surface for tools that require support for responsive graphics and powerful drawing capabilities like Adobe Edge Animate, Adobe Flash Pro CC, Adobe Illustrator CC and Adobe Photoshop CC. It also works with existing SVG which means developers can reuse patterns from previously created content or make that content interactive.