![Logo](https://private-user-images.githubusercontent.com/73363563/373783696-0968b487-595f-4b82-8319-c0530d194cbd.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkwNDkwNDksIm5iZiI6MTczOTA0ODc0OSwicGF0aCI6Ii83MzM2MzU2My8zNzM3ODM2OTYtMDk2OGI0ODctNTk1Zi00YjgyLTgzMTktYzA1MzBkMTk0Y2JkLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMDglMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjA4VDIxMDU0OVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWJkOTU2ZmFjNjY4YjI3Y2Q0YTY1YTdlN2VhZmU2ZDI1MmEwZjg3ZGQ2ZjAwZjVhZDk1ZTFhMWFiZTI0MmM2YmUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.dUob8dqpL7K-EZ7waOZ8hPSfg36n0F7A1Rbu65b6zdQ)
A mobile app where you can track habits together with friends
Waitlist Signup: habitstogether.app
Table of Contents
- Habits Tracking: Track customizable habits with the click of a button.
- Social Features: Add friends, participate in habits together, and keep each other on track.
- Notifications: Get reminders to complete your habits and nudge your friends to complete theirs.
Noteworthy Libraries Used
- pnpm
- iOS simulator or Android emulator
- Clone the repo
- Install packages
pnpm install
- Prebuild
pnpm prebuild
- Run the app
Then instructions will appear for how to open your simulator/emulator. Alternatively, you can use
pnpm start
pnpm ios
orpnpm android
directly. (You might need to usepnpm ios
orpnpm android
after installing packages for the first time.)
- If some nativewind styles are just not applying sometimes, clear the cache using
pnpm start -c
.
// habits collection
{
[habitId: HabitIdT]: {
title: string;
icon: string;
description: string | undefined;
colorName: string;
settings: {
allowMultipleCompletions: boolean;
};
createdAt: Date;
participants: { // map, not subcollection
[userId: UserIdT]: {
displayName: string;
username: string;
lastActivity: Date;
isOwner: boolean | undefined;
};
};
// subcollection
participantCompletions: {
[userId: UserIdT]: {
entries: {
[entryId: EntryIdT]: {
numberOfCompletions: number;
note: string | undefined;
image: string | undefined;
};
};
};
};
};
}
// users collection
{
[userId: UserIdT]: {
username: string;
displayName: string;
createdAt: Date;
};
}
// relationships collection
{
[userId: UserIdT]: {
[otherUserId: UserIdT]: {
{
status: "friends" | "pending" | "blocked";
friendsSince: Date | undefined;
};
};
};
}
// notifications collection
{
[notificationId: NotificationIdT]: {
type: "habitInvite" | "nudge" | "friendRequest";
senderId: UserIdT;
receiverId: UserIdT;
habitId: HabitIdT | undefined;
sentAt: Date;
};
}
We are open to contributions. You can fork the repository then make a pull request. But it would be best to reach out first!
Distributed under the MIT License. See LICENSE.txt
for more information.
For any inquiries, contact [email protected].
- Used React Native Template Obytes as a starter
- Part of Buildspace s5