Skip to content

Flutter desktop app for juice shop management, invoicing, and local storage, using Hive, PDF generation, and Cubit/Bloc architecture.

Notifications You must be signed in to change notification settings

MAHMOUDELSAYED69/Akadomen

Repository files navigation

Akadomen

Akadomen is a robust Flutter desktop application designed for efficiently managing a juice shop. Leveraging Hive for local database management and Cubit for state management, it encompasses essential functionalities such as account creation, secure login, and logout processes. Additionally, it facilitates comprehensive juice management, enabling users to fetch, add, remove, and update juice entries seamlessly. The application also includes a feature for generating detailed invoices for each transaction, which are then securely stored in the local database. The intuitive, user-friendly interface ensures a smooth and efficient experience for shop owners and customers alike.

Features

  • Create Account: Register new user accounts quickly and easily.
  • Login: Secure user authentication with login functionality.
  • Logout: Safely log out from the user account.
  • Generate Invoice: Create detailed invoices for each transaction.
  • Store Invoices Locally: Save invoices in an accessible archive.
  • View All Invoices: Display all stored invoices in the archive.
  • Add New Juice: Introduce new juice options to the inventory.
  • Remove Juice: Delete outdated or unwanted juice entries.
  • Update Juice Price: Modify the pricing of existing juice items.
  • User-Friendly UI: Intuitive interface for easy navigation and use.

Screenshots

Screenshot 1 Screenshot 2 Screenshot 3 Screenshot 4 Screenshot 5 Screenshot 6 Screenshot 7 Screenshot 8 Screenshot 9 Screenshot 10

Installation

To get started with Akadomen, follow these steps:

Step 1: Clone the Repository First, you'll need to clone the repository from GitHub. Open your terminal and run the following command:

https://github.com/MAHMOUDELSAYED69/Akadomen.git

Replace with the actual URL of your repository if it was changed.

Step 2: Install Dependencies After navigating to the project directory, you need to install all the necessary dependencies. Run:

flutter pub get

This command fetches all the dependencies listed in the pubspec.yaml file.

Step 3: Configure the App Ensure all necessary configurations are done. This includes adding your assets and setting up environment variables if needed. Verify that your pubspec.yaml file includes all required assets and fonts.

Step 4: Run the Application Finally, run the application on your desired device using the following command: `

flutter run

This command compiles your Flutter app and deploys it to the connected device or simulator.

Additional Tips Updating Dependencies: If there are any updates to the dependencies, you can update them using:

flutter pub upgrade --major-versions

Flutter Doctor: Run flutter doctor to ensure that your development environment is set up correctly.

flutter doctor

This command checks your environment and displays a report of the status of your Flutter installation, dependencies, and connected devices.

By following these steps, you'll have the Akadomen desktop app and running on your device. If you encounter any issues during installation, please refer to the Flutter documentation.

Dependencies

The app uses the following dependencies:

  • audioplayers: Play audio files.
  • bloc: State management solution.
  • file_picker: Pick files from the device.
  • flutter: Flutter SDK.
  • flutter_bloc: Integration of bloc state management.
  • hive:: Lightweight NoSQL database for Flutter apps.
  • hive_flutter: Flutter integration for Hive database operations.
  • flutter_screenutil: Screen size and device pixel ratio adaptation.
  • intl: Internationalization and localization.
  • meta: Support for annotations.
  • path: Path manipulation utilities.
  • path_provider: Access to commonly used locations on the filesystem.
  • pdf: PDF creation and manipulation.
  • printing: Print documents and share PDFs.
  • shared_preferences: Persistent storage for simple data.
  • window_manager: Window management for desktop applications.

dev_dependencies:

  • hive_generator: Generates type adapters for Hive database.
  • build_runner: Automates code generation tasks in Flutter.
  • flutter_launcher_icons: Creates app launcher icons for Flutter apps.
  • flutter_lints: Provides recommended linter rules for Flutter projects.

Usage

  1. Create Account: Start by registering a new user account.
  2. Login: Use your credentials to log into the app.
  3. Add Juice: Add new juice options to the inventory.
  4. Update Juice: Modify the details or prices of existing juices.
  5. Remove Juice: Remove any outdated or unwanted juices.
  6. Generate Invoice: Create invoices after every transaction.
  7. View Invoices: Access the archive to view all stored invoices.
  8. Logout: Safely log out when done.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contact

For any questions or feedback, please reach out via email: [email protected]

About

Flutter desktop app for juice shop management, invoicing, and local storage, using Hive, PDF generation, and Cubit/Bloc architecture.

Topics

Resources

Stars

Watchers

Forks