Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: TomBursch/kitchenowl
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.0.9
Choose a base ref
...
head repository: TomBursch/kitchenowl
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref
Loading
Showing 1,405 changed files with 96,134 additions and 6,847 deletions.
114 changes: 114 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
# General files
.git
.github

# KitchenOwl
icons/
docs/
kitchenowl/fedora/
kitchenowl/ios/
kitchenowl/android/
kitchenowl/linux/
kitchenowl/macos/
kitchenowl/windows/

backend/upload/
backend/database.db

# .gitignore here:
# Miscellaneous
*.class
*.lock
*.log
*.pyc
*.swp
.DS_Store
.atom/
.buildlog/
.history
.svn/
.env*

# IntelliJ related
*.iml
*.ipr
*.iws
.idea/

# Visual Studio Code related
.classpath
.project
.settings/
.vscode/
*.code-workspace

# Flutter repo-specific
/bin/cache/
/bin/internal/bootstrap.bat
/bin/internal/bootstrap.sh
/bin/mingit/
/dev/benchmarks/mega_gallery/
/dev/bots/.recipe_deps
/dev/bots/android_tools/
/dev/devicelab/ABresults*.json
/dev/docs/doc/
/dev/docs/flutter.docs.zip
/dev/docs/lib/
/dev/docs/pubspec.yaml
/dev/integration_tests/**/xcuserdata
/dev/integration_tests/**/Pods
/packages/flutter/coverage/
version
analysis_benchmark.json

# packages file containing multi-root paths
.packages.generated

# Flutter/Dart/Pub related
**/doc/api/
.dart_tool/
.flutter-plugins
.flutter-plugins-dependencies
**/generated_plugin_registrant.dart
.packages
.pub-cache/
.pub/
build/
flutter_*.png
linked_*.ds
unlinked.ds
unlinked_spec.ds

# Android related
**/android/**/gradle-wrapper.jar
.gradle/
**/android/captures/
**/android/gradlew
**/android/gradlew.bat
**/android/local.properties
**/android/**/GeneratedPluginRegistrant.java
**/android/key.properties
*.jks

# Coverage
coverage/

# Symbols
app.*.symbols

# MkDocs
site/

# Development
.devcontainer

# Test related files
.tox
tests

# Other virtualization methods
venv
.vagrant

