Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

myFourierEpicycles - you give me an image I give you its epicycles.


This is the code for a website I'm creating

My motivation for this website is to try and fill a gap left by other work (mentioned at the end), and allow users to upload and draw their own fourier epicycles. The current implementation is far from perfect, but I think it's a good start.

The site has the following functionality:

  • Upload a .svg image and find its fourier epicycles.
  • Draw in an image and find its fourier epicycles.
  • A brief explanation of the mathematics connecting fourier series and revolving epicycles.

Important note on image selction:

For fast and clear drawings upload SVGs that are less than 50kb and can be made single path. It will be evident that your SVG image cannot be made single path from the output, as the fourier transform will be applied to all paths.

The code uses the svgo library to compress and filter SVG files before they are displayed.

I apologies if some of your uploads, that satisfying these criteria, still don't work. Unfortunately at this stage, some SVGs just require some manual tinkering of parameters. I'm working on this.

How to run locally

$ git clone
$ npm install
$ npm run dev

Now open dist/index.html on a local web server.

Understanding the Fourier Transform

For those curious, these resources are good starting points in understanding the fourier transform and the drawing of epicycles.

3Blue1Brown fourier series : Great, like really great explanation.

3Blue1Brown fourier transform : Just as great.

An interactive introduction to the fourier transform : This article really helped me a lot. Gives excellent animations with explanations.

The Coding Train : Gives a nice guide on how you can draw your own epicycles.


An article thats lets the user draw their own fourier epicycle. The site also gives a brief explanation of the mathematics connecting fourier series and revolving epicycles.








No releases published


No packages published