Inspiration
Inspired by one of the authors' homework assignments, a brief discussion (and a request from a sibling). Infinite Zoomer is an app that all members of our group thought would be useful, or at least fun!
Infinite Zoomer's content is synced between multiple devices, so you can draw on an iPad and present from a laptop.
What it does
It's a note-taking app that lets users zoom in as far as they want!
How we built it
We have a Java server that serves an HTML page. We used IntelliJ IDEA CodeWithMe and git.
Challenges we ran into
Collaboration was a challenge. Not everyone was familiar with the frameworks we tried to use. We were able to work around the second by sharing our screens in a Zoom meeting. A group member with experience in some technology (like JavaScript or setting up GitHub SSH) could then help another get started!
Most significantly, several group members power went out around a half hour before the submission!
Accomplishments that we're proud of
It works!!! We can zoom really far and out really far. Additionally, we got live sharing to work: One user can work on the same (really, really big) canvas as several other users!
What we learned
We each developed different skills while working on the project. From setting up a new Java project to writing async JavaScript, we all learned something new!
What's next for Infinite Zoomer
It's OpenSource! Please contribute! Our GitHub is linked below!
If you want to demo it (without downloading the server)
We have a static version of the JavaScript portion of the app hosted on GitHub pages. We expect it to be slower (and less functional) than the full version (that's served by a Java backend!), but it's a great way to demo some parts of our app! Right-click and drag to pan, scroll to zoom. If you have a touchscreen, touchscreen gestures work! If you have a stylus, pressure sensitivity should work!
The slider at the top of the screen can be used to reset the zoom to a level near 100%. We plan to replace it with a "Zoom to 100%" button.
Built With
- html
- html5canvas
- java
- java.net.serversocket
- javascript

Log in or sign up for Devpost to join the conversation.