8000 GitHub - sw3do/qr_code_reader: A multi-language, themed QR code reader application with advanced features. Built with Flutter.
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

sw3do/qr_code_reader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

2 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

SmartQR Code Reader πŸ“±

A multi-language, themed QR code reader application with advanced features. Built with Flutter.

✨ Features

  • πŸ“± QR Code Scanning: Fast and accurate QR code reading
  • 🎨 QR Code Generation: Generate QR codes for text, URLs, Wi-Fi info
  • 🌍 Multi-language Support: Turkish and English language support
  • πŸŒ™ Theme Support: Light and dark theme options
  • πŸ“ History: View history of scanned QR codes
  • πŸ“€ Sharing: Easy sharing of QR code results
  • πŸ”— URL Opening: Direct opening of web links
  • πŸ’° AdMob Integration: Advertisement display

πŸ› οΈ Technologies

  • Flutter: ^3.8.1
  • Dart: ^3.8.1
  • mobile_scanner: QR code scanning
  • qr_flutter: QR code generation
  • provider: State management
  • easy_localization: Multi-language support
  • hive: Local data storage
  • google_mobile_ads: Ad integration

πŸ“‹ Requirements

  • Flutter SDK (3.8.1 or higher)
  • Dart SDK (3.8.1 or higher)
  • Android Studio / VS Code
  • Android SDK (minimum API 23)

βš™οΈ Installation

1. Clone the project

git clone https://github.com/sw3do/qr_code_reader.git
cd qr_code_reader

2. Install dependencies

flutter pub get

3. Create required files

Android Signing (For Release)

  1. Copy android/key.properties.example to android/key.properties
  2. Fill in your keystore information:
storePassword=your_keystore_password
keyPassword=your_key_password
keyAlias=your_key_alias
storeFile=your_keystore_file.jks

AdMob Configuration

  1. In android/app/src/main/AndroidManifest.xml:
<meta-data
    android:name="com.google.android.gms.ads.APPLICATION_ID"
    android:value="YOUR_ADMOB_APPLICATION_ID"/>
  1. In lib/main.dart - AdMob initialization (already configured):
void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  
  await EasyLocalization.ensureInitialized();
  
  // AdMob initialization
  await MobileAds.instance.initialize();
  
  // ... rest of the code
}
  1. In lib/screens/home_screen.dart - Replace banner ad unit ID:
void _loadBannerAd() {
  _bannerAd = BannerAd(
    adUnitId: 'YOUR_BANNER_AD_UNIT_ID', // Replace with your banner ad unit ID
    request: const AdRequest(),
    size: AdSize.banner,
    // ... rest of the configuration
  );
}
  1. In lib/screens/scan_screen.dart - Replace interstitial ad unit ID:
void _loadInterstitialAd() {
  InterstitialAd.load(
    adUnitId: 'YOUR_INTERSTITIAL_AD_UNIT_ID', // Replace with your interstitial ad unit ID
    request: const AdRequest(),
    // ... rest of the configuration
  );
}

4. Run the application

flutter run

πŸ—οΈ Build

Debug Build

flutter run

Release Build

APK

flutter build apk --release

App Bundle (For Google Play)

flutter build appbundle --release

πŸ“± Supported Platforms

  • βœ… Android (API 23+)
  • ❌ iOS (Not yet supported)
  • ❌ Web (Not yet supported)
  • ❌ Desktop (Not yet supported)

πŸ—‚οΈ Project Structure

lib/
β”œβ”€β”€ core/
β”‚   β”œβ”€β”€ localization/        # Language files
β”‚   └── theme/              # Theme configuration
β”œβ”€β”€ models/                 # Data models
β”œβ”€β”€ providers/              # State management
β”œβ”€β”€ screens/                # Application screens
β”œβ”€β”€ services/               # Service layer
└── widgets/                # Reusable widgets

assets/
β”œβ”€β”€ images/                 # Images
└── lang/                   # Translation files

πŸ”§ Configuration

AdMob Setup

  1. Create a Google AdMob account
  2. Get your Application ID
  3. Add to AndroidManifest.xml
  4. Replace ad unit IDs in Dart files

Multi-language Support

Language files are located in the assets/lang/ folder:

  • en-US.json: English
  • tr-TR.json: Turkish

🀝 Contributing

  1. Fork the project
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“„ License

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

πŸ‘¨β€πŸ’» Developer

Your Name

πŸ› Bug Reports

If you find a bug, please report it via GitHub Issues.

πŸ“ˆ Version History

  • v1.0.0 - Initial release
    • QR code scanning and generation
    • Multi-language support
    • Theme support
    • History feature

⭐ If you like the project, don't forget to give it a star!

About

A multi-language, themed QR code reader application with advanced features. Built with Flutter.

Resources

License

Security policy

Stars

Watchers

Forks

Packages

No packages published
0