You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Ulrich-Matthias Schäfer 1edcc976b8 applied fixes from 2.x branch 5 years ago
.config dont generate esm bundle anymore and link to src/main.js directly. Move bower to its own repo 5 years ago
.github Its obvious that these Issue templates were notes... 5 years ago
bench Get rid of HTMLNode and Bare in favor of Dom 5 years ago
playgrounds fix playgrounds, delete unneeded files 5 years ago
spec fix playgrounds, delete unneeded files 5 years ago
src applied fixes from 2.x branch 5 years ago
.eslintrc.yaml Reverted some of the lint rules after chatting with fuzzy 5 years ago
.gitignore dont generate esm bundle anymore and link to src/main.js directly. Move bower to its own repo 5 years ago
.travis.yml Fix build chain so that we now have multiple builds. Details below: 5 years ago
CHANGELOG.md applied fixes from 2.x branch 5 years ago
LICENSE.txt fix playgrounds, delete unneeded files 5 years ago
README.md applied fixes from 2.x branch 5 years ago
package-lock.json Merge branch '790-color-spaces' into 3.0.0 5 years ago
package.json correct script 5 years ago
svg.js.d.ts applied fixes from 2.x branch 5 years ago

README.md

SVG.js

Build Status Coverage Status CDNJS

A lightweight library for manipulating and animating SVG, without any dependencies.

SVG.js is licensed under the terms of the MIT License.

Installation

Npm:

npm install svg.js

Yarn:

yarn add svg.js

Bower:

bower install svg.js

Cdnjs:

https://cdnjs.com/libraries/svg.js

Documentation

Check svgjs.com to learn more.

Donate

Development

To develop svg.js, you have a few commands available to you. Firstly, you should clone this repo, then cd into the folder with this README and run:

npm install

You’ll now have all the dev dependencies installed, and you’ll be ready to build the bundle. Once you’ve made your changes just run:

npm run build

This will build svg.js and make a distribution in the /dist folder. While developing, this may not be so convenient as the build will fail if you have any linting errors, refer to the standard coding styleguide for style we use, linters are available for most popular text editors as well.

Testing

This will set up everything. While you are working, you should make sure your changes pass all of our tests, so just run:

npm run test

Or just launch the jasmine test runner from /spec/SpecRunner.html. Its good to try the spec runner on a few different browsers.

Performance

You can run performance tests by making a new benchmarks, look in the /bench folder and just add a new js file with the test you want to make. We include a few examples in the repo to make it easy for you to make your own.

Playgrounds

If you would like a simple sandbox that you can use, take a look into the sandbox folder.

Pull Requests

We welcome any pull requests and will try our hardest to review them as soon as possible. If you need any help or would like to chat, check out our gitter group, we are always happy to see new users!