Berikut ini adalah contoh template proyek aplikasi sederhana yang cocok untuk pemula. Proyek ini menggunakan Flutter, salah satu framework paling populer untuk membuat aplikasi Android & iOS sekaligus (cross-platform). Kamu bisa juga modifikasi ini untuk ide aplikasi lainnya.
📱 Template Proyek Aplikasi Sederhana: To-Do List App
🎯 Tujuan Proyek:
Membuat aplikasi daftar tugas sederhana (to-do list) yang memungkinkan pengguna:
-
Menambahkan tugas
-
Menandai tugas selesai
-
Menghapus tugas
🧱 Struktur Folder Proyek (Flutter)
todo_app/
│
├── lib/
│ ├── main.dart # File utama
│ └── models/
│ └── todo.dart # Model data To-Do
│
├── pubspec.yaml # File konfigurasi dependency
└── android/, ios/, etc. # Otomatis dari Flutter
📝 1. Model Data: todo.dart
class Todo {
String title;
bool isDone;
Todo({
required this.title,
this.isDone = false,
});
void toggleDone() {
isDone = !isDone;
}
}
🧩 2. File Utama: main.dart
import 'package:flutter/material.dart';
import 'models/todo.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'To-Do List Sederhana',
home: TodoPage(),
);
}
}
class TodoPage extends StatefulWidget {
@override
_TodoPageState createState() => _TodoPageState();
}
class _TodoPageState extends State<TodoPage> {
final List<Todo> _todos = [];
final TextEditingController _controller = TextEditingController();
void _addTodo() {
if (_controller.text.isNotEmpty) {
setState(() {
_todos.add(Todo(title: _controller.text));
_controller.clear();
});
}
}
void _toggleDone(int index) {
setState(() {
_todos[index].toggleDone();
});
}
void _deleteTodo(int index) {
setState(() {
_todos.removeAt(index);
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text('To-Do List')),
body: Column(
children: [
Padding(
padding: const EdgeInsets.all(8.0),
child: Row(
children: [
Expanded(
child: TextField(
controller: _controller,
decoration: InputDecoration(labelText: 'Tugas baru'),
),
),
IconButton(
icon: Icon(Icons.add),
onPressed: _addTodo,
),
],
),
),
Expanded(
child: ListView.builder(
itemCount: _todos.length,
itemBuilder: (context, index) {
return ListTile(
title: Text(
_todos[index].title,
style: TextStyle(
decoration: _todos[index].isDone
? TextDecoration.lineThrough
: null,
),
),
leading: Checkbox(
value: _todos[index].isDone,
onChanged: (_) => _toggleDone(index),
),
trailing: IconButton(
icon: Icon(Icons.delete),
onPressed: () => _deleteTodo(index),
),
);
},
),
),
],
),
);
}
}
📦 3. Tambahkan Dependency (pubspec.yaml)
Tidak butuh banyak package untuk aplikasi sederhana ini. Tapi kamu bisa tambahkan jika ingin:
dependencies:
flutter:
sdk: flutter
▶️ Cara Menjalankan
-
Install Flutter SDK: flutter.dev/docs/get-started
-
Buka terminal dan jalankan:
flutter create todo_app
cd todo_app
-
Ganti
main.dartdan tambahkantodo.dartsesuai di atas. -
Jalankan aplikasi:
flutter run
✅ Fitur Yang Bisa Ditambahkan:
-
Simpan data ke lokal (menggunakan
shared_preferences) -
Tambahkan tanggal deadline
-
Integrasi Firebase (jika mau cloud sync)
-
Ubah tema ke gelap/terang
🎯 Kesimpulan
Template ini adalah titik awal yang bagus buat kamu belajar membuat aplikasi sendiri. Cukup ringan, mudah dipahami, dan bisa dikembangkan ke fitur-fitur yang lebih kompleks.

0 Komentar