/Liv-Social

Social Network

Primary LanguageDart

Demo

Keep code consistent:

  • Follow Dart style guide Effective Dart
  • We are using Pedantic to check "lints". Fix any warning or lint error before commit

Generate Classes:

  • Run the script to autogenerate the classes.
 ./generateCode.sh

Firebase:

  • This project use Firebase to manage database, remote storage and authentication.

  • Request the following mail guiller.dlco@gmail.com to add you to the firebase project

State management:

Prefer using Cubit over bloc:

class NameOfClassCubit extends Cubit<MyState> { }

The name of the class must end with Cubit

class NameOfClassCubit extends Cubit<MyState> { }

Keep the states inside the same file as your Cubit.

Inside the file name_of_class_cubit.dart

class NameOfClassCubit extends Cubit<MyState> { }

class MyState {}

class MyState1 extends MyState {}

class MyState2 extends MyState {}

Widgets

Avoid functions to create widgets.

Avoid functions to create widgets:

Widget buildMyButton() {
    return .....
}

Instead, create a class:

class MyButton extends StatelessWidget {

    @override
    Widget build(BuildContext context) {    
        return ... 
    }
}

Localizations:

  • This project use this Google Sheet to handle text translations and autogenerate json file.

Screenshots

Tests

  • ||