Across continents and millennia, people have cut paper to tell stories, celebrate life, and express culture. PAPERCUTTING.art explores how a digital tool can reinterpret this age-old folk art as a space for creativity, connection, and cultural reflection.
PAPERCUTTING.art is a web-based vector-graphics design tool that simulates the tactile experience of cutting paper. With virtual scissors, anyone can explore, experiment with, and create custom paper-cutting pieces. These can then be exported in digital formats for sharing or as printable templates to be cut by hand. Inspired by the artist’s childhood memories of making papercuts with his mother—and her enduring love for the medium—the project reimagines that sensory joy and intimacy in digital form. Just as physical paper-cutting artworks are often displayed or gifted to express appreciation and celebrate special moments, PAPERCUTTING.art offers people from different cultural backgrounds a way to connect through the shared act of making and giving.
Handles virtual cutting logic, tracks paths, and updates shape data to ensure consistent behavior during on-screen interaction and export.
- Real-time graphics are rendered on canvas using p5.js.
- A custom SVG renderer mirrors the same geometry for vector output.
- Additional p5.js logic generates printable templates.
- Image: Exported using p5.js built-in functions (PNG and other formats).
- Vector: Exported via a custom SVG generator.
- Video: Captured using p5.capture (MP4, WebM, etc.).
- JSON: Saved in a custom format for reloading and editing.
Built with Vite and deployed on Netlify.
Geometry & Algorithms
- Geometric Algorithms (University of Glasgow, Paterson)
- RDP Line Simplification (The Coding Train, Daniel Shiffman)
- Determine If a List of Polygon Points Are in Clockwise Order (Stack Overflow)
- Linear Congruential Generator (Wikipedia)
- Point of Intersection of Two Lines (GeeksforGeeks)
- Area of a Polygon With Given N Ordered Vertices (GeeksforGeeks)
- Equation of a Line From 2 Points (Math Is Fun)
- p5.Vector.js Source Code (Processing Foundation)
JavaScript Utilities
- Detect the User's OS in the Browser (30 Seconds of Code)
- How to Download a File Using JavaScript (DelftStack)
- Shuffle an Array (JavaScript.info)