A simple application for retrieving lunch menus of selected restaurants around FIT CTU

Related tags

Core Data LunchGuy
Overview

codebeat badge

lunch_guy-ios (in progress)

A simple application for retrieving lunch menus of selected restaurants using https://github.com/tomaskadlec/lunch_guy API

Screenshots

1

2

Localization

The app is currently localized into Czech and English. We use SwiftGen to generate localization enums which are used acrossed whole app. If you updated the Localization.strings files, just switch Xcode target to Localization and build it. While editing these files, remember to always edit all languages accordingly - but don't worry, Danger will check that for you once you create the pull request.

Comments
  • Guideline 4.2.2 - Design - Minimum Functionality

    Guideline 4.2.2 - Design - Minimum Functionality

    We noticed that your app’s main functionality is to market your service, with limited or no user-facing interactive features or functionality. Apps that are primarily marketing materials or advertisements are not appropriate for the App Store.

    Please see attached screenshots for details.

    The next submission of this app may require a longer review time.

    Next Steps

    • Review the Minimum Functionality section of the App Store Review Guidelines.
    • Ensure your app is compliant with all sections of the App Store Review Guidelines and the Terms & Conditions of the Apple Developer Program.
    • Once your app is fully compliant, resubmit your app for review.

    Submitting apps designed to mislead or harm customers or evade the review process may result in the termination of your Apple Developer Program account. Review the Terms & Conditions of the Apple Developer Program to learn more about our policies regarding termination.

    If you believe your app is compliant with the App Store Review Guidelines, you may submit an appeal. Alternatively, you may provide additional details about your app by replying directly to this message.

    WTF 
    opened by syky27 18
  • License issues

    License issues

    This repo has no license information, making it in fact legally not redistributable.

    Also, when redistributing the binary form, I'm quite confident you do not follow licenses of used libraries, making it in fact illegal.

    opened by hroncok 13
  • Project cleanup

    Project cleanup

    Hey @syky27, as mentioned in #11, I did some cleanup at the project:

    • [x] Remove dependencies source from repository - #12
    • [x] Remove unnecessary dependencies - #11
      • ~I did not remove SwiftyJSON library for now, since the Swift 4 JSON handling is not very convenient in this case~
    • [x] Refactor the network layer to be less complicated
    • [x] Refactor model objects to into separate files, use multiple menus for one restaurant (simulates food categories)
    • [x] Remove unused files and test targets
    • [x] Map Xcode project to match 1:1 file system folder structure (default for Xcode 9)
    • [x] Move parsing logic out of APIWrapper
    • [x] Fix commit messages to match repo style
    • [x] Basic error handling

    ~Since not everything is done, marked the PR as WIP.~ Feel free to add comments and/or proposals. When this PR is merged, issues #8, #11 and #12 may be closed.

    opened by josefdolezal 7
  • Adds strings localization

    Adds strings localization

    This PR introduces CZ/EN localization discussed in #22. All hardcoded strings are now replaced with localized strings based on user's phone preferences.

    Localization string keys are converted to name-spaced enum to ensure compile-time check of strings validity. The enums are generated with SwiftGen using aggregated Xcode target.

    I have also added Danger action, which checks whether both languages are updated together.

    ✅ The README is updated.

    opened by josefdolezal 6
  • Integrate maps view as an alternative to restaurants list

    Integrate maps view as an alternative to restaurants list

    Hey @syky27! I would like to open discussion about map of restaurants from obedar API.

    Context

    I am using LunchGuy few times a week and usually, I check only one or two restaurants, since I don't know where the rest of them is located. It would be nice to have:

    1. Map view with all restaurants from API
    2. Possibility to open restaurant in Google Maps/Apple Maps from menu (for details like ratings, web site, phone numbers, ...)

    Proposal

    Create new LocationProvider protocol which will return CLLocationCoordinate2D for given restaurant. I saw tomaskadlec/lunch_guy#54 and tomaskadlec/lunch_guy#58 and I know that it's not currently implemented at backend. However, the list of restaurants has now less than twenty items, so we can create static provider. It would simply match restaurant by its name and return coordinates from hardcoded set. Once the backend implements this feature, we can just swap implementation of LocationProvider.

    The UI would contain:

    1. Navigation bar item in restaurant list, which would switch between map view and list view
      • The map will show pins with restaurants with possibility show its name on tap and then open menu from that
      • This is similar to Yelp app
    2. Navigation bar item in restaurant menu, which would open action sheet with possibility to open Google Maps and Apple Maps

    What do you think?

    opened by josefdolezal 5
  • App localization

    App localization

    Hey @syky27, I would like to propose changes in app localization.

    Context

    Currently the app is only localized to Czech. However, some strings are displayed in English. We should implement separate localization for both languages and use the one that user has set as default in system preferences. We should also remove the string literals from controllers source code.

    Proposal

    Create separate localizable.strings files for Czech and English. Then, wen use SwiftGen to generate localization enums so we can get rid off string literals 🎉.

    As always, this issue is open for discussion and I can take care of implementation.

    opened by josefdolezal 4
  • Guideline 4.2.2 - Design - Minimum Functionality

    Guideline 4.2.2 - Design - Minimum Functionality

    I am trying to upload my app to app store. But it got rejected for two time now with "Guideline 4.2.2". I am attaching the screen shots below please suggest what i can do to make this approved.

    img_0540 img_0541 img_0547 img_0548 img_0549 img_0550

    if you want i can add you to testflight.

    opened by akhil7188 3
  • Bundle OSS licenses

    Bundle OSS licenses

    This PR adds OSS licenses into iOS Settings app. With this, LunchGuy finally comply to licenses included in its dependencies and fixes #4.

    The license plist files are autogenerated using LicensePlist tool which needs to be installed using homebrew explicitly. The Xcode project now also includes aggregated target which runs LicensePlist in background. If the tool is not installed, the target build fails.

    I also included action for Danger, which warns whenever the Podfile was updated, but the license plists remained unmodified.

    opened by josefdolezal 3
  • Restaurants map

    Restaurants map

    Hey @syky27! As discussed in #16, I started with implementation of static location provider for restaurants. Current state is visible on the attached image.

    group 2x

    PR roadmap:

    • [x] Create static location resolver for restaurants
    • [x] Create simple shared data storage
    • [x] Add possibility to switch between list and map views
    • [x] Add caption for pins on map
    • [x] Open restaurant menu from map
    • [x] Open Google Maps/Apple Maps with POI from restaurant menu
    • [x] Position map correctly when the app starts
    • [x] Add changelog entry
    opened by josefdolezal 3
  • Get rid of following dependencies

    Get rid of following dependencies

    pod 'SwiftyJSON' replace with swift4 native JSON Codable parsing

    pod 'RealmSwift' no need to persist anything, Realm was just for testing...

    pod 'SwiftFetchedResultsController' This is so useless...

    opened by syky27 3
  • Screen empty states

    Screen empty states

    Hey @syky, I would like to open discussion about empty screens design.

    Context

    Time to time, menus for some restaurants are not available and the screen is empty without any information.

    Proposal

    For restaurant list and menu detail, we may implement 'empty state'. This would just simple view with illustration and text like "No restaurant available." and "No menu for today.". This does not implement any new feature but makes better UX.

    Unfortunately, my taste in graphic is wild and I am not sure if I can design it nicely. I can give it a try, but it would be super cool if someone other made at least draft. If not, I can create some simple designs before implementing it.

    opened by josefdolezal 2
  • Guideline 4.2.2 - Design - Minimum Functionality

    Guideline 4.2.2 - Design - Minimum Functionality

    Hi. I made a program, and I wont to publish to app store, but app store rejected by Guideline 4.2.2 - Design - Minimum Functionality. And they wrote:

    Guideline 4.2.2 - Design - Minimum Functionality We still noticed that your app’s main functionality is to market your service, with limited or no user-facing interactive features or functionality. Apps that are primarily marketing materials or advertisements are not appropriate for the App Store.

    Next Steps

    We encourage you to review your app concept and work towards creating an app that offers customers an engaging and lasting experience that also meets the App Store’s high expectations for quality and functionality. For example, an app for a restaurant should offer more functionality beyond a standard mobile website that include its phone number, address, and hours. You should instead include functionality like table reservations, mobile ordering, etc. that do not currently exist on the mobile website.

    opened by muhammetn 1
  • This is death of Lunch Guy

    This is death of Lunch Guy

    Due the fact that API is not working and I am not willing to lay my hands on any PHP code I am letting this app to die.

    I might be willing to fix it once the API and scraper starts working again.

    If anyone wants to fix the api, here you go: https://github.com/tomaskadlec/lunch_guy

    opened by syky27 0