# Temporary files
**/__pycache__
10 changes: 10 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
github: tombursch # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
# patreon: # Replace with a single Patreon username
# open_collective: # Replace with a single Open Collective username
# ko_fi: # Replace with a single Ko-fi username
# tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
# community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: tombursch # Replace with a single Liberapay username
# issuehunt: # Replace with a single IssueHunt username
# otechie: # Replace with a single Otechie username
custom: ["https://www.paypal.com/donate/?hosted_button_id=XWDQH428RLANJ"] # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
75 changes: 75 additions & 0 deletions .github/ISSUE_TEMPLATE/bug.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
name: Bug
description: Report a bug
title: "Bug: "
labels: ["bug"]
projects: ["TomBursch/1"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!
- type: dropdown
id: urgent
attributes:
label: Is this urgent?
description: |
Is this a critical bug, or do you need this fixed urgently?
options:
- "No"
- "Yes"
default: 0
- type: dropdown
id: affected-parts
attributes:
label: What parts are affected
description: |
Is this related to the app or server?
options:
- "Frontend"
- "Backend"
- "Both"
validations:
required: true
- type: input
id: server-version
attributes:
label: What is the server version
validations:
required: true
- type: input
id: client-version
attributes:
label: What is the client version
validations:
required: true
- type: dropdown
id: client-platform
attributes:
label: What platform are you using
multiple: true
options:
- "Android"
- "iOS"
- "Web"
- "Mac"
- "Linux"
- "Windows"
- type: textarea
id: problem
attributes:
label: "What's the problem 🤔"
placeholder: "That feature does not work..."
validations:
required: true
- type: textarea
id: logs
attributes:
label: Share your logs
description: If you have any relevant logs you can share them here.
render: Shell
- type: textarea
id: config
attributes:
label: Share your configuration
description: Share your configuration such as `docker-compose.yml`. Ensure to remove URLs/IPs and Secrects.
render: yml
21 changes: 21 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: Feature request
description: Suggest a feature to add to KitchenOwl
title: "Feature request: "
labels: ["enhancement"]
projects: ["TomBursch/1"]
body:
- type: textarea
id: description
attributes:
label: "What's the feature 🧐"
placeholder: "Guess what my roomates want to eat"
validations:
required: true
- type: textarea
id: extra
attributes:
label: "Extra information and references"
placeholder: |
- I tried `docker run something` and it doesn't work
- That [url](https://github.com/TomBursch/kitchenowl/) is interesting
19 changes: 19 additions & 0 deletions .github/ISSUE_TEMPLATE/wiki_issue.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: Documentation issue
description: Report an issue with the documentation (including missing information)
title: "Docs: "
labels: ["documentation"]
body:
- type: input
id: url
attributes:
label: "URL to the Wiki page"
placeholder: "https://docs.kitchenowl.org/get-started/"
validations:
required: false
- type: textarea
id: description
attributes:
label: "What's the issue?"
validations:
required: true

63 changes: 63 additions & 0 deletions .github/workflows/deploy_app_store.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: Deploy to AppStore
on:
workflow_dispatch:
# Enable manual run
inputs:
lane:
description: "Fastlane lane to use"
required: true
default: "internal"
push:
tags:
- "v*"
- "beta-v*"

jobs:
fastlane-deploy:
runs-on: macos-latest
steps:
# Set up Flutter.
- name: Clone Flutter repository with stable channel
uses: subosito/flutter-action@v2
with:
channel: stable
- run: flutter doctor -v

# Checkout gallery code and get packages.
- name: Checkout code
uses: actions/checkout@v4
- run: flutter packages get
- run: pod install
working-directory: ios

# Decide track internal|beta|production (not in use yet)
- name: Decide track
id: track
run: |
if [[ $REF == "refs/tags/v"* ]]
then
echo "track=production" >> $GITHUB_ENV
elif [[ $REF == "refs/tags/beta-v"* ]]
then
echo "track=beta" >> $GITHUB_ENV
else
echo "track=internal" >> $GITHUB_ENV
fi
env:
REF: ${{ github.ref }}

# Setup Ruby, Bundler, and Gemfile dependencies
- name: Setup Fastlane
uses: ruby/setup-ruby@v1
with:
ruby-version: "3.2"
bundler-cache: true
working-directory: ios

# Build and deploy with Fastlane (by default, to internal track) 🚀.
# Naturally, promote_to_production only deploys.
- run: bundle exec fastlane ${{ github.event.inputs.lane || 'internal' }}
env:
FASTLANE_USER: ${{ secrets.APPLE_USER_EMAIL }}
FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD: ${{ secrets.APPLE_APP_SPECIFIC_PASSWORD }}
working-directory: ios
70 changes: 70 additions & 0 deletions .github/workflows/deploy_backend_docker_hub.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
name: CI deploy backend to Docker Hub

# Controls when the workflow will run
on:
# Triggers the workflow on push events but only for tags
push:
branches: [ main ]
paths:
- backend/**
tags:
- "v*"
- "beta-v*"

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

jobs:
# This workflow contains a single job called "build"
build:
# The type of runner that the job will run on
runs-on: ubuntu-latest

# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v4

- name: decide docker tags
id: dockertag
run: |
if [[ $REF == "refs/tags/v"* ]]
then
echo "tags=$BASE_TAG:latest, $BASE_TAG:beta, $BASE_TAG:${REF#refs/tags/}" >> $GITHUB_ENV
elif [[ $REF == "refs/tags/beta-v"* ]]
then
echo "tags=$BASE_TAG:beta, $BASE_TAG:${REF#refs/tags/}" >> $GITHUB_ENV
else
echo "tags=$BASE_TAG:dev" >> $GITHUB_ENV
fi
env:
REF: ${{ github.ref }}
BASE_TAG: ${{ secrets.DOCKER_HUB_USERNAME }}/kitchenowl-backend

- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_HUB_USERNAME }}
password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}

- name: Set up QEMU
uses: docker/setup-qemu-action@v3

- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v3

- name: Build and push
id: docker_build
uses: docker/build-push-action@v6
with:
context: ./backend
file: backend/Dockerfile
platforms: linux/amd64,linux/arm64 #,linux/arm/v7 #,linux/386,linux/arm/v6
push: true
tags: ${{ env.tags }}
# cache-from: type=registry,ref=${{ secrets.DOCKER_HUB_USERNAME }}/kitchenowl-backend:buildcache
# cache-to: type=registry,ref=${{ secrets.DOCKER_HUB_USERNAME }}/kitchenowl-backend:buildcache,mode=max

- name: Image digest
run: echo ${{ steps.docker_build.outputs.digest }}
Loading