Inspiration


We were inspired to make SlugTrails primarily out of the desire to promote not only the physical well-being of students here at UCSC but their mental health as well. Coming to Santa Cruz, just as with any new school environment, can be stressful. Those who ventured off from their friends and family in the pursuit of higher education can often feel isolated and at times completely cut-off from the communities they grew up in. This can make us withdraw into our own bubble even further, turning down opportunities out of fear of being rejected by others that are in reality, in the same boat as you. That's why we are an adamant believer in getting people out there, getting them to experience the world, and to meet others just like you along the way. Taking inspiration from Tomodachi Life and Pokemon Go, we set out on our course of action to connect students to nature and with one another.

What it does


SlugTrails is a online fitness and activity manager that takes into account the weather, price-point, and hours of different hotspots around the Santa Cruz area where students can easily plan, track, and record the various adventures they manage to get themselves into. Along their journey, students will receive collectible items that they in turn can dress up a digitized Sammy the Slug with, showing off cool outfits and souvenirs for getting out there and experiencing the world. We actively update our recommendations based off of prior user engagement to provide you with the perfect day out, complete with tips about safety and risk reduction to help keep UCSC students safe and out of harms way while still getting to enjoy all of what Santa Cruz has to offer.

How we built it


Throughout the project we had two different sub-teams within our overall team. One focused on the user interface and front-end web development, whereas the other focused on the backend side and data base work.

The front end team used SvelteKit to build out a snappy frontend UI. The front end makes use of custom-made WebAssembly for search and recommendations, the open source Leaflet map library, Firebase Authentication coupled Google’s Identity Platform for sign in with Google, and Firestore to store user’s trips and accessories.

On the back end, we took advantage of Rust's diverse and robust libraries, memory management, and optimizations to create a link between computationally heavier processes, communicating back and forth between the front-end and back-end to work towards our goals and solve issues as they came up. With the database side of things, we used Google's Firebase to store user information along with photos, meta data, and other information, going over edge cases and potential vulnerabilities within the configuration to ensure the data safety and protection of students who use our software.

Challenges we ran into


During backend development with WebAssembly for some of our more computationally expensive work, we originally had proposed using C++ along with emscripten, a free open-source compiler, but ran into a fair amount of issues regarding working within Windows and their linux subsystem. This resulted in a fair amount of rewriting and reworking, debugging, and computer crashes. However, after so much difficulty with C++, we switched over from C++ to rust which vastly improving both compilation speed, reduced complexity, and improved compatibility.

Accomplishments that we're proud of


When looking at what we're proud of, we're of course proud of the final product, proud of the various features that at first, seemed easy to do and then turned out to be far more difficult than we had expected, proud of the intersection of backend, frontend, and our different ranges of knowledge and expertise at that. Looking at the web app, it's cool of course, but what the app represents — the hours of work, effort, shared memories, and shared laughs — is what this project is really about. The product is only a piece of the puzzle, a piece that is meaningful but does not compare to the experiences we have shared with the ones we love while building it out.

What we learned


At the beginning of the project, our group was comprised of a front-end web developer with experience in game design, a full stack web developer, a back-end web developer, and a hardware engineer. At the end, those lines were all blurred. We learned everything from limiting read and write instructions on Google Firebase to practice with UI scaling and mobile-centered web development. We all had a role to play in the development, testing, and design of the website, taking advantage of what people brought to the table to not just make progress on the web app, but to get everyone else up to speed.

What's next for SlugTrails


SlugTrails was a great stepping-stone and learning experience for everyone in the group. The next steps in the websites future are unclear, but the website is only the final product of something that was much more. We hope to implement the rust libraries into the front end, have a better photo viewer UI which is reminiscent of a cork board and to improve search and recommendation further. We also hope to introduce a system where other people can submit locations to the app.

While we all initially specialized in our own separate fields and interests, lessons learned here and the memories made through this project will live on forever. No matter what is next for SlugTrails the website, the project will always have a future as our shared beloved experience.

Share this project:

Updates