Inspiration

We have all been part of the conversation that starts with:

"We should meet sometime."

Everyone agrees. But then someone asks, "When are you free?", someone else says, "That's too far for me," another person has a different budget, and after a few days the conversation slowly dies.

What makes this frustrating is that people usually do want to spend time together. The problem is getting everyone from wanting to meet to actually making it happen.

At the same time, we spend hours scrolling through our phones.

That made us think about a simple question:

What if technology could help us spend less time scrolling and more time actually being together?

That is where Lojoy started.

We wanted to build something that doesn't give people another reason to stay on their phones. Instead, it uses technology to help people put their phones down and create experiences they will remember.

Our idea became:

Turn scroll time into memories worth keeping.


What it does

Lojoy is a group quality-time planner.

Instead of making one person figure everything out, Lojoy asks each person for the information that matters:

  • Where they are
  • When they are available
  • How much they are comfortable spending
  • What kind of experience they enjoy
  • How far they are willing to travel
  • Any accessibility requirements
  • Whether they prefer indoor or outdoor activities

Lojoy then tries to find the best plan for the whole group, not just one person.

Finding a common time

Everyone enters their own availability.

For example:

Person Availability
Alex 2 PM - 7 PM
Maya 3 PM - 8 PM
Sam 1 PM - 6 PM
Priya 4 PM - 8 PM

Lojoy finds the shared window:

Saturday, 4 PM - 6 PM

4 out of 4 people are available.

Finding common ground

We didn't want to simply calculate the geographical midpoint and call that the answer.

A place can be geographically central but still be inconvenient for someone because of transport, walking distance, accessibility, cost, or lack of suitable activities.

Instead, Lojoy evaluates practical meeting areas using factors such as travel fairness, accessibility, budget, group preferences, available experiences, and the shared time window.

The result is a place that makes sense for the group.

For example:

We found your common ground: Carlton.

4 out of 4 people can meet here.

The location fits the group's time, budget, accessibility requirements and preferences.

The idea is simple:

We don't find the closest place to one person. We find the place that works for everyone.

Helping everyone get there

Once a meeting point is selected, Lojoy shows each participant how they can get there and gives an estimated travel time.

The prototype uses approximate demo routes and travel times rather than pretending to provide live navigation.

Finding something to actually do

Lojoy doesn't stop at recommending a place.

It suggests experiences that fit the group's budget, interests, time and accessibility needs.

For example:

Five-Shot Photo Quest

A free creative activity where the group has to capture five different moments around them.

Picnic & Question Quest

A low-cost picnic combined with conversation prompts and small group challenges.

Sketch & Swap

Everyone draws something, swaps their drawing with someone else, and tries to guess who created it.

Letting the group decide

The group can vote on the suggested experiences instead of leaving the decision to one person.

Making the meetup memorable

Once people are together, Lojoy provides activities and challenges they can do together.

Afterwards, they can save photos, write down a favorite moment, rate the experience and add it to their Memory Vault.

Then Lojoy can suggest an idea for the next meetup based on what the group enjoyed.

The complete journey is:

PLAN → GATHER → EXPERIENCE → REMEMBER → MEET AGAIN


How we built it

We built Lojoy as an offline-first web application so that the core experience would remain reliable during the hackathon.

The main technologies we used are:

  • React
  • TypeScript
  • Vite
  • Tailwind CSS
  • Framer Motion
  • Lucide React
  • LocalStorage
  • Client-side matching algorithms
  • Interactive SVG maps
  • Seeded Melbourne geographic and experience data

We separated the main logic into different parts of the application, including participant management, availability matching, geographical matching, budget filtering, experience matching, voting, activities and memories.

For time matching, Lojoy calculates the intersection of everyone's availability windows.

Conceptually:

$$ T_{common} = [\max(S_1,S_2,\ldots,S_n),\min(E_1,E_2,\ldots,E_n)] $$

If the start of the common window is earlier than its end, the group has a shared time.

For geographical matching, we use candidate meeting areas and score them using multiple factors rather than relying only on distance.

For experiences, we first apply hard constraints such as the group's lowest comfortable budget, accessibility requirements, available time and experience duration. We then rank the remaining options based on group preferences and location.

We also use AI where it makes sense, particularly for creative parts of the experience such as activity ideas, challenge prompts and descriptions. The important planning decisions are kept deterministic so the results remain understandable and predictable.


Challenges we ran into

