Welcome to the Flutter Telegram Clone Workshop! π In this hands-on learning experience, you'll delve into the power of Flutter as we embark on a journey to recreate the renowned Telegram messaging app. Whether you're a Flutter enthusiast or a coding novice, this workshop is designed to sharpen your mobile app development skills and provide you with the tools to build your very own real-time messaging platform.
-
Flutter Exploration: Discover the versatility of Flutter and its application in creating dynamic and responsive user interfaces.
-
Project-Based Learning: Dive into practical, project-based learning by actively participating in the development of a Telegram-like messaging app.
-
Collaboration and Learning: Engage with fellow participants, share insights, and elevate your Flutter proficiency through collaborative coding.
These instructions will help you set up and run the project on your local machine.
Make sure you have Flutter and Dart installed. For installation instructions, visit Flutter Installation Guide.
- Clone the Repo
git clone https://github.com/iuxcode/Messenger_X.git
- Navigate to the project directory and install dependencies
flutter pub get
- Running the App
flutter run
βββ /assets/ # Static assets (fonts, images, videos, vectors, etc..)
βββ /lib/ # The source code of the application
βββ /configs/ # Contains all configuration files(Eg: http.dart will store http configuration constants)
βββ /data/ # Data source of our apps.
βββ /models/ # Data models representing the structure of your third parties data. (Eg: User from API)
βββ /static/ # Store static data source models (Eg: Onboarding page model will be defined in a class OnboardingPage and will provide data through a getAll function)
βββ /services/ # Store and provide services across the app. (Eg: Tdlib, HTTP, Audio)
βββ /ui/ # UI design of our app
βββ /common/ # Store common reusable widgets
βββ /screens/ # Main screens widgets (Eg: HomeScreen, OnboardingScreen)
βββ /core/ # contains screens that form the foundation of the application. act as a container for crucial screens that shape the primary user experience or encapsulate critical functionalities.
βββ /.../ # Our app screens
βββ /utils/ # Utility functions and helper classes used throughout the project.
Contributions to this project are welcome and encouraged! To contribute, please fork the repository and submit a pull request. Please make sure to read the Contributing Guide before making a pull request.
What needs to be done: please check the ROADMAP.
Messenger_X is licensed under the MIT License.