Inspiration
After a lot of brainstorming, we realized one common struggle we all share: deciding what to do next. That sparked an idea—to create a platform that not only suggests exciting activities but transforms completing them into a creative experience. Imagine turning every adventure into a piece of art! We wanted to make it even more meaningful by encouraging people to document their journeys, contributing to a vibrant, shared gallery of adventures that grows richer over time.
What it does
Spontani allows users to create and participate in engaging tasks. Users can define tasks by adding a start date, an end date, a description with detailed instructions, a location, and an initial photo to set the tone. Once the task is created, others can join in by completing the task and contributing their own photo showcasing their experience. When the task concludes, Spontani generates a beautiful carousel of all the photos submitted, creating a visual story of everyone’s adventures. It’s a unique way to document, share, and celebrate collective creativity and spontaneity!
How we built it
We built Spontani with Svelte and Go. Our frontend utilizes Svelte 5 with Flowbite to create a modern mobile friendly interface for our adventurous users. Our Go backend is actually a serverless microservice architecture. It utilizes Go based lambdas in AWS managed by Terraform. This robust infrastructure can scale to high volume, but is also ultra low cost during typical low traffic times.
Challenges we ran into
For several hours, our images got corrupted when we uploaded them. We tried seemingly everything, and it turned out to require 2 changes to start working. First we found out that our API Gateway in AWS needed to specify allowed Mime types, which is a useful security feature if you know about it. If you don't it becomes a nightmare of debugging. The second issue was that sometimes they would come base64 encoded, so we had to build a system to handle base64 and non base 64 encoded uploads. Additional problems arose when we tried to move from Postman to code because we didn't consider that Postman was automatically adding a Mime type header in its request, which caused us to waste several more errors to realize that simple fix.
Accomplishments that we're proud of
We are proud of building a functional application that allows users to create, view, and upload images for activities seamlessly. Being able to integrate the pinpoint location on the map was not easy and we are proud to have found an effective solution. We are also happy of being able to successfully retrieve values and data from our database to render images in our application.
What we learned
We all learned about how to handle new technologies we were not familiar with. Some of us learned how to use APIs to retrieve images. Others learned to deploy lambdas in Go and integrate them with Terraform. We all learned how to work in a team-setting to reach our goals in a limited time.
What's next for Spontani
In the future, we would implement a user feature so that friends could share ideas with each other. Users could also react to certain activities which would help filter out the most popular results. We would also make our application compatible for mobile users.
Built With
- amazon-web-services
- flowbite
- go
- golang
- svelte
- tailwind-css
- terraform
- typescript

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