Finding a meeting point that is actually fair

One of the biggest challenges was realizing that the middle of a map is not necessarily the best place to meet.

We had to think beyond coordinates and consider the actual experience of each person. Someone might be geographically close to a location but still have a difficult journey to get there.

This changed our approach from simply finding a midpoint to finding practical common ground.

Balancing different schedules

Getting four people to agree on a time sounds easy until everyone has a different availability window.

We needed a way to find the overlap without giving priority to the person who created the meetup.

Making sure nobody gets excluded by the budget

Using the average group budget can be misleading.

If three people are comfortable spending $20 but one person can only spend $10, a $20 activity isn't really a group option.

So we decided that shared experiences should respect the lowest comfortable budget in the group.

Making the idea more than a recommendation engine

During development, we realized that telling people where to meet doesn't solve the entire problem.

They still need to know how to get there, what to do once they arrive, and how to turn the experience into something memorable.

That is why the product grew into a complete journey rather than just a recommendation screen.

Building within hackathon time

We had to constantly decide what was essential and what could wait.

Instead of trying to build every possible feature, we focused on making one journey work well from beginning to end:

create a group → find a time → find a place → get there → do something together → save the memory.


Accomplishments that we're proud of

We are proud that Lojoy became more than the activity finder we initially imagined.

We built around the group, not the individual

Most recommendation systems start with:

"What do you want to do?"

Lojoy starts with:

"What can all of you do together?"

That difference shaped the entire product.

We made the matching explainable

We didn't want the application to simply produce a percentage and say, "Trust us."

Lojoy can explain why a meeting point or experience was selected, including factors such as time, travel, budget, accessibility and group preferences.

We connected planning with actually showing up

The Get There flow gives the group a clearer idea of when to leave and how long the journey may take.

The goal is to reduce the gap between:

"Let's meet."

and

"We're actually going."

We made the meetup itself part of the product

The experience doesn't end when the group reaches the location.

Lojoy gives them activities, challenges and prompts to help them interact instead of simply arriving somewhere and going back to their phones.

We built a memory loop

The final part of Lojoy is something we care about most.

The meetup becomes a memory, and that memory can help inspire the next meetup.

That gives Lojoy a simple loop:

PLAN → GATHER → EXPERIENCE → REMEMBER → MEET AGAIN


What we learned

The biggest thing we learned is that getting people together is a coordination problem, not just a discovery problem.

It is easy to build something that says:

"Here are five things you could do."

It is much harder to answer:

"Here is one option that works for everyone."

We also learned that optimization isn't always about finding the absolute cheapest or closest option.

The best option is often the one that creates the best balance between time, travel, cost, accessibility and enjoyment.

Another important lesson was that the product shouldn't end when the plan is created.

If the goal is to create real-world connection, the experience needs to continue through the actual meetup and afterwards.

Most importantly, we learned that technology doesn't always have to compete for people's attention.

Sometimes the best technology is the technology that helps people stop looking at the screen.


What's next for Lojoy

The prototype gives us a foundation, but there is a lot more we would like to build.

Live travel information

We would like to replace our approximate demo routes with real-time public transport, walking and driving information.

Real local experiences

The next step would be connecting Lojoy with real activities, events and affordable experiences nearby.

Weather-aware planning

If the group plans an outdoor activity and the weather changes, Lojoy could suggest a better alternative.

Smarter group preferences

Over time, Lojoy could learn what a particular group actually enjoys and make future suggestions more relevant.

Recurring meetups

Instead of planning every meetup from scratch, groups could create recurring traditions such as a monthly friends' day or weekend adventure.

Shared memories

We would also like to turn the Memory Vault into a shared space where groups can build a timeline of the experiences they have had together.

Ultimately, we want Lojoy to become the place people go when they say:

"We should meet."

Instead of that sentence disappearing into a group chat, we want it to become:

"Here's when we're meeting, here's where we're going, here's how we get there, and here's what we're going to do together."

And hopefully, after the meetup:

"When's the next one?"

Lojoy

Turn scroll time into memories worth keeping.

Built With

  • accessibility
  • ai
  • algorithms
  • artificial
  • community
  • computing
  • css
  • design
  • generative
  • geospatial
  • impact
  • intelligence
  • javascript
  • localstorage
  • lucide
  • maps
  • motion
  • productivity
  • react
  • social
  • tailwind
  • typescript
  • ux
  • vite
  • web
Share this project:

Updates

Submission history