Inspiration

Moving to a new country can be one of the most overwhelming experiences for a person. Canada is known to welcome hundreds of new settlers every year, yet there are minimal ways for them to streamline the process. Our web app, Just Landed, addresses this big issue in Canada's society today. We believe that where you come from should not prevent you from feeling at home.

What it does

Just landed is a personalized immigration aid web app aimed for newcomers to Canada. This app features something that is missing from other sources: personalization. After a short onboarding quiz, the app builds a profile specifically for the user, based on their nationality, immigration status, language, religion, children's ages, and purpose of immigration (work, study, family, refugee). After the users take the quiz, they will get a personalized checklist of what they should do to settle into Canada (such as applying for a SIN, banking, insurance, etc.). There will be timelines ranging from urgent, one week, 2 weeks, one month, and 4 months. This gives newcomers a step-by-step process to follow without the stress of having to figure out their situation in a foreign place. Additionally, Just Landed will show nearby grocery stores with food from their home country, worship places, clinics, libraries, and settlement centers on a specialized map. To make our app even more immersive, we have included an AI powered chatting tool that guides users through our web app, answers questions related to immigration, and helps users practice their speech by featuring multi-language translation through the implementation of Gemini API. This makes it accessible and interactive to more users, especially those who may struggle with English.

How we built it

We built Just Landed using React and Vite for the frontend, Firebase and Firestore for the data storage and backend, and Auth0 for authentication. The chatbot itself is powered by the Gemini API, which utilizes the user’s responses on the onboarding quiz to generate personalized responses in the user’s chosen language. We built the app by separating it into 5 feature branches on GitHub: authentication/login, onboarding quiz, community map, AI chatbot, and the dashboard. Each person took one or two features, and we all shared a user profile schema to ensure that the features merged easily. Once each feature was complete, we merged everything together and implemented a consistent UI.

Challenges we ran into

One of our first challenges was simply deciding what kind of application to build. We debated between a mobile app and a web app, and eventually chose a web app due to its accessibility. This way, newcomers do not need to download anything to get help, and a web app can be accessed from any device regardless of the operating system. Integrating five independent features into one cohesive web app was another one of our challenges. To overcome this challenge, we carefully broke down the tasks of each feature and aligned on a shared Firebase project, a common user data schema, and used consistent design language from the start to ensure easy merging. We also had issues due to Gemini API’s rate limits and model versioning, which caused significant debugging time during development, however this was fixed through careful debugging and team efforts.

Accomplishments that we're proud of

We’re proud of making an app that is completely personalized, with users seeing different versions of the same app. Knowing that we can make an impact on someone’s life by helping them settle into Canada is what we are most proud of. The onboarding quiz feeds directly into every feature, so a Hindu student from India with two young children would get a completely different experience of our app than a refugee from Syria seeking housing and legal support. We’re proud of how our team was able to collaborate as a first year team at our first hackathon, gaining experience on languages we have rarely seen.

What we learned

We learned that the hardest part of a group hackathon isn’t writing the code, but rather it’s about the idea and planning that goes into it. Agreeing on a shared schema, a shared Firebase project, and a consistent design system before writing code greatly helps us save time on debugging, rather than trying to merge different approaches in the end. We also learned the reality of AI and working with AI API’s. It is not something that can just do everything, but rather it needs to be efficiently prompted and even small bugs can take a significant time to fix, and so it is important to understand your code to make the necessary changes. Additionally, this project gave us a deeper understanding of the challenges newcomers face, shaping our feature decisions.

What's next for Just Landed

The next steps for Just Landed include completing a document upload feature which will allow users to store their documents and receive personalized guidance based on what was uploaded. Users will then get a simplification of what that document means, and receive personalized guidance on what to do next. We would also like to include a feature that addresses a common issue that Canada faces, where high skilled professionals’ foreign credentials aren’t recognized in Canada, forcing them into jobs that are not of their qualifications. We want to add a credential recognition guide to our app that leverages AI to point users to the right resources to bridge these gaps. We also plan to partner with agencies to monetize this app, allowing us to gain commissions while helping newcomers match to jobs that are more oriented with their career.

Built With

Share this project:

Updates