Releases(1.0.4)
Owner
Tomas Sykora, jr.
iOS Developer venturing into Flutter😱kinda loving but hatin' Dart 💩 Now: .NET Core & Angular 🤯 Teacher @cvut Head of @3DprintFIT C(E|T)o of @AJTY
Tomas Sykora, jr.
A feature-light wrapper around Core Data that simplifies common database operations.

Introduction Core Data Dandy is a feature-light wrapper around Core Data that simplifies common database operations. Feature summary Initializes and m

Fuzz Productions 33 May 11, 2022
Example repo of working with Core Data in a SwiftUI application

CoreData in SwiftUI This repository serves many purpose. But mostly so I can experiment with Core Data in SwiftUI, and also so I can use it show my ap

Donny Wals 4 Jan 30, 2022
BROKEN exercise/simulation of application for editing dynamic objects

Inspector This is an exercise, a simulation of a scenario. This application is a simplification. Application works with lists of dynamic objects with

Stefan Urbanek 0 Nov 26, 2021
Arctanyn 0 Dec 24, 2022
QueryKit, a simple type-safe Core Data query language.

QueryKit QueryKit, a simple type-safe Core Data query language. Usage QuerySet<Person>(context, "Person")

QueryKit 1.5k Dec 20, 2022
100% Swift Simple Boilerplate Free Core Data Stack. NSPersistentContainer

