A minimalist To-Do List application built with Kotlin, Jetpack Compose, and Room Database. This app allows users to add, display, and delete tasks, while ensuring persistent data storage.
- 🌟 Add Tasks: Quickly add new tasks to your list.
- ✅ Delete Tasks: Swipe or tap a button to remove tasks.
- 💾 Persistent Storage: All tasks are saved using Room Database, so you don’t lose them after closing the app.
- 🎨 Material Design: A clean and user-friendly interface with Material3 components.
- ⚡ Reactive UI: Automatically updates when tasks are added or removed.
- Kotlin: Modern, concise, and expressive programming language.
- Jetpack Compose: A declarative UI toolkit for building responsive and dynamic layouts.
- Room Database: Local storage for saving tasks persistently.
- Material3: For a clean and consistent UI based on Google's Material Design.
- Clone the repository:
git clone https://github.com/ClichyMercury/kotlin_todo_app
- Open the project in Android Studio:
- Use the latest version of Android Studio Flamingo or higher.
- Build the project:
- Navigate to
Build > Clean Project
and thenBuild > Rebuild Project
.
- Navigate to
- Run the app:
- Select a device/emulator and click the Run button.
- Open the app on your device.
- Add a task using the input field and "Add" button.
- View your tasks in the list.
- Delete tasks by tapping the "Delete" button next to them.
- Tasks are automatically saved and will reappear after restarting the app.
app/
└── src/
└── main/
└── java/
└── com.example.my_todo_app_with_kotlin/
├── data/ # Room database classes
│ ├── Task.kt
│ ├── TaskDao.kt
│ └── TaskDatabase.kt
├── ui.theme/ # Material theme customizations
└── MainActivity.kt # Entry point of the app
- Add task editing functionality.
- Implement categories for better task organization.
- Integrate animations for a smoother user experience.
- Add dark mode support.
- Enable export/import of tasks.
Contributions are welcome! Follow these steps to contribute:
- Fork the repository.
- Create a new branch:
git checkout -b feature/your-feature-name
- Commit your changes:
git commit -m "Add your message"
- Push the branch:
git push origin feature/your-feature-name
- Open a pull request.
This project is licensed under the MIT License - see the LICENSE file for details.
- Author: Gael SASSAN
- Email: [email protected]
- GitHub: Gael SASSAN