Skip to content

Latest commit

Β 

History

History
122 lines (74 loc) Β· 2.49 KB

File metadata and controls

122 lines (74 loc) Β· 2.49 KB

πŸš€ Setup & Installation

  1. Clone the repository git clone cd the_wallpaper_company

  2. Install dependencies flutter pub get

  3. Run the app flutter run

πŸ”₯ Firebase Setup

  1. Install the FlutterFire CLI dart pub global activate flutterfire_cli

  2. Login to Firebase flutterfire login

  3. Initialize Firebase flutterfire configure

Select your Firebase project and supported platforms (Android/iOS).

This automatically generates lib/firebase_options.dart.

  1. Add platform-specific configuration files

google-services.json β†’ android/app/

GoogleService-Info.plist β†’ ios/Runner/

  1. Enable required Firebase services

Cloud Messaging

Remote Config

πŸ“˜ Reference: FlutterFire CLI Documentation

βš™οΈ Remote Config Keys Key Type Description dark_mode_enabled bool Toggles dark mode in the app.

Usage Example:

remoteConfig.getBool('dark_mode_enabled')

🌐 JSON Endpoint

Wallpapers are fetched from the endpoint below:

https://jsonkeeper.com/b/ORGZR

Each wallpaper object includes:

{ "id": "1", "title": "Abstract Sky", "imageUrl": "https://example.com/image.jpg", "category": "Nature" }

✨ Features

βœ… Home screen with category carousel βœ… Staggered grid layout (Pinterest-style) βœ… Shimmer loading effect βœ… Fullscreen preview and favorites βœ… Pull-to-refresh and double-tap like animation βœ… Firebase Remote Config for dark mode βœ… Firebase Cloud Messaging notifications βœ… Provider for state management βœ… Persistent image caching βœ… Modern, responsive UI

πŸ’‘ Suggested Feature Updates (For Open Source Contributors) 🧩 Beginner-Friendly Tasks

Fix small UI bugs or alignment issues.

Clean up redundant code or inconsistent formatting.

πŸŒ™ New Features

Dark Mode Toggle: Add a manual dark mode switch.

Search Wallpapers: Implement a search bar by title or category.

Share Wallpaper: Enable sharing via social media or chat apps.

🎨 UI/UX Enhancements

Onboarding Screens: Introduce an onboarding experience for new users.

Animations: Add smooth transitions and micro-interactions.

🌍 Localization

Add multi-language support (e.g., Hindi, Spanish).

πŸ§ͺ Testing

Write unit tests for existing logic.

Add integration tests to ensure platform consistency.

πŸ“š Documentation

Improve the README with contributor guidelines.

Add inline comments for complex sections of the codebase.

🐞 Open Issues

Create GitHub issues for the above enhancements with labels like: good first issue, help wanted, enhancement.

πŸͺͺ License

This project is licensed under the MIT License.