Inspiration
Marlin was inspired by current productivity apps like Notion. I found that there weren't any particularly tailored for students, and most were work or job-centered. That's why I decided to make Marlin, since I saw it as a gap in the world of productivity tools.
The inciting incident that really caused me to make a task app was my personal chaos with all of my schoolwork. I had trouble keeping track of assignments because I couldn't find a free, centralized productivity app that helped me study and remember my deadlines.
What it does
Marlin functions as an all-in-one, student-focused, task and productivity website, serving as a center for all of the user's tasks, a calendar, notes, and more. It helps students (like me) stay on track with their studies while offering a simple and easy-to-navigate experience.
How we built it
Marlin was vibe coded using Base44. Specifically, it was made using Next.js/React and a TypeScript setup using React Query for local caching and the Base44 API client. For UI, it is composed of Tailwind + ShadCN components.
Challenges I ran into
The first and most imposing challenge that I faced was implementing so many features while still finding a way to keep things simple and not too overwhelming. When sketching out the design for Marlin on Figma, I was having immense artist's block. That's when I decided to take a break and find some time off the screen, since this is what I do when I'm at a dead end in web design. Taking a walk in the park is a great way to spark new ideas, and exactly how I found the idea of including a main overview tab with all the day's information, and then having specific, dedicated tabs for each individual function or action.
The second challenge I ran into was getting Base44 to cooperate with my requests. After making the basic task features, I attempted to build the AI assistant myself, but Base44's speed was unrivaled, and my expertise was limited. Base44 could complete this task in mere minutes. However, when I asked it to do so and explain the code to me, I faced many technical problems and hurdles. Base44 would simply refuse to cooperate, returning messages like "There was an error. Please try again," and "You're out of credits," even though I was clearly not, since I was on the Pro Plan. Eventually, after a couple of reloads, restarts, and frustrated groans, it worked.
Accomplishments that I'm proud of
My favorite accomplishment with this project is making something of my own that not only I, but other students like me, can use to make their academic life easier. Building a simple tool such as this one had such a profound impact on me. When I was testing the finished product, I just couldn't believe that I had been a part of making something like this.
Another accomplishment that I'm proud of is learning new things, such as Base44 explaining the code behind the AI Assistant and how it functions. I am always looking to expand my programming knowledge, since I can apply my newly acquired skills as a full-stack developer in the future.
What we learned
I found 3 main takeaways from this project:
- Sometimes, just stepping away for a bit can really help, even when you're deep into programming. Some problems just need a little patience and maybe a stroll in the park.
- It's not about what you have at the end (the finished product), it's about how you got there, what you learned, and the journey that took you to your destination. This may sound cliché, but it's true, and this project really reinforced my belief in 'learning over outcomes'. Because no matter how things turn out, you'll know if you maximized a situation's learning potential by seeing where you failed and improving from that point. Every failure gives a lesson learned, and every lesson learned presents an opportunity to improve, which leads to more knowledge.
- Next time I make a project involving an AI agent, I'm going to do it on my own to get better at it. I will probably use the OpenAI API. By trying to make this feature on my own for practice, I'll eventually be able to do it without help - completely on my own.
What's next for Marlin
My plans for Marlin in the future include additional features to make the tool more useful. I plan on adding folders to sort each task, adding timing to tasks, and expanding the Marlin Assistant's abilities. There'll be even more to come in the near future. I think of Marlin as a learning project - I will test out every new skill I learn in here, while learning new things.
My Final Thoughts
I am incredibly grateful for the opportunity to participate in this hackathon. Not only has it brought me more experience, but it's brought out a constant curiosity in me and allowed me to display my creativity on a computer screen. Of course, I learned many hard skills (AI Assistant integration, Database code, etc), but without this hackathon, I might have never furthered the development of my soft skills, which encompass adaptability, problem-solving, and patience. Thank you for making a competition that incited the joy of gaining knowledge in me.
Built With
- base44
- next.js
- react
- reactquery
- shadcn
- tailwind
- tanstack
- typescript


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