Project Status: 🪦 Deceased (Oct 2025 - March 2026)
Cause of Death: Lack of market interest, B2B2C is cooked.
Krib is a cross-platform app that streamlines the student accommodation search for students. It allows users to swipe left and right on properties (Tinder style, ADHD friednly), vote on their favorite properties and create groups with their flatmates to make decisions together. AI enquiry feature is available for users to get in touch with property owners.
git clone https://github.com/your-username/Krib.git
cd Krib
npm install
npx expo start- App Framework: React Native / Expo (SDK 54)
- Navigation: Expo Router
- State Management: Zustand (Auth, Properties, Theme)
- Map & Geolocation:
react-native-maps&concaveman(custom polygon search) - Animations: React Native Reanimated & React Native Gesture Handler (Swiping)
- Icons: Lucide React Native
- gesture-driven UI
- Custom map area selection: spend a lot of time on this one, to make it actually work, gave me hands on experience with spatial data and geometry in a mobile context.
- To never start developing a full on MVP without talking to potential customers first (WAS FUN THO)
├── app/ # screens
│ ├── (tabs)/ # swipe, liked properties, settings
│ ├── login.tsx
│ └── signup.tsx
├── components/ # UI components
│ ├── SwipeCard.tsx # the main swipeable card
│ ├── FiltersModal.tsx # search filters
│ ├── PillSelector.tsx # reusable pill selector
│ ├── ToggleGroup.tsx # reusable yes/no toggle
│ ├── FormInput.tsx # themed input field
│ └── ...
├── store/
│ ├── useAuthStore # auth + house groups
│ ├── usePropertyStore # properties, swipes, votes
│ └── useThemeStore # dark theme + colour tokens
├── constants/
│ ├── config.ts # env vars, map defaults
│ └── mockData.ts # all dummy data lives here
└── assets/
Portfolio project — not for commercial use. If interested, reach out!









