Skip to content

leancodepl/flutter-at-mini

Repository files navigation

Flutter @ MiNI - 2024/2025

Repository contains information about Programming mobile applications in Flutter course.

Contact info

Jakub Fijałkowski – [email protected]

Mateusz Wojtczak – [email protected]

Piotr Rogulski – [email protected]

Rules

Students need to gather at least 51pt to pass the course:

  • 51-60pt - 3
  • 61-70pt - 3.5
  • 71-80pt - 4
  • 81-90pt - 4.5
  • 91-100pt - 5

Points can be gained from:

  • Project - 100pt
  • Activity during lectures - 10pt
  • Labs (non-obligatory) - 8 * 3 = 24 pt

Minimum SDK versions

  • Flutter 3.24.3
  • Dart 3.5.3

Lectures

  1. 08.10.2024 - Intro lecture
  2. 15.10.2024 - What is Flutter?
  3. 22.10.2024 - Let's go deeper into Flutter
  4. 29.10.2024 - State Management
  5. 05.11.2024 - Asynchrony and HTTP
  6. 12.11.2024 - State Management with External Libraries
  7. 19.11.2024 - Firebase
  8. 26.11.2024 - Data persistence
  9. 03.12.2024 - Testing
  10. 10.12.2024 - Forms
  11. 17.12.2024 - Architecture
  12. 07.01.2025 - Flutter Web and Flutter Desktop
  13. 14.01.2025 - Communication with Native
  14. 21.01.2025 - Animations
  15. 28.01.2025 - TBA

Labs

Each lab is an exercise about the preceding lecture consisting of multiple parts. Completing all parts is optional (as your homework) and is worth additional 3 pts each.

  1. 11.10.2024 - Getting started
  2. 18.10.2024 - Layouts 1
  3. 25.10.2024 - Layouts 2 & using context
  4. 08.11.2024 - Context and StatefulWidget
  5. 15.11.2024 - Communication with API
  6. 22.11.2024 - State management with external services
  7. 29.11.2024 - Firebase Auth in action
  8. 06.12.2024 - Data Persistence

Week 9-15 lab slots can be used for project consulting - only by prior arrangement.

Project

Requirements

  • Individual multi-layer Flutter application that works at least on one mobile platform (Android/iOS)
  • Application's topic and scope is defined by the student, should be described in the initial documentation and approved by the lecturer
  • Project's source code and final documentation is submitted according to the Timeline

Assessment Rules

  • Implementation of the required project assumptions (50pt)
    • Initial documentation - 5pt
    • Architecture - 15pt
    • Code quality (e.g. static code analysis, formatting) - 15pt
    • UI/UX
      • Material Design - 5pt
      • Custom design widgets - 5pt
    • Final documentation - 5pt
  • Optional requirements (max 50pt)
    • Support for each additional platform (Mobile/Web/Desktop) - 5pt each
    • Animations
      • Implicit / ready-to-use packages - max 5pt
      • Custom - max 10pt
    • Tests
      • Unit tests - max 5pt
      • Widget tests - max 5pt
      • Patrol tests - max 10pt
    • Signing in process
      • Firebase Auth - max 5pt
      • Custom backend auth - max 10pt
    • Multi-step form with validation - max 10pt
    • CI/CD - max 15pt
      • code analysis & run flutter test - max 10pt
      • deploy app - max 10pt
    • Platform Channels
      • Using pub package for platform features (e.g. camera) - 5pt
      • Creating custom platform channels - 15pt
    • Internationalization - max 10pt
    • Custom painting - max 5pt
    • Local data persistence (offline) - max 15pt

Timeline

Initial Documentation

Initial documentation should contain:

  • Project description
  • Desired optional requirements should be listed in the initial documentation
  • User stories (e.g. As a user, I can sign in; As a user, I can view the list of items)

Final Documentation

Final documentation should contain:

  • Project description
  • Integrations
  • List of optional requirements
  • Instruction
  • Test account (if applicable)
  • Database/Firestore schema (if applicable)
  • CI/CD description/screenshot (if applicable)

But it shouldn't be longer than 1-2 pages. :)

Late Project Submission

Students can submit the project until 09.02.2024. Each day of being late will take a decrease of 5pt from the total number of gained points (not less than 51pts). Projects submitted after the final deadline won't be accepted.

Resources

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published