Portakal is a powerful CLI (Command Line Interface) automation tool that allows you to start your Flutter projects beyond standard defaults, with a "freshly squeezed" and ready-to-use structure.
Leave the tedious tasks to Portakal and enjoy coding! 🧡
Portakal is an advanced project generator built on top of the standard flutter create command. It doesn't just create an empty project; it delivers a project that complies with modern development standards, has necessary packages pre-installed, native settings configured, and the Portakal Framework fully integrated.
In short: "Production-ready infrastructure in a single command."
Portakal handles the settings that would normally take hours in a standard Flutter project in just seconds:
- ⚡ Automatic Package Management: Essential packages like
flutter_dotenv,bitsdojo_window,hive, andportakalare added automatically. - 🪟 Ready-to-Use Native Settings:
- Windows: C++ files (
main.cppandCMakeLists.txt) are pre-configured for custom window frames and sizing. - Android:
build.gradlesettings, version codes, and signing configurations are ready.
- Windows: C++ files (
- 🍊 Portakal Core Integration:
PManager(State Management),PortakalTheme, and custom UI kits (Button, TextField, etc.) come right at the heart of the project. - 🚀 Ready Architecture: You start with a clean folder hierarchy via
custom_liband a working example application (BMI Calculator).
- Serial Developers: Those who are tired of repeating the same setup configurations for every new project.
- Freelancers: Those who want to quickly present a working, stylish, and robust prototype to clients.
- Desktop (Windows) Developers: Those who don't want to deal with changing Flutter's default Windows frame structure.
- Clean Code Enthusiasts: Those who want to start a project with a specific discipline and rule set (
rules.md,tasks.md).
Follow these steps to use Portakal CLI from anywhere in your terminal via the portakal create <project_name> command:
Open a terminal in the directory where generator.dart is located and run the following command:
dart compile exe generator.dart -o portakal.exe
Move the generated portakal.exe file, the custom_main.dart file, and the custom_lib folder to a permanent directory (e.g., C:\PortakalTools\).
⚠️ Important: Forportakal.exeto work correctly, it must be in the same folder as the template files (custom_libandcustom_main.dart).
- Search for "Edit the system environment variables" in the Start menu and open it.
- Click the Environment Variables button.
- Double-click the Path option under System Variables (or User Variables).
- Click the New button and paste the path of the folder you created in Step 2 (e.g.,
C:\PortakalTools\). - Click OK on all windows to exit.
Open a new terminal and type:
portakal create my_awesome_app
Congratulations! 🍊 You can now squeeze Portakal juice from anywhere.
This CLI tool builds your projects upon the Portakal Flutter package.
You can check the official package page for details on the library, widget usage, state management with PManager, and theme features:
📦 pub.dev: portakal
Develop by JeaFriday! 🧡
Portakal, Flutter projelerinizi standartların ötesinde, "taze sıkılmış" ve kullanıma hazır bir yapıyla başlatmanızı sağlayan güçlü bir CLI (Komut Satırı Arayüzü) otomasyon aracıdır.
Angarya işleri Portakal'a bırakın, siz kodlamanın tadını çıkarın! 🧡
Portakal, standart flutter create komutunun üzerine inşa edilmiş gelişmiş bir proje oluşturucusudur. Sadece boş bir proje oluşturmakla kalmaz; projenizi modern geliştirme standartlarına uygun, gerekli paketleri yüklenmiş, native (yerel) ayarları yapılmış ve Portakal Framework entegre edilmiş şekilde teslim eder.
Kısaca: "Tek komutla, prodüksiyona hazır altyapı."
Sıradan bir Flutter projesi oluşturduğunuzda saatlerce yapmanız gereken ayarları Portakal saniyeler içinde halleder:
- ⚡ Otomatik Paket Yönetimi:
flutter_dotenv,bitsdojo_window,hiveveportakalgibi temel paketler otomatik eklenir. - 🪟 Hazır Native Ayarlar:
- Windows: C++ (
main.cppveCMakeLists.txt) dosyaları, özel pencere çerçeveleri ve boyutlandırma için önceden yapılandırılmıştır. - Android:
build.gradleayarları, sürüm kodları ve imzalama (signing configs) yapılandırmaları hazırdır.
- Windows: C++ (
- 🍊 Portakal Core Entegrasyonu:
PManager(State Management),PortakalThemeve özel UI kitleri (Button, TextField vb.) projenin kalbinde gelir. - 🚀 Hazır Mimari:
custom_libyapısı ile düzenli bir klasör hiyerarşisi ve çalışan bir örnek uygulama (BMI Hesaplayıcı) ile başlarsınız.
- Seri Üretim Yapan Geliştiriciler: Sürekli yeni proje açıp aynı ayarları tekrar tekrar yapmaktan sıkılanlar.
- Freelancerlar: Müşterisine hızlıca çalışan, şık ve altyapısı sağlam bir prototip sunmak isteyenler.
- Masaüstü (Windows) Uygulaması Geliştirenler: Flutter'ın varsayılan Windows pencere yapısını değiştirmekle uğraşmak istemeyenler.
- Temiz Kod (Clean Code) Tutkunları: Projeye belirli bir disiplin ve kural setiyle (
rules.md,tasks.md) başlamak isteyenler.
Portakal CLI'ı terminalinizde her yerden portakal create <proje_adi> şeklinde kullanabilmek için aşağıdaki adımları izleyin:
generator.dart dosyasının olduğu dizinde terminali açın ve şu komutu çalıştırın:
dart compile exe generator.dart -o portakal.exe
Oluşan portakal.exe dosyasını, custom_main.dart dosyasını ve custom_lib klasörünü kalıcı olarak duracağı bir klasöre taşıyın (Örn: C:\PortakalTools\).
⚠️ Önemli:portakal.exe'nin düzgün çalışabilmesi için şablon dosyalarıyla (custom_libvecustom_main.dart) aynı klasörde olması şarttır.
- Başlat menüsüne "Sistem Ortam Değişkenlerini Düzenle" yazın ve açın.
- Ortam Değişkenleri butonuna tıklayın.
- Sistem Değişkenleri (veya Kullanıcı Değişkenleri) altındaki Path seçeneğine çift tıklayın.
- Yeni butonuna basın ve Adım 2'de oluşturduğunuz klasörün yolunu (Örn:
C:\PortakalTools\) yapıştırın. - Tüm pencerelere Tamam diyerek çıkın.
Yeni bir terminal açın ve şunu yazın:
portakal create my_awesome_app
Tebrikler! 🍊 Artık her yerden Portakal suyu sıkabilirsiniz.
Bu CLI aracı, projelerinizi Portakal Flutter paketi üzerine kurar.
Kütüphanenin detayları, widget kullanımı, PManager ile state yönetimi ve tema özellikleri için resmi paket sayfasını inceleyebilirsiniz:
📦 pub.dev: portakal
Develop by JeaFriday! 🧡#