A Flutter-based Point of Sale (POS) system with MySQL database integration for restaurant and retail management.
- Point of Sale Interface: Complete POS system for restaurants and retail
- Database Integration: MySQL database connectivity for data persistence
- User Authentication: Login system with role-based access
- Inventory Management: Product and category management
- Sales Tracking: Order processing and sales analytics
- PDF Generation: Receipt and report generation
- Responsive Design: Optimized for different screen sizes
- Charts & Analytics: Sales data visualization with FL Chart
lib/
├── constants/ # Application constants
│ ├── Appconstants.dart
│ ├── colors_n_styles_constants.dart
│ ├── image_paths_constants.dart
│ ├── route_names_constants.dart
│ ├── sizes_constants.dart
│ ├── text_constants.dart
│ └── text_styles_constants.dart
├── Controllers/ # State management controllers
│ ├── AuthController.dart
│ └── CartController.dart
├── Datamodels/ # Data model classes
│ ├── ActualOrderModel.dart
│ ├── category.dart
│ ├── customer.dart
│ ├── employee.dart
│ ├── inventorylog.dart
│ ├── product.dart
│ ├── roles.dart
│ ├── sale.dart
│ ├── saleitem.dart
│ └── userrole.dart
├── Sales/ # POS and sales interface
│ ├── CustomText.dart
│ ├── login_page.dart
│ ├── pos.dart
│ ├── restaurant.dart
│ ├── restaurantfinal.dart
│ ├── RestrantPos.dart
│ └── unfoldableseachbar.dart
├── main.dart # Application entry point
├── mysql.dart # Database connection and queries
└── test.dart # Testing utilities
- flutter: UI framework
- mysql1: MySQL database connectivity
- get: State management and navigation
- http: HTTP requests
- pdf: PDF document generation
- path_provider: File system access
- open_file: File opening functionality
- printing: PDF printing capabilities
- fl_chart: Charts and data visualization
- intl: Internationalization support
- responsive_framework: Responsive UI design
- window_manager: Window management for desktop
- Flutter SDK (>=3.4.4)
- MySQL database server
- Dart SDK
-
Clone the repository
-
Install dependencies:
flutter pub get
-
Configure MySQL database connection in
lib/mysql.dart -
Run the application:
flutter run
Ensure your MySQL database is properly configured and accessible. Update the connection parameters in lib/mysql.dart to match your database configuration.
assets/images/logo.png- Application logo
This project uses:
- GetX for state management and navigation
- MySQL1 for database operations
- Material Design components
- Responsive Framework for adaptive layouts
Current version: 0.1.0