https://github.com/tutorialsandroid/todo-app-android-java
A clean and modern TODO app built with Material Design and SQLite database.
https://github.com/tutorialsandroid/todo-app-android-java
android android-app android-application java sql todo todo-list todoapp
Last synced: 21 days ago
JSON representation
A clean and modern TODO app built with Material Design and SQLite database.
- Host: GitHub
- URL: https://github.com/tutorialsandroid/todo-app-android-java
- Owner: TutorialsAndroid
- License: mit
- Created: 2025-03-05T08:59:56.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-03-05T09:03:15.000Z (10 months ago)
- Last Synced: 2025-03-05T10:20:14.740Z (10 months ago)
- Topics: android, android-app, android-application, java, sql, todo, todo-list, todoapp
- Language: Java
- Homepage: https://github.com/TutorialsAndroid/TODO-App-Android-Java/raw/refs/heads/main/apk/demo.apk
- Size: 4.11 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Material Design TODO App (Android Java)
_A clean and modern TODO app built with Material Design and SQLite database._
## π² Download the App
You can download the latest APK from this link ππ **[Donwload APK](https://github.com/TutorialsAndroid/TODO-App-Android-Java/raw/refs/heads/main/apk/demo.apk)**.
## π Features
- **Add Tasks**: Users can add new tasks with a simple dialog.
- **Edit Tasks**: Easily update tasks with an edit button.
- **Delete Tasks**: Remove tasks with a single click.
- **SQLite Database**: Uses SQLite to store tasks persistently.
- **Material Design UI**: Clean and modern interface following Googleβs Material Design guidelines.
## π± Screenshots
| Add Task | Task List | Edit Task |
|-----------------------------------------|-------------------------------------------|-------------------------------------------|
|  |  |  |
## π₯ Installation
### **1οΈβ£ Clone the Repository**
```sh
git clone https://github.com/TutorialsAndroid/TODO-App-Android-Java.git
```
### **2οΈβ£ Open in Android Studio**
- Open **Android Studio** and select **Open an Existing Project**.
- Navigate to the cloned folder and open the project.
### **3οΈβ£ Build & Run**
- Connect an **Android device** or start an **Emulator**.
- Click **Run βΆοΈ** to install and launch the app.
## βοΈ How It Works
### **1οΈβ£ Adding a Task**
- Click the **Floating Action Button (FAB)**.
- A dialog appears where you enter the task name.
- Click **Add Task** and the task is saved to the database.
### **2οΈβ£ Editing a Task**
- Click the **Edit** button on a task.
- Modify the task name and click **Update**.
### **3οΈβ£ Deleting a Task**
- Click the **Delete** button, and the task is removed from the list and database.
## π Project Structure
```
π app/src/main/java/com/example/todoapp/
βββ π MainActivity.java # Main screen with task list
βββ π TaskAdapter.java # RecyclerView adapter for tasks
βββ π Task.java # Task model class
βββ π DatabaseHelper.java # SQLite database management
βββ π AddTaskDialog.java # Dialog for adding tasks
βββ π EditTaskDialog.java # Dialog for editing tasks
```
## ποΈ SQLite Database Structure
The app uses an **SQLite database** to store tasks persistently.
### **Database: `tasks.db`**
| Column | Type | Description |
|--------|------|-------------|
| `id` | INTEGER PRIMARY KEY AUTOINCREMENT | Unique task ID |
| `title` | TEXT | Task name |
### **SQL Queries Used**
- **Create Table**
```sql
CREATE TABLE tasks (
id INTEGER PRIMARY KEY AUTOINCREMENT,
title TEXT
);
```
- **Insert Task**
```sql
INSERT INTO tasks (title) VALUES ('New Task');
```
- **Retrieve Tasks**
```sql
SELECT * FROM tasks;
```
- **Update Task**
```sql
UPDATE tasks SET title = 'Updated Task' WHERE id = 1;
```
- **Delete Task**
```sql
DELETE FROM tasks WHERE id = 1;
```
## π οΈ Technologies Used
- **Java** (Android Development)
- **SQLite** (Database)
- **RecyclerView** (Task List UI)
- **Material Design Components** (UI Design)
## ποΈ Future Improvements
β
Task Categories π
β
Task Reminders β°
β
Dark Mode π
## π Contributing
Pull requests are welcome! For major changes, please open an issue first to discuss what youβd like to improve.
## π License
This project is **open-source** and available under the [MIT License](LICENSE).
---
π **Happy Coding!** π