{"repo":"invoiceninja/admin-portal","free":true,"listed":false,"github":"https://github.com/invoiceninja/admin-portal","clone":"git clone https://github.com/invoiceninja/admin-portal.git","description":"Invoice Ninja: Desktop/mobile admin portal built with Flutter","language":"Dart","stars":1748,"topics":["flutter","ios","android","invoice","redux","linux","macos","windows"],"license":null,"category":"mobile-apps","readme_excerpt":"Invoice Ninja Client application for Invoice Ninja. Desktop Apps - Windows - macOS - Linux - Snap - Linux - Flatpak Mobile Apps - iOS - Android - F-Droid Table of Contents - Setting up the app - Steps to remove non-FOSS code - Application Architecture - Package Structure - Blog Posts - Code generation - Tests - Code signing - Credits - Contributions --- Setting up the app - Initialize the config file cp lib/.env.dart.example lib/.env.dart - Support running the code unsigned on Android cp android/app/build.gradle.dev.kts android/app/build.gradle.kts - Run the app flutter run Note: if you don't have an Invoice Ninja backend setup you can test the app with these credentials: - Email: demo@invoiceninja.com - Password: Password0 - URL: demo.invoiceninja.com Steps to remove non-FOSS code Application Architecture The application was created using the Flutter Redux Starter. The architecture is based off these two projects: - Redux Sample - Brian Egan - inKino - Iiro Krankka File Structure A High-level overview of the project structure: The ui and redux folders contain components that are paired together. Put simply you will find an 'auth' folder in both the ui and redux folders. For additional information on Redux architecture Blog Posts - Intro to Google Flutter - Using Redux to manage state - Handling complex forms - Architectural review - Additional thoughts Code generation - Run flutter packages pub run build runner build --delete-conflicting-outputs to regenerate the model files","default_branch":null,"files":null,"tree":[],"storefront":"/r/invoiceninja","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/invoiceninja/admin-portal/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}