A simple 2D multiplayer online game built using Flutter and Flame engine
Club Penguin
Club Penguin A multiplayer game involving penguins and anonymous chat in a virtual 2D world
Before we start, you can take a look at the app:
Usage ?
To clone and run this application, you'll need git and flutter installed on your computer. From your command line:
# Clone this repository
$ git clone https://github.com/Shadow60539/social_media_game.git
# Go into the repository
$ cd social_media_game.git
# Install dependencies
$ flutter packages get
# Run the app
$ flutter run
Packages ?
Some very good packages are used in this project.
| Package | Description |
|---|---|
| flame | A minimalistic Flutter game engine |
| firebase_auth | Firebase Authentication |
| firebase_core | To use the Firebase Core API |
| firebase_database | Firebase Realtime Database |
| dartz | Support functional programming in Dart |
| build_runner | Build Custom Models |
| flutter_bloc | BLoC State Management |
| flutter_launcher_icons | Replace launcher icon |
| freezed | Code generation for immutable classes |
| google_fonts | Support google fonts |
| injectable | Dependency injection |
| lint | Rules handler for Dart |
| lottie | Lottie files animations |
| mockito | Mock library for Dart |
| provider | Provider State Management |
Directory Structure ?
The project directory structure is as follows:
├── android
├── asset
├── build
├── images
├── ios
├── lib
├── test
├── analysis_options.yaml
├── pubspec.lock
├── pubspec.yaml
| Directory | Description |
|---|---|
| application | State management layer |
| core | Core files which depend on all these layers |
| domain | Model and contract layer |
| infrastructure | Data layer |
| presentation | Widget layer |