An event planning and management application built with Flutter, designed to help users organize and coordinate various types of events including weddings, school annual days, and society gatherings.
This is an MVP and still under active development. Not intended for production use.
- Multi-Event Support: Create and manage different types of events (Weddings, School Annual Days, Society Events)
- Event Details: Comprehensive event information including venue, date, time, and description
- Event Timeline: Visual timeline view for better event planning
- Act Scheduling: Plan and schedule individual acts within events
- Duration Management: Precise timing control for each act
- Sequence Planning: Organize acts in the desired order
- Approval Workflow: Track approval status for acts
- Participant Database: Store and manage contact information
- Contact Import: Import contacts from device
- Role Assignment: Assign roles to participants
- Resource Tracking: Manage assets associated with acts and events
- Asset Types: Categorize different types of resources
- File Management: Organize and track event-related files
- Cross-Platform: Works on Android, iOS, Web, and Desktop
- Modern UI: Material Design 3 with custom Roboto font family
- Responsive Design: Adapts to different screen sizes
- Offline Support: Local data storage with Hive database
-
Clone the repository
git clone https://github.com/Ankk98/act_planner_app.git cd act_planner_app -
Install dependencies
flutter pub get
-
Generate Hive adapters (required for local database)
flutter packages pub run build_runner build
-
Run the application
flutter run
flutter build apk --releaseflutter build ios --releaseflutter build web --releaseflutter build windows --release # Windows
flutter build macos --release # macOS
flutter build linux --release # Linuxlib/
โโโ adapters/ # Hive database adapters
โโโ models/ # Data models (Event, Act, Contact, Asset)
โโโ providers/ # State management with Provider
โโโ screens/ # UI screens and pages
โโโ services/ # Business logic and API services
โโโ widgets/ # Reusable UI components
โโโ main.dart # Application entry point
- Models: Data structures for events, acts, contacts, and assets
- Providers: State management using Provider pattern
- Services: API integration, local storage, and business logic
- Screens: Main application views and navigation
- Widgets: Reusable UI components
- Frontend: Flutter with Material Design 3
- State Management: Provider pattern
- Local Database: Hive (NoSQL database)
- HTTP Client: http package for API communication
- Date/Time: intl package for internationalization
- File Management: path_provider and path packages
- UI Components: carousel_slider, flutter_contacts
- Permissions: permission_handler for device access
[Screenshots will be added here]
The app uses several configuration files:
pubspec.yaml: Dependencies and project metadataanalysis_options.yaml: Dart analysis rulesdevtools_options.yaml: Development tools configuration
Hive database is automatically initialized with the following boxes:
events: Event data storageacts: Act/performance data storagecontacts: Contact information storageassets: Asset/resource data storage
Run tests using:
flutter testFor widget tests:
flutter test test/widget_test.dartflutter: Flutter SDKhive: Local NoSQL databaseprovider: State managementintl: Internationalizationhttp: HTTP client for API calls
carousel_slider: Image carousel functionalityflutter_contacts: Contact managementpermission_handler: Device permissions
hive_generator: Code generation for Hivebuild_runner: Build system for code generationflutter_lints: Code quality rules
We welcome contributions! Please follow these steps:
- Fork the repository
- Create a feature branch
git checkout -b feature/amazing-feature
- Make your changes
- Run tests
flutter test - Commit your changes
git commit -m 'Add amazing feature' - Push to the branch
git push origin feature/amazing-feature
- Open a Pull Request
- Follow Flutter coding standards
- Add tests for new features
- Update documentation as needed
- Ensure all tests pass before submitting
Found a bug? Please report it:
- Check existing issues to avoid duplicates
- Create a new issue with:
- Clear description of the problem
- Steps to reproduce
- Expected vs actual behavior
- Device/OS information
- Flutter version
This project is licensed under the MIT License - see the LICENSE file for details.
- Flutter team for the amazing framework
- Hive team for the local database solution
- Provider package maintainers
- All contributors and supporters
- Documentation: Flutter Docs
- Issues: GitHub Issues
- Discussions: GitHub Discussions
Checkout issues on Github.
Made with โค๏ธ using Flutter
If you find this project helpful, please consider giving it a โญ on GitHub!