Olign is a mobile application designed for university students that unifies real-time communication and task management into a single platform. It enables students to collaborate on group projects, assign and track tasks directly within conversations, and manage academic workflows more effectively.
This project was developed as a Final Year Project for the Bachelor of Information Technology (Hons) in Software Engineering at Universiti Kuala Lumpur (UniKL) - Malaysian Institute of Information Technology (MIIT).
- Olign
- 🎥 Introduction Video
- ✨ Core Features
- 🏗 Technical Overview
- 👀 UI Walkthrough
⚠️ Setup & Development Notice- 🧠 Architectural Note
- 🎓 Academic Context
- 🔮 Future Enhancements
- 👨💻 Author
- 📄 License
Watch a short introduction of Olign’s features on YouTube:
-
🔐 Authentication & Security
- Email-based authentication with verification
- Secure session handling via Supabase
-
👤 User Profiles
- Custom username, display name, and avatar
-
💬 Real-time Messaging
- Direct and group chats
- Text, images, attachments, and audio messages
- Message replies, reactions, and threads
- Powered by Stream Chat
-
✅ Task Collaboration
- Create tasks directly inside chats
- Individual and group tasks
- Milestones, due dates, assignees, and status tracking
-
👥 Friends & Groups
- Friend requests and management
- Group creation with admin controls
-
🔔 Notifications
- Messages, task updates, deadlines, and friend requests
-
📱 Mobile-first UI
- Responsive cross-platform mobile design using Tamagui
For a visual, no-setup overview of Olign’s user interface and interactions, see:
Frontend
- React Native with Typescript
- Expo (with Expo Router)
- Tamagui (cross-platform UI system)
- Zustand (global state management)
- Zod (runtime schema validation)
- React Hook Form (forms & validation)
- Reanimated / Moti (animations & gestures)
Backend & Services
- Supabase
- Authentication & email verification
- PostgreSQL database
- Storage for media & attachments
- RPC functions (business logic)
- Edge Functions (server-side processing & secrets)
- Stream Chat (real-time messaging & audio messages)
- Twilio SendGrid (transactional email)
Olign is not a plug-and-play application.
The project follows a backend-driven architecture, where most business logic is implemented inside Supabase rather than the client application. This includes:
- Custom SQL schemas and relations
- Database RPC (Remote Procedure Call) functions
- Supabase Edge Functions
- Server-side secrets and environment variables
Because of this tight coupling, the application cannot be run locally with a simple install command without fully recreating the backend infrastructure.
- Mobile application source code
- UI implementation and navigation
- Client-side Supabase integration
- Stream Chat client logic
- Supabase project configuration
- Database schemas and migrations
- RPC function definitions
- Edge Function implementations
- Production secrets and keys
Only the Supabase public (anon) key is referenced by the client. All other sensitive keys and logic are securely stored and executed within Supabase.
Olign intentionally places validation, permissions, and core business logic on the backend using Supabase RPCs and Edge Functions. This approach:
- Reduces client-side complexity
- Improves security and data integrity
- Centralizes business rules
- Scales better for collaborative features
- Methodology: Rapid Application Development (RAD)
- Focus: Student collaboration, productivity, and communication
- Evaluation: User Acceptance Testing (UAT) and usability analysis
- AI-assisted task scheduling
- Push notifications
- Calendar integration
- Improved offline support
Muhammad Mahran bin Mazlan
Bachelor of Information Technology (Hons) in Software Engineering
Universiti Kuala Lumpur - Malaysian Institute of Information Technology (UniKL MIIT)
This project is developed for academic purposes.
© 2024 - Present Muhammad Mahran bin Mazlan. All rights reserved.