eCommerceApp
Desenvolvedor
Chat público
Detalhes do produto
eCommerceApp is a Flutter-based mobile application designed to provide a seamless shopping experience. It features product listing with pagination, category-based search and filters, cart management, and secure payments using Stripe. The app supports offline functionality using Hive and integrates push notifications with OneSignal. Firebase is used for authentication and storing user orders in Firestore.
In the app, Riverpod is used to manage the state of the product list, keeping everything responsive and up-to-date. SQLite is employed for cart management, effectively tracking items that are added or removed. Hive ensures the app functions smoothly even when offline. Additionally, pagination is implemented to efficiently load and display a large number of products without overwhelming the user.
For secure transactions, Stripe handles payments, ensuring all financial details are processed safely. Firebase is used for user authentication and storing order details, providing a reliable backend. Notifications are managed through OneSignal, allowing the app to send real-time updates and alerts to users.
Overall, these all functionalities work together to create a seamless user experience by providing efficient state management, secure payment processing, reliable offline functionality, and timely notifications, all while handling large amounts of data with pagination. The app also includes category-wise filtering and search functionality to help users easily find the products they need.
Product List Fetching: Displays a list of products with pagination.
State Management: Managed using Riverpod for efficient state handling.
Offline Functionality: Integrated Hive for storing data offline.
Search & Filter: Includes search functionality with category-wise filtering.
Cart Management: SQLite is used to manage products added to the cart.
Payment Integration: Stripe is integrated for secure payments.
Push Notifications: OneSignal is used for sending push notifications.
User Authentication: Firebase Authentication is used for user login and sign-up.
Order Management: Firebase Firestore is used for storing user orde
Árvore de arquivos
-
📁 eCommerceApp
Instruções de instalação
Download the complete app folder from the provided repository or source.
2. Install Dependencies
Ensure Flutter is installed on your system. If not, follow the official Flutter installation guide.
Once Flutter is installed, run the appropriate command to install the required dependencies in your project.
3. Setup Firebase
To integrate Firebase services into the app:
Create a Firebase project in the Firebase Console.
Add your Android/iOS app to the Firebase project.
Download the google-services.json file (for Android) or the GoogleService-Info.plist (for iOS) and place them in the appropriate directories of your Flutter project:
android/app for Android
ios/Runner for iOS
Enable Firebase services like:
Firebase Authentication
Firestore Database
Firebase Storage
4. Setup Hive for Offline Storage
Hive is used for offline data storage in this app. If you make changes to the data model, ensure you run the necessary command to generate the required files.
5. Stripe Setup
Follow the official Stripe documentation to obtain your API keys. Add your publishableKey in the Stripe configuration inside the app.
6. OneSignal Setup
Create an account on OneSignal, configure your app, and retrieve your app_id. Initialize OneSignal in your app using the provided app_id.
7. Run the App
Once all dependencies and configurations are complete, run the app on your device or emulator.
Instruções de alteração e adaptação
Users can replace the current FakerStore API with their own custom API. To do this, update the API endpoints and methods in the relevant service files. Adjust the data models and parsing logic to match the structure of your new API.
Advanced Stripe Integration
For more sophisticated payment handling, users can enhance the Stripe integration beyond the basic setup. Explore additional Stripe features such as subscriptions, promotional coupons, or multi-currency support. Update the Stripe configuration and extend the payment flows as needed to accommodate advanced use cases.
Server Deployment
Users have the option to deploy their server to a cloud provider or other hosting service. Configure the server environment variables, database connections, and API endpoints accordingly. Ensure the server is properly secured and scalable based on your application's needs.
App Enhancements
Users can further improve the app by implementing additional features or refining existing ones. Consider enhancing the user interface with more advanced UI/UX designs, integrating additional third-party services, or optimizing performance. Customizing the app to better fit specific requirements or adding unique functionalities can significantly enhance the overall user experience.
Push Notifications
The app currently uses OneSignal for push notifications. If you prefer to use Firebase Cloud Messaging (FCM) instead, you can replace OneSignal with FCM. To do this:
Set up Firebase Cloud Messaging in the Firebase Console.
Update the Firebase configuration in your app to include the necessary FCM keys and settings.
Modify the notification handling code to use FCM’s APIs for sending and receiving notifications.
Additional Customizations