DATAStack helps you to alleviate the Core Data boilerplate. Now you can go to your AppDelegate remove all the Core Data related code and replace it wi

Nes 216 Jan 3, 2023
Simple IOS notes app written programmatically without storyboard using UIKit and CoreData

Notes Simple Notes app. Swift, UIKit, CoreData Description Simple IOS notes app

null 4 Dec 23, 2022
V2RayXS: A simple GUI for Xray on macOS

V2RayXS: A simple GUI for Xray on macOS

tzmax 272 Dec 31, 2022
Eat fit is a component for attractive data representation inspired by Google Fit

EatFit Check this article on our blog. Purpose Eat fit is a component for attractive data representation inspired by Google Fit. It is based on PageVi

Yalantis 657 Jan 5, 2023
ChidoriMenu - An easy way to add menus visually similar to iOS 14's Pull Down and Context Menus but with some added benefits

ChidoriMenu ?? ⚡️ An easy way to add popover menus visually similar to the Conte

Christian Selig 152 Dec 12, 2022
A beautiful radar view to show nearby items (users, restaurants, ...) with ripple animation, fully customizable

HGRippleRadarView Example To run the example project, clone the repo, and run pod install from the Example directory first. This project is inspired b

Hamza Ghazouani 352 Dec 4, 2022
The library allows to create simple popup menus

react-native-popup-menu This library allows to create simple popup menus Installation "react-native-popup-menu": "sergeymild/react-native-popup-menu"

SergeyMild 0 Aug 20, 2022
Interactive view transition to display menus with flowing and bouncing effects in Swift

FlowingMenu FlowingMenu provides an interactive transition manager to display menu with a flowing and bouncing effects. The Objective-C countepart is

Yannick Loriot 975 Dec 21, 2022
Turning on a VPN is always a painful experience on an iOS device due to the deep nested menus.

VPN On Turning on a VPN is always a painful experience on an iOS device due to the deep nested menus. This App installs a Today Widget into Notificati

Lex Tang 4.4k Dec 26, 2022
A modern iOS toast view that can fit your notification needs

CRToast CRToast is a library that allows you to easily create notifications that appear on top of or by pushing out the status bar or navigation bar.

Collin Ruffenach 4.2k Dec 30, 2022
A SwiftUI ScrollView that only scrolls if the content doesn't fit in the View

ScrollViewIfNeeded A SwiftUI ScrollView that only scrolls if the content doesn't fit in the View Installation Requirements iOS 13+ Swift Package Manag

Daniel Klöck 19 Dec 28, 2022
DGFadingLabel - A custom UILabel that fades away the end of your text when text is too large to fit within the label's frame

A custom UILabel that fades away the end of your text when text is too large to fit within the label's frame.

donggyu 4 Jun 10, 2022
A wrapper around UICollectionViewController enabling a declarative API around it's delegate methods using protocols.

Thunder Collection Thunder Collection is a useful framework which enables quick and easy creation of collection views in iOS using a declarative appro

3 SIDED CUBE 4 Nov 6, 2022
:octocat:💧 A slider widget with a popup bubble displaying the precise value selected. Swift UI library made by @Ramotion

FLUID SLIDER A slider widget with a popup bubble displaying the precise value selected written on Swift. We specialize in the designing and coding of

Ramotion 1.9k Dec 23, 2022