SolNote

image

Try it out!

SolNote

? Inspiration

  • We wanted to harness the power of Blockchain technology to help users share notes with others anonymously that can be accessed by anyone around the world
  • Use decentralization to enable ease of shareability with data being in our own control. Data if gone once we choose to delete it and take off the blockchain
  • The users can also see what others have written without knowing other details of the person who shared it
  • This ensures anyone can access the notes but cannot corrupt them

? What it does

  • SolNote is a Blockchain-based note-taking Dapp using Solana Blockchain
  • The users can link popular wallets of Solana to write, edit and delete snippets and share them anonymously with the help of Blockchain using a link
  • Currently, we have a 500-character limit per note
  • Once we reach the limit, the colour changes to red to give a warning
  • As long as the user has enough Sol, they can keep adding notes
  • The time of the creation of the note will also be recorded
  • As long as the file is available on the network, it will be available to anyone in the world with the link
  • Snippets can be shared securely and anonymously using SolNote
  • It is a decentralized, secure, verified, and anonymous file-sharing system based on the foundations of blockchain technology

?️ Languages used

  • Vue
  • JavaScript
  • TypeScript
  • Rust
  • HTML
  • CSS

? How we built it

  • Ideated on what we can build using the Solana Blockchain that solves a real-world problem
  • Planned how we can turn our idea into a project
  • Made a timeline on how we can divide the tasks & complete it in a short time
  • Decided on which languages and frameworks to use for the project
  • Start coding!
  • Tested it out using Phantom
  • Solved the challenges we faced
  • Yay! Finally, we had SolNote working.

⚙️ Challenges we ran into

  • We both were new to the Blockchain technology
  • Get quickly familiar with the Solana Blockchain and use it in a project
  • Debugging instructions that were continuously failing to execute on the Blockchain
  • We then decided to port over to Anchor API which simplified much of the boilerplate code. But even that was quite vast
  • Figuring out heuristics which would work best for this use case and the overall structure of the contract and accounts systems

? Accomplishments that we’re proud of

  • Got familiar with the Solana Blockchain and applied it to make a project in a short time
  • Created something from nothing. We both started from scratch, but ended up making it!
  • Challenged our brain to find innovative solutions to solve the challenges
  • Enjoyed a creative and collaborative week learning a lot of new things together
  • Overall, it was a fantastic experience!

? What we learned

  • Got familiar with the Solana Blockchain
  • Best practices of using tools like Git & GitHub
  • The best practices of pair programming on a project
  • How to plan & collaborate to complete a task in a short period of time
  • Attention to details
  • How to quickly learn a new skill

? What’s next

  • Add a feature for allowing users to upload password-protected private notes
  • Storage Side it would make more sense to use a DSN like arweave when actual currency is involved
  • Add a Pagination feature as we scale up so that we only query what we require server side. Currently, we are not facing any issues as we are not dealing with a large corpus
  • Support for variable-sized content and self-terminating notes. Based on a rent system, we can assign only enough rent to an account such that it deletes itself once a set time is reached when it will become unable to pay the rent
  • Support for more varied kinds of content like video, images, voice features and other multimedia
  • Add features for collaboration and shared notes

GitHub

View Github