Inspiration

Developing programs on Solana and writing client applications for them can be a tedious task. It involves a lot of boilerplate work to perform simple tasks like passing state and encoding or decoding it. Developers need a tool to test their Solana programs without having to write fully-fledged clients for them.

What it does

We built Seagull to ensure a seamless experience for Solana developers. It allows developers or anyone interested in Solana to send custom transactions to any program on Solana without writing code. The interface provides the ability to add an arbitrary number of instructions, set their target program ID's, and specify the accounts they involve and the data to be included with them.

How we built it

First, we familiarized ourselves with Solana and read up on how programs work on Solana and what steps are involved in the processes of using or developing programs on Solana. We exchanged our knowledge and tried to learn as much as we can. We started with the user interface; we discussed what it should include and how it should behave.

Next, we created a mockup design on Figma which we then implemented using several frontend technologies. After the user interface was done, we started discussing how we would implement the functionality and broke it down into several milestones. We used Git and GitHub collaboratively throughout the whole process to assign issues and add features to the application.

Finally, we used Vercel to deploy our application with a Continuous Deployment pipeline.

Challenges we ran into

It was very challenging to develop an application for the blockchain when we did not have much prior knowledge of blockchain technology or experience with it. We had to do extensive research to get more familiar with blockchain technology and Solana in particular.

The time frame was relatively tight and we had a lot to learn to get started.

Accomplishments that we're proud of

We completed the project in time and we learned a lot during the whole process.

What we learned

  • We got to learn what transactions on Solana are composed of.
  • We understood the ecosystem of Solana better.
  • We honed our frontend development skills.
  • We got familiar with Solana's web3.js and interacting with the blockchain.

What's next for Seagull

Further improvements to the application may include adding support for specifying PDA's, supporting multiple signers per transaction, and supporting more data types, including a generic binary object data type.

Built With

Share this project:

Updates