A modern, animated Flutter application that allows users to select lottery numbers either manually or through an auto-pick feature. The app provides a smooth, intuitive interface with beautiful animations and a responsive design.
-
Manual Number Selection
- Interactive grid of numbers (1-50)
- Select exactly 6 numbers
- Visual feedback for selected numbers
- Clear selection option
-
Auto-Pick Feature
- Generates 6 unique random numbers
- Beautiful animation display
- Smooth transition to grid view
- Sorted number display
-
Modern UI/UX
- Material Design 3
- Responsive layout
- Smooth animations
- Intuitive interface
- Proper error handling
- State management
https://github.com/WolfOf420Street/Lottery/blob/master/docs/media/videos/demo-video.mp4
Click to watch the demo video showing the Lottery Number Picker in action
- Flutter SDK (version 3.0.0 or higher)
- Dart SDK (version 2.17.0 or higher)
- Android Studio / VS Code with Flutter extensions
- Git
-
Clone the repository:
git clone https://github.com/Wolfof420Street/Lottery.git cd Lottery -
Install dependencies:
flutter pub get
-
Run the app:
flutter run
-
IDE Setup
- Install Android Studio or VS Code
- Install the Flutter and Dart plugins
- Configure your IDE for Flutter development
-
Device Setup
- For Android: Enable Developer Options and USB Debugging
- For iOS: Install Xcode and set up iOS simulator
- For Web: Enable web support in Flutter
-
Project Structure
lib/ βββ main.dart # Entry point βββ screens/ # Screen widgets β βββ lottery_picker_screen.dart βββ widgets/ # Reusable widgets β βββ number_grid.dart β βββ auto_picked_numbers.dart βββ theme/ # Theme configuration βββ app_theme.dart
- Launch the app
- Tap numbers on the grid to select them
- Select exactly 6 numbers
- Use the "Clear" button to reset selection
- Tap "Proceed" when ready
- Tap the "Auto Pick" button
- Watch the animated display of your lucky numbers
- After 3 seconds, the numbers will transition to the grid
- Review your numbers
- Use "Clear" to try again or "Proceed" to continue
- Uses Flutter's widget-based architecture
- Implements state management using StatefulWidget
- Follows Material Design 3 guidelines
- Responsive design using LayoutBuilder
-
LotteryPickerScreen
- Main screen widget
- Manages state and user interactions
- Handles animations and transitions
-
NumberGrid
- Displays the interactive number grid
- Handles number selection
- Responsive layout
-
AutoPickedNumbers
- Displays auto-generated numbers
- Implements animations
- Smooth transitions
-
AppTheme
- Centralized theme configuration
- Material Design 3 implementation
- Consistent styling
- Fade and scale transitions for auto-picked numbers
- Smooth grid transitions
- Interactive feedback animations
- State transition animations
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Run the test suite:
flutter testflutter build apk --releaseflutter build ios --releaseflutter build web --release- Flutter SDK
- Material Design 3
- No external dependencies required
This project is licensed under the MIT License - see the LICENSE file for details.
- Flutter team for the amazing framework
- Material Design team for the design system
WolfOf420SStreet - @Fbillionaire__
Project Link: https://github.com/WolfOf420Street/lottery



