Family Flow is a family "planning" app. That lets parents manage their childrens schedule for the week. It lets you plan activities manage dinner and lunch times aswell as give the children a overarching plan for the entire week.
The project was a group project, made during our "Communications" class at ITHS.
Our mission was to meet with a fictional Product Owner (PO) and get an assignment and interpret that assignment from a non-technical person.
And this is what we came up with.
My responsibilities where the main logic of the site. I created the library of functions that would drive the application which was basically a large calendar.
export function getWeekArray(startDate) {
const week = [];
const today = dayjs();
for (let i = 0; i < 7; i++) {
const date = startDate.add(i, "day");
week.push({
date: date.format("YYYY-MM-DD"), // Hela datumet 2025-10-15
dayName: date.format("dddd"), // Monday, Tuesday etc...
shortDay: date.format("ddd"),
dayNumber: date.date(), // 1-31
year: date.format("YYYY"),
month: date.format("MMMM"),
isToday: date.isSame(today, "day"),
dayjs: date,
});
}
return week;
}
export function getCurrentWeekStart() {
return dayjs().startOf("isoWeek");
}
I made these helper function as convenient hooks that the rest of the team could use all over the site to drive different logic.
Another major part I contributed to was the handling of events and the logic behind getting the activity cards to stick to the right dates.
We started of by storing the events and login information in localStorage since we where extremely short on time for this project. But later made the decision to just keep them in a context.
I also affected the choice of technologies and made sure git PR rules where followed. This lead to an pleasant developer experience where we each contributed smoothly to the project.
And I'm amazed what we managed to achieve in such a small time frame.