├── .github
└── workflows
│ ├── clean-workflow.yaml
│ └── release-workflow.yaml
├── .gitignore
├── .metadata
├── LICENSE.txt
├── README.md
├── analysis_options.yaml
├── android
├── .gitignore
├── app
│ ├── build.gradle
│ └── src
│ │ ├── debug
│ │ └── AndroidManifest.xml
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── kotlin
│ │ │ └── de
│ │ │ │ └── thenus
│ │ │ │ └── cookbook_app
│ │ │ │ └── MainActivity.kt
│ │ └── res
│ │ │ ├── drawable-hdpi
│ │ │ ├── ic_launcher_background.png
│ │ │ ├── ic_launcher_foreground.png
│ │ │ └── ic_launcher_monochrome.png
│ │ │ ├── drawable-mdpi
│ │ │ ├── ic_launcher_background.png
│ │ │ ├── ic_launcher_foreground.png
│ │ │ └── ic_launcher_monochrome.png
│ │ │ ├── drawable-v21
│ │ │ └── launch_background.xml
│ │ │ ├── drawable-xhdpi
│ │ │ ├── ic_launcher_background.png
│ │ │ ├── ic_launcher_foreground.png
│ │ │ └── ic_launcher_monochrome.png
│ │ │ ├── drawable-xxhdpi
│ │ │ ├── ic_launcher_background.png
│ │ │ ├── ic_launcher_foreground.png
│ │ │ └── ic_launcher_monochrome.png
│ │ │ ├── drawable-xxxhdpi
│ │ │ ├── ic_launcher_background.png
│ │ │ ├── ic_launcher_foreground.png
│ │ │ └── ic_launcher_monochrome.png
│ │ │ ├── drawable
│ │ │ └── launch_background.xml
│ │ │ ├── mipmap-anydpi-v26
│ │ │ └── ic_launcher.xml
│ │ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── mipmap-xxxhdpi
│ │ │ └── ic_launcher.png
│ │ │ ├── values-night
│ │ │ └── styles.xml
│ │ │ └── values
│ │ │ └── styles.xml
│ │ └── profile
│ │ └── AndroidManifest.xml
├── build.gradle
├── gradle.properties
├── gradle
│ └── wrapper
│ │ └── gradle-wrapper.properties
└── settings.gradle
├── assets
├── documents
│ └── changelog
│ │ ├── de.json
│ │ └── en.json
├── icons
│ ├── bring.png
│ └── logo_transparent.png
├── images
│ └── no_image.png
└── web
│ └── backend_url.txt
├── build_assets
├── docker
│ ├── Dockerfile
│ └── entrypoint.sh
├── icons
│ ├── android
│ │ ├── adaptive_background.png
│ │ ├── adaptive_foreground.png
│ │ ├── light_icon.png
│ │ └── monochrome.png
│ ├── ios
│ │ ├── dark_icon.png
│ │ ├── light_icon.png
│ │ └── tinted_icon.png
│ ├── macos
│ │ └── light_icon.png
│ ├── web
│ │ └── light_icon.png
│ └── windows
│ │ └── light_icon.png
└── ios
│ └── ExportOptions.plist
├── devtools_options.yaml
├── docs
└── features
│ ├── dashboard
│ ├── phone.png
│ └── tablet.png
│ ├── diet
│ ├── phone.png
│ └── tablet.png
│ ├── editor
│ ├── phone.png
│ └── tablet.png
│ ├── library
│ ├── phone.png
│ └── tablet.png
│ ├── recipe
│ ├── phone.png
│ └── tablet.png
│ └── theme
│ ├── phone.png
│ └── tablet.png
├── examples
├── docker-compose-traefik.yaml
└── docker-compose.yaml
├── ios
├── .gitignore
├── Flutter
│ ├── AppFrameworkInfo.plist
│ ├── Debug.xcconfig
│ └── Release.xcconfig
├── InfoPlist.xcstrings
├── Podfile
├── Podfile.lock
├── Runner.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcshareddata
│ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ └── WorkspaceSettings.xcsettings
│ └── xcshareddata
│ │ └── xcschemes
│ │ └── Runner.xcscheme
├── Runner.xcworkspace
│ ├── contents.xcworkspacedata
│ └── xcshareddata
│ │ ├── IDEWorkspaceChecks.plist
│ │ └── WorkspaceSettings.xcsettings
├── Runner
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ │ ├── AppIcon.appiconset
│ │ │ ├── Contents.json
│ │ │ ├── Icon-App-1024x1024@1x.png
│ │ │ ├── Icon-App-20x20@2x.png
│ │ │ ├── Icon-App-20x20@3x.png
│ │ │ ├── Icon-App-29x29@2x.png
│ │ │ ├── Icon-App-29x29@3x.png
│ │ │ ├── Icon-App-38x38@2x.png
│ │ │ ├── Icon-App-38x38@3x.png
│ │ │ ├── Icon-App-40x40@2x.png
│ │ │ ├── Icon-App-40x40@3x.png
│ │ │ ├── Icon-App-60x60@2x.png
│ │ │ ├── Icon-App-60x60@3x.png
│ │ │ ├── Icon-App-64x64@2x.png
│ │ │ ├── Icon-App-64x64@3x.png
│ │ │ ├── Icon-App-68x68@2x.png
│ │ │ ├── Icon-App-76x76@2x.png
│ │ │ ├── Icon-App-83.5x83.5@2x.png
│ │ │ ├── Icon-App-Dark-1024x1024@1x.png
│ │ │ ├── Icon-App-Dark-20x20@2x.png
│ │ │ ├── Icon-App-Dark-20x20@3x.png
│ │ │ ├── Icon-App-Dark-29x29@2x.png
│ │ │ ├── Icon-App-Dark-29x29@3x.png
│ │ │ ├── Icon-App-Dark-38x38@2x.png
│ │ │ ├── Icon-App-Dark-38x38@3x.png
│ │ │ ├── Icon-App-Dark-40x40@2x.png
│ │ │ ├── Icon-App-Dark-40x40@3x.png
│ │ │ ├── Icon-App-Dark-60x60@2x.png
│ │ │ ├── Icon-App-Dark-60x60@3x.png
│ │ │ ├── Icon-App-Dark-64x64@2x.png
│ │ │ ├── Icon-App-Dark-64x64@3x.png
│ │ │ ├── Icon-App-Dark-68x68@2x.png
│ │ │ ├── Icon-App-Dark-76x76@2x.png
│ │ │ ├── Icon-App-Dark-83.5x83.5@2x.png
│ │ │ ├── Icon-App-Tinted-1024x1024@1x.png
│ │ │ ├── Icon-App-Tinted-20x20@2x.png
│ │ │ ├── Icon-App-Tinted-20x20@3x.png
│ │ │ ├── Icon-App-Tinted-29x29@2x.png
│ │ │ ├── Icon-App-Tinted-29x29@3x.png
│ │ │ ├── Icon-App-Tinted-38x38@2x.png
│ │ │ ├── Icon-App-Tinted-38x38@3x.png
│ │ │ ├── Icon-App-Tinted-40x40@2x.png
│ │ │ ├── Icon-App-Tinted-40x40@3x.png
│ │ │ ├── Icon-App-Tinted-60x60@2x.png
│ │ │ ├── Icon-App-Tinted-60x60@3x.png
│ │ │ ├── Icon-App-Tinted-64x64@2x.png
│ │ │ ├── Icon-App-Tinted-64x64@3x.png
│ │ │ ├── Icon-App-Tinted-68x68@2x.png
│ │ │ ├── Icon-App-Tinted-76x76@2x.png
│ │ │ └── Icon-App-Tinted-83.5x83.5@2x.png
│ │ └── LaunchImage.imageset
│ │ │ ├── Contents.json
│ │ │ ├── LaunchImage.png
│ │ │ ├── LaunchImage@2x.png
│ │ │ ├── LaunchImage@3x.png
│ │ │ └── README.md
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Info.plist
│ ├── Runner-Bridging-Header.h
│ ├── Runner.entitlements
│ └── de.lproj
│ │ ├── LaunchScreen.strings
│ │ └── Main.strings
└── RunnerTests
│ └── RunnerTests.swift
├── l10n.yaml
├── lib
├── clients
│ ├── api_client.dart
│ ├── authors_client.dart
│ ├── bring_client.dart
│ ├── categories_client.dart
│ ├── category_group_client.dart
│ ├── features_client.dart
│ ├── files_client.dart
│ ├── highlights_client.dart
│ ├── interceptor_methods.dart
│ ├── library_client.dart
│ ├── public_recipe_client.dart
│ ├── recipes_client.dart
│ ├── self_service_client.dart
│ ├── stories_client.dart
│ ├── tags_client.dart
│ ├── token_client.dart
│ ├── units_client.dart
│ └── user_client.dart
├── components
│ ├── dashboard
│ │ ├── highlights_viewer.dart
│ │ ├── latest_recipe_viewer.dart
│ │ ├── quick_actions.dart
│ │ └── stories_viewer.dart
│ ├── dialogs
│ │ ├── t_alert_dialog.dart
│ │ ├── t_confirm_dialog.dart
│ │ ├── t_full_dialog.dart
│ │ └── t_loading_dialog.dart
│ ├── go_router
│ │ └── wrapper.dart
│ ├── library
│ │ └── dialogs
│ │ │ ├── create_book_dialog.dart
│ │ │ └── edit_book_dialog.dart
│ ├── login
│ │ ├── login_form.dart
│ │ ├── server_form.dart
│ │ ├── server_major_incompatible.dart
│ │ └── server_minor_incompatible.dart
│ ├── public_recipe
│ │ ├── public_recipe_author.dart
│ │ ├── public_recipe_categories.dart
│ │ └── public_recipe_tags.dart
│ ├── recipe
│ │ ├── bring_button.dart
│ │ ├── dialogs
│ │ │ ├── change_owner_dialog.dart
│ │ │ └── library_dialog.dart
│ │ ├── recipe_action_button.dart
│ │ ├── recipe_author.dart
│ │ ├── recipe_categories.dart
│ │ ├── recipe_description.dart
│ │ ├── recipe_durations.dart
│ │ ├── recipe_informations.dart
│ │ ├── recipe_ingredients.dart
│ │ ├── recipe_instructions.dart
│ │ ├── recipe_nutrition_chart.dart
│ │ ├── recipe_nutrition_desktop.dart
│ │ ├── recipe_nutrition_mobile.dart
│ │ ├── recipe_nutrition_table.dart
│ │ ├── recipe_published.dart
│ │ ├── recipe_tags.dart
│ │ └── recipe_title.dart
│ ├── recipe_drafts
│ │ └── d_scrape.dart
│ ├── recipe_editor
│ │ ├── dialogs
│ │ │ ├── d_categories.dart
│ │ │ ├── d_common.dart
│ │ │ ├── d_course.dart
│ │ │ ├── d_diet.dart
│ │ │ ├── d_duration.dart
│ │ │ ├── d_durations.dart
│ │ │ ├── d_images.dart
│ │ │ ├── d_ingredient.dart
│ │ │ ├── d_ingredient_group.dart
│ │ │ ├── d_ingredient_groups.dart
│ │ │ ├── d_instruction.dart
│ │ │ ├── d_instruction_group.dart
│ │ │ ├── d_instruction_groups.dart
│ │ │ ├── d_nutrition.dart
│ │ │ ├── d_preview.dart
│ │ │ ├── d_serving.dart
│ │ │ └── d_tags.dart
│ │ ├── preview
│ │ │ ├── preview_categories.dart
│ │ │ ├── preview_ingredients.dart
│ │ │ ├── preview_instructions.dart
│ │ │ ├── preview_tags.dart
│ │ │ └── variations
│ │ │ │ ├── desktop.dart
│ │ │ │ └── mobile.dart
│ │ └── t_progress.dart
│ ├── riverpod
│ │ ├── error_page.dart
│ │ ├── loading_page.dart
│ │ ├── r_feature.dart
│ │ ├── r_scaffold.dart
│ │ └── r_struct.dart
│ ├── search
│ │ ├── loading_search.dart
│ │ ├── nothing_found.dart
│ │ └── search_term_too_short.dart
│ ├── settings
│ │ └── dialogs
│ │ │ ├── d_changelog.dart
│ │ │ ├── d_theme.dart
│ │ │ ├── manage_avatar.dart
│ │ │ ├── manage_diet.dart
│ │ │ ├── manage_mail.dart
│ │ │ └── manage_password.dart
│ ├── story
│ │ └── story_action_button.dart
│ ├── story_editor
│ │ ├── d_preview.dart
│ │ └── recipe_search.dart
│ ├── t_app_bar.dart
│ ├── t_avatar_viewer.dart
│ ├── t_book_card.dart
│ ├── t_bubble.dart
│ ├── t_button.dart
│ ├── t_card.dart
│ ├── t_carousel.dart
│ ├── t_circular_avatar.dart
│ ├── t_column.dart
│ ├── t_content_card.dart
│ ├── t_data_table.dart
│ ├── t_empty_message.dart
│ ├── t_gradient.dart
│ ├── t_icon_button.dart
│ ├── t_image.dart
│ ├── t_image_label.dart
│ ├── t_pageable.dart
│ ├── t_pageable_bar.dart
│ ├── t_pageable_content.dart
│ ├── t_recipe_card.dart
│ ├── t_responsive.dart
│ ├── t_rounded_list_tile.dart
│ ├── t_row.dart
│ ├── t_scrollable_h.dart
│ ├── t_search.dart
│ ├── t_slide.dart
│ ├── t_table.dart
│ ├── t_text.dart
│ ├── t_text_form_field.dart
│ ├── t_wrap.dart
│ └── user_management
│ │ └── dialog
│ │ ├── change_password_dialog.dart
│ │ └── create_user_dialog.dart
├── drift
│ ├── app_database.dart
│ └── tables
│ │ ├── draft_table.dart
│ │ └── story_draft_table.dart
├── extensions
│ ├── e_build_context.dart
│ ├── e_date_time.dart
│ ├── e_drift.dart
│ ├── e_duration.dart
│ ├── e_list.dart
│ ├── e_number.dart
│ ├── e_string.dart
│ └── e_uri.dart
├── gen
│ └── assets.gen.dart
├── interfaces
│ ├── a_base_client.dart
│ ├── a_base_page_provider.dart
│ ├── a_filter_search_client.dart
│ ├── a_pageable_client.dart
│ ├── a_pageable_l10n_client.dart
│ ├── a_search_client.dart
│ └── a_search_l10n_client.dart
├── l10n
│ ├── arb
│ │ ├── app_de.arb
│ │ └── app_en.arb
│ └── generated
│ │ ├── l10n.dart
│ │ ├── l10n_de.dart
│ │ └── l10n_en.dart
├── layouts
│ └── main_layout.dart
├── main.dart
├── models
│ ├── api
│ │ └── login.dart
│ ├── appLink
│ │ └── app_link.dart
│ ├── author
│ │ └── author.dart
│ ├── categories
│ │ ├── category.dart
│ │ └── category_group.dart
│ ├── changelog
│ │ └── changelog.dart
│ ├── destination.dart
│ ├── entity.dart
│ ├── features
│ │ └── features_response.dart
│ ├── file
│ │ ├── file.dart
│ │ └── file_draft.dart
│ ├── highlight.dart
│ ├── library
│ │ └── book.dart
│ ├── pageable
│ │ └── pageable.dart
│ ├── recipe
│ │ ├── course.dart
│ │ ├── diet.dart
│ │ ├── ingredients
│ │ │ ├── ingredient.dart
│ │ │ └── ingredient_group.dart
│ │ ├── instructions
│ │ │ ├── instruction.dart
│ │ │ └── instruction_group.dart
│ │ ├── nutrition
│ │ │ └── nutrition.dart
│ │ ├── recipe.dart
│ │ ├── serving
│ │ │ └── serving.dart
│ │ └── unit_ref
│ │ │ ├── unit_conversion.dart
│ │ │ ├── unit_localized.dart
│ │ │ └── unit_ref.dart
│ ├── recipe_draft
│ │ ├── ingredients
│ │ │ ├── ingredient_draft.dart
│ │ │ └── ingredient_group_draft.dart
│ │ ├── instructions
│ │ │ ├── instruction_draft.dart
│ │ │ └── instruction_group_draft.dart
│ │ ├── nutrition
│ │ │ └── nutrition_draft.dart
│ │ ├── recipe_draft.dart
│ │ └── serving_draft
│ │ │ └── serving_draft.dart
│ ├── recipe_draft_wrapper
│ │ ├── recipe_draft_wrapper.dart
│ │ └── scrape_response.dart
│ ├── search
│ │ └── search_result.dart
│ ├── story.dart
│ ├── story_draft
│ │ └── story_draft.dart
│ ├── t_theme.dart
│ ├── tag
│ │ └── tag.dart
│ ├── tag_draft
│ │ └── tag_draft.dart
│ ├── unit.dart
│ ├── user
│ │ ├── role.dart
│ │ ├── token.dart
│ │ └── user.dart
│ └── version
│ │ └── version.dart
├── pages
│ ├── authors
│ │ └── _id.dart
│ ├── categories
│ │ ├── _id.dart
│ │ └── index.dart
│ ├── editor
│ │ └── _id.dart
│ ├── home
│ │ └── index.dart
│ ├── library
│ │ ├── _id.dart
│ │ └── index.dart
│ ├── login
│ │ └── login_page.dart
│ ├── more
│ │ └── index.dart
│ ├── no_connection
│ │ └── index.dart
│ ├── public_recipe
│ │ ├── index.dart
│ │ └── variations
│ │ │ ├── desktop.dart
│ │ │ └── mobile.dart
│ ├── recipe
│ │ ├── index.dart
│ │ └── variations
│ │ │ ├── desktop.dart
│ │ │ └── mobile.dart
│ ├── recipe_drafts
│ │ └── index.dart
│ ├── recipes
│ │ └── _id.dart
│ ├── recovery
│ │ └── index.dart
│ ├── registration
│ │ └── index.dart
│ ├── server_outdated
│ │ └── index.dart
│ ├── settings
│ │ └── index.dart
│ ├── share_management
│ │ └── index.dart
│ ├── splash
│ │ └── index.dart
│ ├── story
│ │ └── _id.dart
│ ├── story_drafts
│ │ └── index.dart
│ ├── story_editor
│ │ └── _id.dart
│ ├── tags
│ │ ├── _id.dart
│ │ └── index.dart
│ └── user_management
│ │ └── index.dart
├── riverpod
│ ├── api
│ │ └── p_api.dart
│ ├── app_links
│ │ └── p_app_links.dart
│ ├── auth_state
│ │ └── p_auth_state.dart
│ ├── authors
│ │ ├── p_author.dart
│ │ ├── p_author_page.dart
│ │ ├── p_authors.dart
│ │ └── p_authors_page.dart
│ ├── categories
│ │ ├── p_categories.dart
│ │ ├── p_categories_page.dart
│ │ ├── p_category.dart
│ │ ├── p_category_page.dart
│ │ └── p_raw_categories.dart
│ ├── category_group
│ │ ├── p_category_groups.dart
│ │ └── p_category_groups_page.dart
│ ├── changelog
│ │ └── p_changelog.dart
│ ├── drift
│ │ └── p_drift.dart
│ ├── features
│ │ ├── p_compatibility.dart
│ │ ├── p_feature_bring.dart
│ │ ├── p_feature_open_food_facts.dart
│ │ ├── p_feature_recovery.dart
│ │ ├── p_feature_registration.dart
│ │ ├── p_feature_share.dart
│ │ ├── p_feature_story.dart
│ │ └── p_features.dart
│ ├── go_router
│ │ └── p_go_router.dart
│ ├── highlights
│ │ └── p_highlight.dart
│ ├── library
│ │ ├── p_book.dart
│ │ ├── p_book_page.dart
│ │ ├── p_book_recipes.dart
│ │ ├── p_library.dart
│ │ ├── p_library_page.dart
│ │ └── p_whole_library.dart
│ ├── package_info
│ │ └── p_package_info.dart
│ ├── public_recipes
│ │ └── p_public_recipe.dart
│ ├── recipe_draft
│ │ ├── p_recipe_draft.dart
│ │ ├── p_recipe_draft_categories.dart
│ │ └── p_recipe_drafts.dart
│ ├── recipes
│ │ ├── p_action_button.dart
│ │ ├── p_latest_recipes.dart
│ │ ├── p_recipe.dart
│ │ ├── p_recipes.dart
│ │ └── p_recipes_page.dart
│ ├── root_bundle
│ │ └── p_backend_url.dart
│ ├── search
│ │ ├── p_recipe_search.dart
│ │ ├── p_recipe_search_term.dart
│ │ ├── p_search.dart
│ │ └── p_search_term.dart
│ ├── shared_preferences
│ │ ├── p_server.dart
│ │ ├── p_shared_preferences.dart
│ │ └── p_tokens.dart
│ ├── stories
│ │ ├── p_action_button.dart
│ │ ├── p_stories.dart
│ │ └── p_story.dart
│ ├── story_draft
│ │ ├── p_story_draft.dart
│ │ └── p_story_drafts.dart
│ ├── tags
│ │ ├── p_tag.dart
│ │ ├── p_tag_page.dart
│ │ ├── p_tags.dart
│ │ └── p_tags_page.dart
│ ├── theme
│ │ ├── p_custom_color.dart
│ │ ├── p_dynamic_color.dart
│ │ ├── p_theme.dart
│ │ └── p_theme_mode.dart
│ ├── tokens
│ │ └── p_tokens.dart
│ ├── units
│ │ ├── p_unit_conversions.dart
│ │ └── p_units.dart
│ └── user
│ │ ├── p_user.dart
│ │ └── p_users.dart
├── router
│ └── routes.dart
└── utils
│ ├── constants.dart
│ ├── custom_mappers
│ ├── custom_mappers.dart
│ ├── duration_mapper.dart
│ ├── uri_mapper.dart
│ └── version_converter.dart
│ ├── u_app_link.dart
│ ├── u_double.dart
│ ├── u_duration.dart
│ ├── u_go_router.dart
│ ├── u_image.dart
│ ├── u_localizations.dart
│ ├── u_os.dart
│ └── u_validator.dart
├── linux
├── .gitignore
├── CMakeLists.txt
├── flutter
│ ├── CMakeLists.txt
│ ├── generated_plugin_registrant.cc
│ ├── generated_plugin_registrant.h
│ └── generated_plugins.cmake
├── main.cc
├── my_application.cc
└── my_application.h
├── macos
├── .gitignore
├── Flutter
│ ├── Flutter-Debug.xcconfig
│ ├── Flutter-Release.xcconfig
│ └── GeneratedPluginRegistrant.swift
├── InfoPlist.xcstrings
├── Podfile
├── Podfile.lock
├── Runner.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ └── xcshareddata
│ │ │ └── IDEWorkspaceChecks.plist
│ └── xcshareddata
│ │ └── xcschemes
│ │ └── Runner.xcscheme
├── Runner.xcworkspace
│ ├── contents.xcworkspacedata
│ └── xcshareddata
│ │ └── IDEWorkspaceChecks.plist
├── Runner
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ │ └── AppIcon.appiconset
│ │ │ ├── Contents.json
│ │ │ ├── app_icon_1024.png
│ │ │ ├── app_icon_128.png
│ │ │ ├── app_icon_16.png
│ │ │ ├── app_icon_256.png
│ │ │ ├── app_icon_32.png
│ │ │ ├── app_icon_512.png
│ │ │ └── app_icon_64.png
│ ├── Base.lproj
│ │ └── MainMenu.xib
│ ├── Configs
│ │ ├── AppInfo.xcconfig
│ │ ├── Debug.xcconfig
│ │ ├── Release.xcconfig
│ │ └── Warnings.xcconfig
│ ├── DebugProfile.entitlements
│ ├── Info.plist
│ ├── MainFlutterWindow.swift
│ ├── Release.entitlements
│ └── de.lproj
│ │ └── MainMenu.strings
└── RunnerTests
│ └── RunnerTests.swift
├── pubspec.lock
├── pubspec.yaml
├── test
└── widget_test.dart
├── web
├── favicon.png
├── icons
│ ├── Icon-192.png
│ ├── Icon-512.png
│ ├── Icon-maskable-192.png
│ └── Icon-maskable-512.png
├── index.html
└── manifest.json
└── windows
├── .gitignore
├── CMakeLists.txt
├── flutter
├── CMakeLists.txt
├── generated_plugin_registrant.cc
├── generated_plugin_registrant.h
└── generated_plugins.cmake
└── runner
├── CMakeLists.txt
├── Runner.rc
├── flutter_window.cpp
├── flutter_window.h
├── main.cpp
├── resource.h
├── resources
└── app_icon.ico
├── runner.exe.manifest
├── utils.cpp
├── utils.h
├── win32_window.cpp
└── win32_window.h
/.github/workflows/clean-workflow.yaml:
--------------------------------------------------------------------------------
1 | name: Clean workflow
2 |
3 | on: workflow_dispatch
4 |
5 | env:
6 | REGISTRY: ghcr.io
7 | IMAGE_NAME: ${{ github.repository }}
8 |
9 | jobs:
10 | clean_images:
11 | runs-on: ubuntu-latest
12 |
13 | permissions:
14 | contents: read
15 | packages: write
16 | id-token: write
17 |
18 | steps:
19 | - name: Login to GitHub Container Registry
20 | uses: docker/login-action@v3
21 | with:
22 | registry: ${{ env.REGISTRY }}
23 | username: ${{ github.actor }}
24 | password: ${{ secrets.GITHUB_TOKEN }}
25 |
26 | - name: Remove untagged images
27 | uses: dataaxiom/ghcr-cleanup-action@v1
28 | with:
29 | delete-untagged: true
30 | token: ${{ secrets.GITHUB_TOKEN }}
31 | package: flavormate-webapp
32 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Miscellaneous
2 | *.class
3 | *.log
4 | *.pyc
5 | *.swp
6 | .DS_Store
7 | .atom/
8 | .build/
9 | .buildlog/
10 | .history
11 | .svn/
12 | .swiftpm/
13 | migrate_working_dir/
14 |
15 | .build.env
16 |
17 | *.g.dart
18 | *.mapper.dart
19 |
20 | # build assets
21 | build_assets/android/keystore
22 | android/key.properties
23 |
24 | # IntelliJ related
25 | *.iml
26 | *.ipr
27 | *.iws
28 | .idea/
29 |
30 | # The .vscode folder contains launch configuration and tasks you configure in
31 | # VS Code which you may wish to be included in version control, so this line
32 | # is commented out by default.
33 | #.vscode/
34 |
35 | # Flutter/Dart/Pub related
36 | **/doc/api/
37 | **/ios/Flutter/.last_build_id
38 | .dart_tool/
39 | .flutter-plugins
40 | .flutter-plugins-dependencies
41 | .pub-cache/
42 | .pub/
43 | /build/
44 |
45 | # Symbolication related
46 | app.*.symbols
47 |
48 | # Obfuscation related
49 | app.*.map.json
50 |
51 | # Android Studio will place build artifacts here
52 | /android/app/debug
53 | /android/app/profile
54 | /android/app/release
55 |
--------------------------------------------------------------------------------
/android/.gitignore:
--------------------------------------------------------------------------------
1 | gradle-wrapper.jar
2 | /.gradle
3 | /captures/
4 | /gradlew
5 | /gradlew.bat
6 | /local.properties
7 | GeneratedPluginRegistrant.java
8 |
9 | # Remember to never publicly share your keystore.
10 | # See https://flutter.dev/to/reference-keystore
11 | key.properties
12 | **/*.keystore
13 | **/*.jks
14 |
--------------------------------------------------------------------------------
/android/app/src/debug/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/android/app/src/main/kotlin/de/thenus/cookbook_app/MainActivity.kt:
--------------------------------------------------------------------------------
1 | package de.flavormate
2 |
3 | import io.flutter.embedding.android.FlutterActivity
4 |
5 | class MainActivity : FlutterActivity()
6 |
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-hdpi/ic_launcher_background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/android/app/src/main/res/drawable-hdpi/ic_launcher_background.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-hdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/android/app/src/main/res/drawable-hdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-hdpi/ic_launcher_monochrome.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/android/app/src/main/res/drawable-hdpi/ic_launcher_monochrome.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-mdpi/ic_launcher_background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/android/app/src/main/res/drawable-mdpi/ic_launcher_background.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-mdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/android/app/src/main/res/drawable-mdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-mdpi/ic_launcher_monochrome.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/android/app/src/main/res/drawable-mdpi/ic_launcher_monochrome.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-v21/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-xhdpi/ic_launcher_background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/android/app/src/main/res/drawable-xhdpi/ic_launcher_background.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-xhdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/android/app/src/main/res/drawable-xhdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-xhdpi/ic_launcher_monochrome.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/android/app/src/main/res/drawable-xhdpi/ic_launcher_monochrome.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-xxhdpi/ic_launcher_background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/android/app/src/main/res/drawable-xxhdpi/ic_launcher_background.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-xxhdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/android/app/src/main/res/drawable-xxhdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-xxhdpi/ic_launcher_monochrome.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/android/app/src/main/res/drawable-xxhdpi/ic_launcher_monochrome.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-xxxhdpi/ic_launcher_background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/android/app/src/main/res/drawable-xxxhdpi/ic_launcher_background.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-xxxhdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/android/app/src/main/res/drawable-xxxhdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-xxxhdpi/ic_launcher_monochrome.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/android/app/src/main/res/drawable-xxxhdpi/ic_launcher_monochrome.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
8 |
9 |
10 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/values-night/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
15 |
18 |
19 |
--------------------------------------------------------------------------------
/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
15 |
18 |
19 |
--------------------------------------------------------------------------------
/android/app/src/profile/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/android/build.gradle:
--------------------------------------------------------------------------------
1 | allprojects {
2 | repositories {
3 | google()
4 | mavenCentral()
5 | }
6 | }
7 |
8 | rootProject.buildDir = "../build"
9 | subprojects {
10 | project.buildDir = "${rootProject.buildDir}/${project.name}"
11 | }
12 | subprojects {
13 | project.evaluationDependsOn(":app")
14 | }
15 |
16 | tasks.register("clean", Delete) {
17 | delete rootProject.buildDir
18 | }
19 |
--------------------------------------------------------------------------------
/android/gradle.properties:
--------------------------------------------------------------------------------
1 | org.gradle.jvmargs=-Xmx4G -XX:MaxMetaspaceSize=2G -XX:+HeapDumpOnOutOfMemoryError
2 | android.useAndroidX=true
3 | android.enableJetifier=true
4 | android.defaults.buildfeatures.buildconfig=true
5 | android.nonTransitiveRClass=false
6 | android.nonFinalResIds=false
7 |
--------------------------------------------------------------------------------
/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Sat Sep 28 21:27:14 CEST 2024
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip
5 | zipStoreBase=GRADLE_USER_HOME
6 | zipStorePath=wrapper/dists
7 |
--------------------------------------------------------------------------------
/android/settings.gradle:
--------------------------------------------------------------------------------
1 | pluginManagement {
2 | def flutterSdkPath = {
3 | def properties = new Properties()
4 | file("local.properties").withInputStream { properties.load(it) }
5 | def flutterSdkPath = properties.getProperty("flutter.sdk")
6 | assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
7 | return flutterSdkPath
8 | }()
9 |
10 | includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")
11 |
12 | repositories {
13 | google()
14 | mavenCentral()
15 | gradlePluginPortal()
16 | }
17 | }
18 |
19 | plugins {
20 | id "dev.flutter.flutter-plugin-loader" version "1.0.0"
21 | id "com.android.application" version '8.6.1' apply false
22 | id "org.jetbrains.kotlin.android" version "2.0.20" apply false
23 | }
24 |
25 | include ":app"
26 |
--------------------------------------------------------------------------------
/assets/icons/bring.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/assets/icons/bring.png
--------------------------------------------------------------------------------
/assets/icons/logo_transparent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/assets/icons/logo_transparent.png
--------------------------------------------------------------------------------
/assets/images/no_image.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/assets/images/no_image.png
--------------------------------------------------------------------------------
/assets/web/backend_url.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/assets/web/backend_url.txt
--------------------------------------------------------------------------------
/build_assets/docker/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM nginxinc/nginx-unprivileged
2 |
3 | COPY build/web /usr/share/nginx/html/
4 |
5 | USER root
6 |
7 | RUN chown 101:101 /usr/share/nginx/html/assets/assets/web/backend_url.txt
8 |
9 | USER 101
10 |
11 | COPY build_assets/docker/entrypoint.sh /
12 |
13 | SHELL ["/bin/bash", "-c"]
14 | ENTRYPOINT sh /entrypoint.sh
15 |
--------------------------------------------------------------------------------
/build_assets/docker/entrypoint.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | echo "Setting backend url to $BACKEND_URL"
4 | echo "$BACKEND_URL" > /usr/share/nginx/html/assets/assets/web/backend_url.txt
5 | nginx -g 'daemon off;'
6 |
--------------------------------------------------------------------------------
/build_assets/icons/android/adaptive_background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/build_assets/icons/android/adaptive_background.png
--------------------------------------------------------------------------------
/build_assets/icons/android/adaptive_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/build_assets/icons/android/adaptive_foreground.png
--------------------------------------------------------------------------------
/build_assets/icons/android/light_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/build_assets/icons/android/light_icon.png
--------------------------------------------------------------------------------
/build_assets/icons/android/monochrome.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/build_assets/icons/android/monochrome.png
--------------------------------------------------------------------------------
/build_assets/icons/ios/dark_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/build_assets/icons/ios/dark_icon.png
--------------------------------------------------------------------------------
/build_assets/icons/ios/light_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/build_assets/icons/ios/light_icon.png
--------------------------------------------------------------------------------
/build_assets/icons/ios/tinted_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/build_assets/icons/ios/tinted_icon.png
--------------------------------------------------------------------------------
/build_assets/icons/macos/light_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/build_assets/icons/macos/light_icon.png
--------------------------------------------------------------------------------
/build_assets/icons/web/light_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/build_assets/icons/web/light_icon.png
--------------------------------------------------------------------------------
/build_assets/icons/windows/light_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/build_assets/icons/windows/light_icon.png
--------------------------------------------------------------------------------
/build_assets/ios/ExportOptions.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | destination
6 | export
7 | manageAppVersionAndBuildNumber
8 |
9 | method
10 | app-store-connect
11 | provisioningProfiles
12 |
13 | de.flavormate
14 | FlavorMate (Connect)
15 |
16 | signingCertificate
17 | Apple Distribution
18 | signingStyle
19 | manual
20 | stripSwiftSymbols
21 |
22 | teamID
23 | 7LZRXMAGPW
24 | uploadSymbols
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/devtools_options.yaml:
--------------------------------------------------------------------------------
1 | description: This file stores settings for Dart & Flutter DevTools.
2 | documentation: https://docs.flutter.dev/tools/devtools/extensions#configure-extension-enablement-states
3 | extensions:
4 |
--------------------------------------------------------------------------------
/docs/features/dashboard/phone.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/docs/features/dashboard/phone.png
--------------------------------------------------------------------------------
/docs/features/dashboard/tablet.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/docs/features/dashboard/tablet.png
--------------------------------------------------------------------------------
/docs/features/diet/phone.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/docs/features/diet/phone.png
--------------------------------------------------------------------------------
/docs/features/diet/tablet.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/docs/features/diet/tablet.png
--------------------------------------------------------------------------------
/docs/features/editor/phone.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/docs/features/editor/phone.png
--------------------------------------------------------------------------------
/docs/features/editor/tablet.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/docs/features/editor/tablet.png
--------------------------------------------------------------------------------
/docs/features/library/phone.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/docs/features/library/phone.png
--------------------------------------------------------------------------------
/docs/features/library/tablet.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/docs/features/library/tablet.png
--------------------------------------------------------------------------------
/docs/features/recipe/phone.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/docs/features/recipe/phone.png
--------------------------------------------------------------------------------
/docs/features/recipe/tablet.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/docs/features/recipe/tablet.png
--------------------------------------------------------------------------------
/docs/features/theme/phone.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/docs/features/theme/phone.png
--------------------------------------------------------------------------------
/docs/features/theme/tablet.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/docs/features/theme/tablet.png
--------------------------------------------------------------------------------
/examples/docker-compose-traefik.yaml:
--------------------------------------------------------------------------------
1 | services:
2 | frontend:
3 | container_name: flavormate_webapp
4 | image: ghcr.io/flavormate/flavormate-webapp
5 | restart: unless-stopped
6 | environment:
7 | - BACKEND_URL=https://example.com
8 | labels:
9 | - "traefik.enable=true"
10 | - "traefik.http.routers.flavormate_webapp.rule=(Host(`app.example.com`))"
11 | - "traefik.http.routers.flavormate_webapp.tls=true"
12 | - "traefik.docker.network=proxy"
13 | - "traefik.http.services.flavormate_webapp.loadbalancer.server.port=8080"
14 | networks:
15 | - proxy
16 | healthcheck:
17 | test: [ "CMD-SHELL", "curl -so /dev/null http://localhost:8080/ || exit 1" ]
18 | interval: 20s
19 | timeout: 5s
20 | retries: 5
21 | start_period: 5s
22 |
23 |
24 | networks:
25 | proxy:
26 | external: true
27 |
--------------------------------------------------------------------------------
/examples/docker-compose.yaml:
--------------------------------------------------------------------------------
1 | services:
2 | frontend:
3 | container_name: flavormate_webapp
4 | image: ghcr.io/flavormate/flavormate-webapp
5 | restart: unless-stopped
6 | environment:
7 | - BACKEND_URL=https://example.com
8 | ports:
9 | - 8080:8080
10 | healthcheck:
11 | test: [ "CMD-SHELL", "curl -so /dev/null http://localhost:8080/ || exit 1" ]
12 | interval: 20s
13 | timeout: 5s
14 | retries: 5
15 | start_period: 5s
16 |
--------------------------------------------------------------------------------
/ios/.gitignore:
--------------------------------------------------------------------------------
1 | **/dgph
2 | *.mode1v3
3 | *.mode2v3
4 | *.moved-aside
5 | *.pbxuser
6 | *.perspectivev3
7 | **/*sync/
8 | .sconsign.dblite
9 | .tags*
10 | **/.vagrant/
11 | **/DerivedData/
12 | Icon?
13 | **/Pods/
14 | **/.symlinks/
15 | profile
16 | xcuserdata
17 | **/.generated/
18 | Flutter/App.framework
19 | Flutter/Flutter.framework
20 | Flutter/Flutter.podspec
21 | Flutter/Generated.xcconfig
22 | Flutter/ephemeral/
23 | Flutter/app.flx
24 | Flutter/app.zip
25 | Flutter/flutter_assets/
26 | Flutter/flutter_export_environment.sh
27 | ServiceDefinitions.json
28 | Runner/GeneratedPluginRegistrant.*
29 |
30 | # Exceptions to above rules.
31 | !default.mode1v3
32 | !default.mode2v3
33 | !default.pbxuser
34 | !default.perspectivev3
35 |
--------------------------------------------------------------------------------
/ios/Flutter/AppFrameworkInfo.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | App
9 | CFBundleIdentifier
10 | io.flutter.flutter.app
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | App
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1.0
23 | MinimumOSVersion
24 | 12.0
25 |
26 |
27 |
--------------------------------------------------------------------------------
/ios/Flutter/Debug.xcconfig:
--------------------------------------------------------------------------------
1 | #include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"
2 | #include "Generated.xcconfig"
3 |
--------------------------------------------------------------------------------
/ios/Flutter/Release.xcconfig:
--------------------------------------------------------------------------------
1 | #include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"
2 | #include "Generated.xcconfig"
3 |
--------------------------------------------------------------------------------
/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ios/Runner.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ios/Runner/AppDelegate.swift:
--------------------------------------------------------------------------------
1 | import Flutter
2 | import UIKit
3 |
4 | @main
5 | @objc class AppDelegate: FlutterAppDelegate {
6 | override func application(
7 | _ application: UIApplication,
8 | didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
9 | ) -> Bool {
10 | GeneratedPluginRegistrant.register(with: self)
11 | return super.application(application, didFinishLaunchingWithOptions: launchOptions)
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-38x38@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-38x38@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-38x38@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-38x38@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-64x64@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-64x64@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-64x64@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-64x64@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-68x68@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-68x68@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-1024x1024@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-1024x1024@1x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-20x20@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-20x20@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-20x20@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-20x20@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-29x29@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-29x29@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-29x29@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-29x29@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-38x38@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-38x38@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-38x38@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-38x38@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-40x40@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-40x40@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-40x40@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-40x40@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-60x60@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-60x60@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-60x60@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-60x60@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-64x64@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-64x64@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-64x64@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-64x64@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-68x68@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-68x68@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-76x76@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-76x76@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-83.5x83.5@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Dark-83.5x83.5@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-1024x1024@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-1024x1024@1x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-20x20@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-20x20@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-20x20@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-20x20@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-29x29@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-29x29@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-29x29@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-29x29@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-38x38@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-38x38@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-38x38@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-38x38@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-40x40@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-40x40@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-40x40@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-40x40@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-60x60@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-60x60@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-60x60@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-60x60@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-64x64@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-64x64@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-64x64@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-64x64@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-68x68@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-68x68@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-76x76@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-76x76@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-83.5x83.5@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-Tinted-83.5x83.5@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "LaunchImage.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "LaunchImage@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "LaunchImage@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlavorMate/flavormate-app/112c9e45370763cd3377b82598ac8c2bc5488f32/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md:
--------------------------------------------------------------------------------
1 | # Launch Screen Assets
2 |
3 | You can customize the launch screen with your own desired assets by cookbook_appacing the image files in this directory.
4 |
5 | You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`,
6 | selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images.
7 |
--------------------------------------------------------------------------------
/ios/Runner/Runner-Bridging-Header.h:
--------------------------------------------------------------------------------
1 | #import "GeneratedPluginRegistrant.h"
2 |
--------------------------------------------------------------------------------
/ios/Runner/Runner.entitlements:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | com.apple.developer.associated-domains
6 |
7 | webcredentials:flavormate.de
8 | applinks:flavormate.de
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/ios/Runner/de.lproj/LaunchScreen.strings:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/ios/Runner/de.lproj/Main.strings:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/ios/RunnerTests/RunnerTests.swift:
--------------------------------------------------------------------------------
1 | import Flutter
2 | import UIKit
3 | import XCTest
4 |
5 | class RunnerTests: XCTestCase {
6 |
7 | func testExample() {
8 | // If you add code to the Runner application, consider adding tests here.
9 | // See https://developer.apple.com/documentation/xctest for more information about using XCTest.
10 | }
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/l10n.yaml:
--------------------------------------------------------------------------------
1 | arb-dir: lib/l10n/arb
2 | output-dir: lib/l10n/generated
3 | template-arb-file: app_en.arb
4 | output-localization-file: l10n.dart
5 | output-class: L10n
6 | synthetic-package: false
7 | nullable-getter: false
8 |
--------------------------------------------------------------------------------
/lib/clients/authors_client.dart:
--------------------------------------------------------------------------------
1 | import 'package:flavormate/interfaces/a_search_client.dart';
2 | import 'package:flavormate/models/author/author.dart';
3 | import 'package:flavormate/models/pageable/pageable.dart';
4 | import 'package:flavormate/models/recipe/recipe.dart';
5 |
6 | class AuthorsClient extends ASearchClient {
7 | AuthorsClient({
8 | required super.httpClient,
9 | required super.baseURL,
10 | required super.parser,
11 | });
12 |
13 | Future> findRecipesInAuthor(
14 | int id, {
15 | required int page,
16 | }) async {
17 | final params = getParams({
18 | 'size': 6,
19 | 'sortBy': 'r.label',
20 | 'sortDirection': 'ASC',
21 | 'page': page,
22 | });
23 |
24 | final response = await httpClient.get('$baseURL/$id/recipes?$params');
25 |
26 | return Pageable.fromMap(response.data!, RecipeMapper.fromMap);
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/lib/clients/bring_client.dart:
--------------------------------------------------------------------------------
1 | import 'package:dio/dio.dart';
2 |
3 | class BringClient {
4 | final Dio httpClient;
5 | final String baseURL;
6 |
7 | BringClient({required this.httpClient, required this.baseURL});
8 |
9 | Future post(
10 | String server,
11 | int id,
12 | int baseServing,
13 | int requestedServing,
14 | ) async {
15 | final api = '$server$baseURL/$id/$requestedServing';
16 |
17 | final response = await httpClient.post(
18 | 'https://api.getbring.com/rest/bringrecipes/deeplink',
19 | data: {
20 | 'url': api,
21 | 'baseQuantity': requestedServing,
22 | 'requestedQuantity': requestedServing,
23 | 'source': 'app',
24 | },
25 | );
26 |
27 | return response.data['deeplink'];
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/lib/clients/category_group_client.dart:
--------------------------------------------------------------------------------
1 | import 'package:dio/dio.dart';
2 | import 'package:flavormate/models/categories/category_group.dart';
3 | import 'package:flutter/foundation.dart';
4 |
5 | class CategoryGroupClient {
6 | @protected
7 | final Dio httpClient;
8 | @protected
9 | final String baseURL;
10 | @protected
11 | final CategoryGroup Function(Map) parser;
12 |
13 | CategoryGroupClient({
14 | required this.httpClient,
15 | required this.baseURL,
16 | required this.parser,
17 | });
18 |
19 | Future> findAll({required String language}) async {
20 | final response = await httpClient.get>(
21 | '$baseURL/?language=$language',
22 | );
23 |
24 | List