- Tentang Sistem
- Fitur Utama
- Pratinjau Aplikasi
- Teknologi & Keamanan
- Struktur Proyek
- Panduan Instalasi (Getting Started)
- Build Production (APK)
- Panduan Kontribusi
- Lisensi
NexferraFTP adalah aplikasi klien FTP (File Transfer Protocol) dan SFTP (Secure File Transfer Protocol) berbasis Mobile (Android) yang dikembangkan menggunakan Flutter. Aplikasi ini dirancang untuk memberikan pengalaman manajemen file server jarak jauh yang setara dengan desktop client, namun dalam genggaman.
Menciptakan alat manajemen server yang Portable, Aman, dan Efisien bagi web developer, sysadmin, dan pengguna umum yang membutuhkan akses cepat ke file server mereka tanpa harus membuka laptop.
- Connection Broker: Sistem bertindak sebagai perantara aman antara Local Storage (HP Pengguna) dan Remote Server.
- Session Management: Menggunakan connection pooling cerdas untuk menjaga koneksi tetap hidup saat dibutuhkan dan memutusnya saat idle untuk menghemat bandwidth/baterai.
- Atomic Operations: Setiap operasi file (Upload, Download, Rename, Delete) dijalankan secara atomik untuk mencegah korupsi data.
- Turbo Deletion: Mengimplementasikan logika penghapusan cerdas: Rename-to-Trash terlebih dahulu untuk respon UI instan, baru penghapusan fisik di latar belakang.
- Multi-Protocol Support: Mendukung FTP (Port 21) dan SFTP/SSH (Port 22).
- Connection Profiles: Menyimpan daftar server unlimited dengan kredensial tersimpan aman.
- Search & Filter: Pencarian file server real-time.
- CRUD Operations: Upload, Download, Rename, Delete (File & Folder).
- Code Editor: Edit file teks/kode (PHP, HTML, CSS, py, dll) langsung di dalam aplikasi.
- Smart Navigation: Breadcrumb navigation dan Go Back logic yang intuitif.
- Visual Indicators: Ikon berbeda untuk file dan folder.
- App Lock (PIN Protection): Mengunci aplikasi dengan PIN 6-digit. Mendukung lockout otomatis jika salah 3x.
- Secure Storage: Password server tidak disimpan sebagai teks biasa, melainkan dienkripsi dalam Android Keystore.
- Backup & Restore: Fitur Backup data profil server ke file JSON (termasuk password terenkripsi) untuk migrasi antar perangkat.
- Dark/Light Mode: Dukungan tema visual adaptif.
Berikut adalah tampilan antarmuka NexferraFTP:
| Pratinjau Aplikasi | Pratinjau Aplikasi | Pratinjau Aplikasi |
|---|---|---|
![]() |
![]() |
![]() |
| Pratinjau Aplikasi | Pratinjau Aplikasi | Pratinjau Aplikasi |
|---|---|---|
![]() |
![]() |
![]() |
Catatan: Screenshot di atas adalah representasi fitur utama aplikasi.
Aplikasi ini dibangun di atas pondasi teknologi modern yang stabil dan cepat:
| Komponen | Teknologi | Deskripsi |
|---|---|---|
| Framework | Flutter SDK 3.x | Cross-platform UI Toolkit. |
| Bahasa | Dart 3.x | Type-safe language. |
| State Management | Provider | Manajemen state yang efisien dan clean. |
| Database Lokal | ObjectBox | NoSQL Database super cepat untuk menyimpan profil. |
| Encryption | Flutter Secure Storage | Menyimpan kredensial sensitif menggunakan AES encryption / Android KeyStore. |
| Protocols | ftpconnect & dartssh2 |
Implementasi native FTP & SSH2 client. |
- Enkripsi At Rest: Password server disimpan di area terisolasi OS (KeyChain/Keystore).
- App Level Security: Middleware PIN memeriksa otentikasi setiap kali aplikasi dibuka (Resume/Restart).
- Backup Security: File backup JSON berisi data sensitif, namun dilindungi oleh mekanisme restore yang memvalidasi integritas data.
Struktur folder mengikuti pola MVVM (Model-View-ViewModel) yang dimodifikasi untuk skalabilitas:
lib/
βββ data/ # Layer Data (Database & Service)
β βββ connection_model.dart # Model data profil server
β βββ objectbox_service.dart # Interface ke database ObjectBox
β βββ ftp_service.dart # Logika protokol FTP
β βββ sftp_service.dart # Logika protokol SFTP (SSH)
βββ providers/ # Layer State Management (Logic)
β βββ connection_provider.dart # Mengatur CRUD profil server
β βββ explorer_provider.dart # Mengatur navigasi & file manager
β βββ settings_provider.dart # Mengatur PIN, Tema, Backup/Restore
β βββ transfer_manager.dart # Mengatur antrean Upload/Download
βββ screens/ # Layer UI (Tampilan)
β βββ dashboard_screen.dart # Halaman utama
β βββ explorer_screen.dart # File manager
β βββ editor_screen.dart # Code editor
β βββ pin_screen.dart # Layar kunci keamanan
β βββ splash_screen.dart # Layar pembuka
βββ main.dart # Entry point aplikasi
Untuk pengembang yang ingin menjalankan proyek ini secara lokal.
- Flutter SDK (Versi Terbaru)
- Android Studio / VS Code
- Perangkat Android (Mode Developer Aktif) atau Emulator.
- Clone Repository
git clone [https://github.com/Alghifari888/NexferraFTP.git](https://github.com/Alghifari888/NexferraFTP.git)
cd NexferraFTP
- Install Dependencies
flutter pub get
- Generate ObjectBox Code (Wajib jika mengubah Model)
dart run build_runner build
- Jalankan Aplikasi
flutter run
Untuk membuat file APK siap pakai (Release Version):
- Bersihkan Cache Build
flutter clean
flutter pub get
- Build APK
flutter build apk --release
- Lokasi Output
File APK akan tersedia di:
build/app/outputs/flutter-apk/app-release.apk
Kami sangat terbuka untuk kontribusi! Jika Anda ingin menambahkan fitur atau memperbaiki bug:
- Fork repository ini.
- Buat Branch fitur baru (
git checkout -b fitur-keren-anda). - Commit perubahan Anda (
git commit -m 'Menambahkan fitur login biometrik'). - Push ke Branch (
git push origin fitur-keren-anda). - Buat Pull Request baru di GitHub.
Didistribusikan di bawah Lisensi Apache 2.0. Lihat LICENSE untuk informasi lebih lanjut.
Copyright 2026 Alghifari888
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
[http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Dikembangkan dengan β€οΈ oleh Alghifari888
NexferraFTP Β© 2026 All Rights Reserved.






