Skip to content

Commit 56b8cc5

Browse files
chore: merge pull request
chore: updated readme.md Merge pull request #12 from shaurya-8055/feat/multi_language
2 parents 0ca21ff + 33ddb4d commit 56b8cc5

1 file changed

Lines changed: 121 additions & 119 deletions

File tree

README.md

Lines changed: 121 additions & 119 deletions
Original file line numberDiff line numberDiff line change
@@ -1,120 +1,122 @@
1-
# The Wallpaper Company
2-
3-
A production-ready Flutter wallpaper app for the Kroozelabs Intern Challenge.
4-
5-
## Screenshots
6-
7-
![App Screenshot](screenshots.png)
8-
9-
---
10-
11-
## Setup & Installation
12-
13-
1. **Clone the repository:**
14-
```bash
15-
git clone <your-repo-url>
16-
cd the_wallpaper_company
17-
```
18-
2. **Install dependencies:**
19-
```bash
20-
flutter pub get
21-
```
22-
3. **Run the app:**
23-
```bash
24-
flutter run
25-
```
26-
27-
## Firebase Setup
28-
29-
1. Install the FlutterFire CLI:
30-
```bash
31-
dart pub global activate flutterfire_cli
32-
```
33-
2. Login to Firebase:
34-
```bash
35-
flutterfire login
36-
```
37-
3. Initialize Firebase in your project:
38-
```bash
39-
flutterfire configure
40-
```
41-
- Select your Firebase project and platforms (Android/iOS).
42-
- This will generate `lib/firebase_options.dart` automatically.
43-
4. Add `google-services.json` (Android) to `android/app/`.
44-
5. Add `GoogleService-Info.plist` (iOS) to `ios/Runner/`.
45-
6. Enable **Cloud Messaging** and **Remote Config** in the Firebase Console.
46-
47-
For more details, see the [FlutterFire CLI documentation](https://firebase.flutter.dev/docs/cli/).
48-
49-
## Remote Config Keys Used
50-
51-
- `dark_mode_enabled` (bool): Toggles dark mode in the app.
52-
- Example usage: `remoteConfig.getBool('dark_mode_enabled')`
53-
54-
## JSON Endpoint Usage
55-
56-
Wallpapers are fetched from:
57-
```
1+
🚀 Setup & Installation
2+
1. Clone the repository
3+
git clone <your-repo-url>
4+
cd the_wallpaper_company
5+
6+
2. Install dependencies
7+
flutter pub get
8+
9+
3. Run the app
10+
flutter run
11+
12+
🔥 Firebase Setup
13+
1. Install the FlutterFire CLI
14+
dart pub global activate flutterfire_cli
15+
16+
2. Login to Firebase
17+
flutterfire login
18+
19+
3. Initialize Firebase
20+
flutterfire configure
21+
22+
23+
Select your Firebase project and supported platforms (Android/iOS).
24+
25+
This automatically generates lib/firebase_options.dart.
26+
27+
4. Add platform-specific configuration files
28+
29+
google-services.json → android/app/
30+
31+
GoogleService-Info.plist → ios/Runner/
32+
33+
5. Enable required Firebase services
34+
35+
Cloud Messaging
36+
37+
Remote Config
38+
39+
📘 Reference: FlutterFire CLI Documentation
40+
41+
⚙️ Remote Config Keys
42+
Key Type Description
43+
dark_mode_enabled bool Toggles dark mode in the app.
44+
45+
Usage Example:
46+
47+
remoteConfig.getBool('dark_mode_enabled')
48+
49+
🌐 JSON Endpoint
50+
51+
Wallpapers are fetched from the endpoint below:
52+
5853
https://jsonkeeper.com/b/ORGZR
59-
```
60-
- The endpoint returns a list of wallpaper objects in JSON format.
61-
- Each wallpaper object contains: `id`, `title`, `imageUrl`, `category`.
62-
63-
64-
## Features
65-
- Home screen with category carousel
66-
- Staggered grid and shimmer loading(Printerest Style)
67-
- Fullscreen preview and favorites
68-
- Pull-to-refresh and double-tap to like animation
69-
- Firebase Remote Config for dark mode
70-
- Firebase Cloud Messaging for notifications
71-
- Provider for state management
72-
- Persistent image cache
73-
- Modern UI
74-
75-
## Suggested Feature Updates for Open Source Contributions
76-
77-
Here are some suggested feature updates for contributors to work on:
78-
79-
### Beginner-Friendly Tasks
80-
- **Bug Fixes:**
81-
- Identify and fix small UI bugs or alignment issues.
82-
- Resolve any redundant code or formatting inconsistencies.
83-
84-
### New Features
85-
- **Dark Mode Toggle:**
86-
- Add a toggle button to enable/disable dark mode.
87-
- **Search Wallpapers:**
88-
- Implement a search bar to find wallpapers by title or category.
89-
- **Share Wallpaper:**
90-
- Add functionality to share wallpapers via social media or messaging apps.
91-
92-
### UI/UX Improvements
93-
- **Onboarding Screens:**
94-
- Create an onboarding flow for first-time users.
95-
- **Animations:**
96-
- Add smooth transitions and animations for better user experience.
97-
98-
### Localization
99-
- **Multi-Language Support:**
100-
- Add support for at least two additional languages.
101-
102-
### Testing
103-
- **Unit Tests:**
104-
- Write unit tests for existing features.
105-
- **Integration Tests:**
106-
- Ensure the app works seamlessly across different platforms.
107-
108-
### Documentation
109-
- **Update README:**
110-
- Add detailed setup instructions for contributors.
111-
- **Code Comments:**
112-
- Add comments to explain complex logic in the codebase.
113-
114-
### Open Issues
115-
- Create GitHub issues for the above tasks with labels like `good first issue` and `help wanted` to guide contributors.
116-
117-
---
118-
119-
## License
120-
MIT
54+
55+
56+
Each wallpaper object includes:
57+
58+
{
59+
"id": "1",
60+
"title": "Abstract Sky",
61+
"imageUrl": "https://example.com/image.jpg",
62+
"category": "Nature"
63+
}
64+
65+
✨ Features
66+
67+
✅ Home screen with category carousel
68+
✅ Staggered grid layout (Pinterest-style)
69+
✅ Shimmer loading effect
70+
✅ Fullscreen preview and favorites
71+
✅ Pull-to-refresh and double-tap like animation
72+
✅ Firebase Remote Config for dark mode
73+
✅ Firebase Cloud Messaging notifications
74+
✅ Provider for state management
75+
✅ Persistent image caching
76+
✅ Modern, responsive UI
77+
78+
💡 Suggested Feature Updates (For Open Source Contributors)
79+
🧩 Beginner-Friendly Tasks
80+
81+
Fix small UI bugs or alignment issues.
82+
83+
Clean up redundant code or inconsistent formatting.
84+
85+
🌙 New Features
86+
87+
Dark Mode Toggle: Add a manual dark mode switch.
88+
89+
Search Wallpapers: Implement a search bar by title or category.
90+
91+
Share Wallpaper: Enable sharing via social media or chat apps.
92+
93+
🎨 UI/UX Enhancements
94+
95+
Onboarding Screens: Introduce an onboarding experience for new users.
96+
97+
Animations: Add smooth transitions and micro-interactions.
98+
99+
🌍 Localization
100+
101+
Add multi-language support (e.g., Hindi, Spanish).
102+
103+
🧪 Testing
104+
105+
Write unit tests for existing logic.
106+
107+
Add integration tests to ensure platform consistency.
108+
109+
📚 Documentation
110+
111+
Improve the README with contributor guidelines.
112+
113+
Add inline comments for complex sections of the codebase.
114+
115+
🐞 Open Issues
116+
117+
Create GitHub issues for the above enhancements with labels like:
118+
good first issue, help wanted, enhancement.
119+
120+
🪪 License
121+
122+
This project is licensed under the MIT License.

0 commit comments

Comments
 (0)