Taskly is a comprehensive mobile task management application built with React Native. It empowers users to efficiently organize their daily activities through a rich feature set, including biometric authentication, task prioritization, and profile customization. The application's UI/UX was meticulously crafted based on the design specifications from this Figma project.
This project is now fully functional, with its backend API hosted on AWS EC2 and user avatars stored and served via AWS S3.
- ✨ Key Features
- 🛠️ Tech Stack
- 🚀 Getting Started
- 📂 Project Structure
- 🏆 Project Status
- 🧑💻 The Team
- 📄 License
- 🔐 Secure Authentication: Full user registration and login system with a
Remember meoption powered by biometric authentication and secure token handling. - 👤 Profile Customization: Users can select a custom avatar during registration and edit their profile information, including name, phone, and theme preferences.
- 🗂️ Advanced Task Management: Create, edit, and delete tasks with detailed attributes like title, description, due date, priority level, and up to five tags.
- ✅ Subtask Checklists: Break down complex tasks into smaller, manageable subtasks for detailed progress tracking.
- 🔍 Powerful Filtering & Sorting: Easily find tasks by filtering by priority (high/low) or sorting by due date, tags, or priority.
- ☁️ Cloud-Powered: Backend API is deployed on AWS EC2 for reliability, and user avatars are hosted on AWS S3 for efficient delivery.
- React Native
- TypeScript
- React Navigation
- Axios
- Async Storage
- React Native Biometrics
- React Native Keychain
- Date-fns & Date-fns-tz
- JWT Decode
- Runtime: Node.js with Express.js (Assumed for API)
- Compute: AWS EC2
- Storage: AWS S3 for media assets
- Monitoring: AppCenter (Analytics & Crashes)
Follow these instructions to get a copy of the project up and running on your local machine for development and testing purposes.
- Node.js (v18 or later recommended)
- NPM or Yarn
- Android Studio or Xcode for running the mobile application
- Git
-
Clone the repository:
git clone https://github.com/AmandaMeneghini/RN-MAR25-taskly.git
cd RN-MAR25-taskly -
Install dependencies:
npm install
-
Start the Metro server:
npm start
-
Run on Android platform (in a new terminal):
npm run android
The project has evolved to a more robust and scalable architecture. The main directories under src/ are organized as follows:
📁 src/
├── 📁 assets/ # Static assets (images, fonts, icons)
├── 📁 components/ # Reusable global React components (Button, Input, Card)
├── 📁 config/ # Configuration files (e.g., API base URL, environment settings)
├── 📁 context/ # React Context API for global state management
├── 📁 hooks/ # Custom React hooks (e.g., useApi, useAuth)
├── 📁 interfaces/ # TypeScript type and interface definitions
├── 📁 navigation/ # Navigation logic and stack definitions (React Navigation)
├── 📁 screens/ # All application screens, organized by feature
├── 📁 services/ # API communication layer (Axios instances, endpoint functions)
├── 📁 theme/ # Global theme definitions (colors, fonts, spacing)
└── 📁 utils/ # Utility functions for specific domains
├── 📄 authUtils.ts
├── 📄 imageUtils.ts
├── 📄 textFormatters.ts
└── 📄 validateDate.ts
This project is functionally complete. All core features listed above have been implemented and are working as expected.
- Authentication (Login, Register, Biometrics)
- Task Management (CRUD)
- Subtask Management
- Profile Editing
- Task Filtering and Sorting
- Backend integration with AWS EC2 and S3
The only planned feature that has not been implemented is offline-first support.
This project was brought to life by a dedicated team of developers and planners.
| Role | Name |
|---|---|
| 👑 Presenter (P.O) | Amanda Duarte Meneghini do Carmo |
| 🧠 Scrum Master | Camila Cardozo Rocha |
| 💻 Developer | Diogo da Silva Souza |
| 💻 Developer | Jailson Rodrigues de Neiva |
| 🔍 QA Engineer | João Victor Santos da Costa |
Gabriel Santos
LinkedIn
