Files
plezy/CONTRIBUTING.md
T

1.7 KiB

Contributing

Getting Started

  1. Fork and clone the repository
  2. Run flutter pub get to install dependencies
  3. Run dart run build_runner build to generate code
  4. Start developing!

Development

  • Follow Dart/Flutter conventions
  • Run dart format . to format your code
  • Run flutter analyze before submitting to check for issues
  • Run flutter test if tests are available
  • Test your changes thoroughly

Code Quality Checks

The project includes automated CI checks that run on all pull requests:

  1. Code Formatting: Ensures code follows Dart formatting standards

    • Run locally: dart format .
    • CI check excludes generated files (.g.dart, .freezed.dart)
  2. Static Analysis: Checks for code issues and potential bugs

    • Run locally: flutter analyze
  3. Tests: Runs unit and widget tests (when available)

    • Run locally: flutter test

All these checks must pass before your changes can be merged.

Internationalization (i18n)

This project uses slang for internationalization with JSON files.

Adding New Strings

  1. Add your string to lib/i18n/strings.i18n.json:

    {
      "section": {
        "myNewString": "My new text"
      }
    }
    
  2. Run dart run slang to regenerate translation files

  3. Use in your code:

    Text(t.section.myNewString)
    

Adding New Languages

  1. Create new JSON file: lib/i18n/strings_[locale].i18n.json
  2. Copy structure from strings.i18n.json and translate values
  3. Run dart run slang to regenerate files

Guidelines

  • Organize strings logically in nested objects
  • Use camelCase for keys
  • Keep strings concise and clear
  • Always run dart run slang after changes