Skip to content

πŸ¦† GeeseHacks '25 Submission πŸ‘¨β€πŸ’» Ivy Cho, Henry Hung, Ryan Xiao, Daniel Zhao

Notifications You must be signed in to change notification settings

yivwon/geesehacks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

49 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

ChordCraft 🎡

πŸ¦† GeeseHacks '25 Submission πŸ‘¨β€πŸ’» Ivy Cho, Henry Hung, Ryan Xiao, Daniel Zhao

Inspiration

🎹 The inspiration for ChordCraft stemmed from a deep love for music and the desire to make music creation more accessible. As a team of musicians, we often struggled with transcribing melodies into sheet music quickly. We envisioned a tool that would allow users to play a virtual piano and instantly see their notes transformed into digital sheet music, making the process of composing and sharing music more intuitive and enjoyable.

What it does

🎡 ChordCraft is an interactive web application that transforms piano key presses into digital sheet music in real-time. Key features include:

  • An interactive piano keyboard that responds to user input.
  • Real-time note recording that visualizes the music being played.
  • A sheet music preview that updates dynamically as notes are played.
  • The ability to save and clear notes for easy management of compositions.

How we built it

⭐ The project was built using a combination of modern web technologies:

  • Frontend: We utilized React for building the user interface, with Vite as the build tool for fast development and hot module replacement.
  • Backend: Firebase was integrated for real-time database functionality, allowing users to save and retrieve their sheet music seamlessly.

The development process involved setting up the project structure, creating components for the keyboard and saved music, and implementing Firebase for data management.

Challenges we ran into

πŸƒ During the development of ChordCraft, we faced several challenges:

  • Real-time Data Synchronization: Ensuring that saved music updates in real-time required careful handling of Firebase listeners and state management.
  • Playing Chords: Managing how the program responds when multiple keys are pressed at the same time was a complex task.
  • Ideation: Determining the features that we wanted and were able to implemented required trial and error.

Accomplishments that we're proud of

✨ We are proud of several accomplishments in the development of ChordCraft:

  • Successfully integrating Firebase for real-time data management, allowing users to save and retrieve their compositions effortlessly.
  • Creating a user-friendly interface that makes it easy for musicians of all skill levels to interact with the application.
  • Implementing a responsive design that ensures a seamless experience across various devices.

What we learned

πŸ“ Throughout the project, we learned valuable lessons, including:

  • The importance of effective state management in React applications, particularly when dealing with real-time data.
  • How to utilize Firebase for building scalable applications with real-time capabilities.

What's next for ChordCraft

🌱 Looking ahead, we plan to enhance ChordCraft with additional features, such as:

  • Advanced music notation options for more complex compositions.
  • Collaboration features that enable multiple users to work on the same piece of music in real-time.
  • Expanding the application to support other instruments and musical styles, making it a versatile tool for all musicians.

🀩 We are excited about the future of ChordCraft and the potential it has to empower musicians in their creative journeys!

About

πŸ¦† GeeseHacks '25 Submission πŸ‘¨β€πŸ’» Ivy Cho, Henry Hung, Ryan Xiao, Daniel Zhao

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •