This is my first mobile application using React Native, designed to help users manage their daily tasks efficiently. The application provides a user-friendly UI to add, delete, edit tasks, and change task statuses to complete or incomplete. It also features a secure authentication system using JWT tokens and Google OAuth for user login.
-
User-Friendly Interface: The application offers an intuitive and easy-to-use interface, making task management a breeze.
-
Task Management: Users can add new tasks, delete existing tasks, edit task details, and mark tasks as complete or incomplete.
-
Authentication System: The application ensures secure user authentication using JWT tokens and Google OAuth. This adds an extra layer of protection to user accounts.
-
React Native: The application is built using the React Native framework, allowing for cross-platform compatibility.
-
Expo: Expo is used to enhance the React Native development experience by providing a set of tools and services for building React Native apps more efficiently.
-
ContextAPI: Context is used for state management, ensuring a centralized and predictable state for the application.
-
Node.js: The backend server is built using Node.js to handle authentication, task management, and database interactions.
-
Express.js: Express is used as the web application framework for the Node.js server.
-
MySQL: MySQL is employed as the database to store user information and task data.
-
Prisma: Prisma is used as an ORM (Object-Relational Mapping) tool to simplify database interactions and improve the efficiency of database queries.
-
JWT (JSON Web Tokens): JWT tokens are utilized for secure user authentication.
-
Google OAuth: Google OAuth is implemented for user login, providing a secure and convenient authentication method.
-
Clone the repository:
git clone https://github.com/your-username/todo-list-mobile-app.git
-
Navigate to the project directory:
cd todo-list-mobile-app
-
Install expo:
npm install -g expo-cli
-
Install dependencies:
npm install
-
Set up environment variables.
-
Start the application:
npm start
-
Open the application in your preferred mobile emulator or device using expo Go.
-
Register a new account or log in using your Google account.
-
Start adding, editing, and managing your tasks using the user-friendly interface.
-
Log out when done to secure your account.
This project is licensed under the MIT License - see the LICENSE file for details.