Inspiration

Our inspiration for Kalos stemmed from a desire to create an application that not only fostered social connection, but also addressed a tangible real world problem. The idea truly came about during a break when we went to play badminton. We realised there wasn't a readily available platform to connect individuals for fitness activities, and the concept of bringing gym goers, trainers, and trainees together in one unique space resonated deeply with us. We believed this presented an untapped opportunity to innovate and solve a genuine need within the fitness community.

What it does

Kalos facilitates the connection between fitness trainers and trainees by employing an algorithm that matches individuals based on their fitness goals, training styles, and personal preferences. This eliminates the typical challenges associated with finding suitable training partners or clients.

For trainers, Kalos streamlines client acquisition, allowing them to focus on delivering quality training rather than expending effort on marketing and outreach. For trainees, the platform significantly reduces the time and effort traditionally required to find a well suited trainer, allowing them to start their training and progress towards their fitness objectives more swiftly and efficiently.

How we built it

The frontend is built with React, utilising react-dom and react-router-dom. For iconography, we integrated lucide-react, and uuid for generating unique identifiers.

Our backend infrastructure is powered by Supabase, which we interact with via @supabase/supabase-js. Data integrity and validation are handled effectively using zod for schema validation, whilst date-fns simplifies date manipulation.

During development, we utilised Vite as our build tool. The entire application is written in TypeScript to enhance code quality and maintainability. For styling, we employed Tailwind CSS, with PostCSS and Autoprefixer for efficient CSS processing. Code consistency and quality were enforced through ESLint, configured with specific plugins for React and TypeScript.

The development environment requires Node.js version 18 or higher and npm version 8 or higher.

Challenges we ran into

Developing Kalos presented a significant learning curve, primarily because neither of us comes from a traditional software engineering background, nor had we ever built a full scale application before. As a data science student and an engineering student, this project pushed us well beyond our comfort zones.

A notable challenge was our novel experience with AI driven code generation. While incredibly powerful, using AI for coding required exceptionally precise prompting. We quickly learned the value of clear, detailed instructions. This was compounded by the limited AI credits available. Many errors we encountered were completely new to us, leading to a frustrating and often credit intensive and time consuming debugging process. We had to become very strategic and economical with our credit usage, learning to diagnose problems more efficiently to avoid wasting resources on vague prompts. Ultimately, the sheer scale of the application was daunting, making this our most ambitious coding project to date.

Accomplishments that we're proud of

We're incredibly proud of several key achievements from this project. Firstly, we managed to conceive a unique and impactful idea for connecting trainers and trainees, and more importantly, successfully developed a working demo of the product. This functional prototype is a testament to our vision and lays a strong foundation for the full application we aspire to build.

Secondly, and perhaps most significantly, we demonstrated remarkable perseverance. Despite the project's considerable scale, novelty, and inherent difficulties, we stuck with it right to the end. This was particularly challenging as we had to grapple with technologies and programming languages completely new to us – diverging from our familiar Python, R, and C/C++ (for the data science student) and Python, MATLAB, and CAD (for the engineering student). Overcoming these steep learning curves and delivering a tangible product is something we genuinely celebrate.

What we learned

This project proved to be an invaluable learning experience, significantly broadening our understanding of app development. We gained profound insight into the sheer complexity in bringing a full scale application to fruition.

Beyond the technical aspects, we developed crucial soft skills. The demands of the project necessitated rigorous time management and seamless collaboration, as we had to coordinate our efforts effectively to meet deadlines. Furthermore, the constraint of limited AI credits instilled in us a strong sense of resource management, forcing us to be highly strategic and efficient in our approach to problem solving.

Finally, our hands on experience provided us with a much clearer and more practical understanding of how AI powered building tools function and how to best leverage them for software development.

What's next for Kalos

we plan to build Kalos into a fully working app and hope to release it on the app store.

Built With

Share this project:

Updates