
A Social Network for empowering the Educational Community of UCAC-ICAM Institute - Built by Students, For Students, Alumni and Faculty.
Welcome to our project! This is a social network designed to empower the educational community of UCAC-ICAM Institute. Built by students, for students, alumni, and faculty, our aim is to foster a vibrant, collaborative environment where ideas can be shared and connections can be made.
This project is built using Flutter, following best practices for state management. Whether you're a student looking to contribute or a faculty member interested in seeing how it all works, this project is a great starting point for understanding the development of robust, scalable Flutter applications.
For comprehensive guidance on Flutter development, refer to the official Flutter documentation. It provides tutorials, samples, mobile development best practices, and a complete API reference.
In our commitment to inclusivity, this project supports multiple languages to cater to our diverse community. Currently, the application is localized in:
- English
- French
Localization is achieved through arb files located in the lib/src/localization
directory. These files contain the translations for all the text used in the application.
To add more languages to the application, follow the guide on Internationalizing Flutter apps.
- User Authentication (Login/Signup)
- Onboarding for new users
- User Profile (View/Edit)
- Chat functionality
- Settings customization
- Localization (English/French)
- Home Page
- About Page
- Sample Items (List/Details)
- Splash Screen
- Wheather news functionality
- Clone the repository:
git clone https://github.com/sikatikenmogne/we_connect_iui_mobile.git
- Navigate to the project directory:
cd we_connect_iui_mobile
- Copy the
assets/.env.example
file and rename the new file to.env
- Ex:
cp assets/.env.example assets/.env
- then replace the placeholders with your actual Firebase API keys.
- for any issues about this step contact @sikatikenmogne
- Ex:
- Download the
google-services.json
file from your Firebase project and place it in theandroid/app/
directory.- for any issues about this step contact @sikatikenmogne
- Install the dependencies:
flutter pub get
- Run the app:
flutter run
This project follows a layered MVC architecture. The models
directory contains the data models, the pages
directory contains the UI components, and the controllers
directory contains the business logic.
└── 📁lib
└── firebase_options.dart
└── 📁generated
└── 📁intl
└── messages_all.dart
└── messages_en.dart
└── l10n.dart
└── main.dart
└── 📁src
└── app.dart
└── 📁constants
└── 📁controller
└── 📁settings
└── settings_controller.dart
└── 📁localization
└── app_en.arb
└── app_fr.arb
└── 📁model
└── 📁sample_item
└── sample_item.dart
└── 📁routes
└── 📁service
└── 📁settings
└── settings_service.dart
└── 📁state
└── 📁utils
└── 📁view
└── 📁components
└── 📁pages
└── 📁sample_item
└── 📁components
└── sample_item_details_view.dart
└── sample_item_list_view.dart
└── 📁settings
└── settings_view.dart
To run the test suite for this app, use the command: flutter test
We welcome contributions from the community. To contribute:
- Fork this repository
- Create your feature branch:
git checkout -b feature/your-feature
- example:
git checkout -b feature/add-login
- example:
- Commit your changes following the Conventional Commits specification:
git commit -m 'feat: add some feature'
- Push to the branch:
git push origin feature/your-feature
- Open a pull request
Please make sure your commits follow the Conventional Commits specification so your changes can be easily tracked.
The Conventional Commits specification is a lightweight convention on top of commit messages. It provides an easy set of rules for creating an explicit commit history, which makes it easier to write automated tools on top of. Here are some common types you might use:
feat
: A new featurefix
: A bug fixdocs
: Documentation only changesstyle
: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)refactor
: A code change that neither fixes a bug nor adds a featureperf
: A code change that improves performancetest
: Adding missing tests or correcting existing testschore
: Changes to the build process or auxiliary tools and libraries such as documentation generation
This project is licensed under the MIT License. See the LICENSE file for details.
For any questions or support, please email us at:
- Samuel SIKATI KENMOGNE: sikatikenmogne@gmail.com
- Jordan TCHOUNGA ZOUATOUM: tchounga18jordan@gmail.com
- Florian Dimitri NDIBA NDOUH: florianndiba01@gmail.com
You can also raise an issue in the GitHub issue tracker for this project.
This project was created by Samuel SIKATI KENMOGNE, Jordan TCHOUNGA ZOUATOUM, and Florian Dimitri NDIBA NDOUH. We would like to thank the Flutter community for their valuable resources and support.