Skip to content

jjsoviet/lnch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 

Repository files navigation

LNCH

Table of Contents

What is it?

LNCH is a food randomizer web application built on Meteor.JS and using the Google Maps JS API, and designed to be very simple to use. Current design uses Alvaro Trigo's fullPage.js framework.

Ever wondered where you'd want to go for lunch on your break or when friends are asking you out? Leave the decision making to this application - simply set a general food genre and maximum distance from your location, and it will pick a place for you.

How does it work?

LNCH has only two main parameters that users must provide: a food genre (barbecue, sushi, etc.) and a set maximum radius from the current current location. The app then "randomly" picks an eatery based on those criteria, and you can either navigate to it or reroll for a different place.

Should one decide on a place to eat, pressing on the LNCH! button launches either the Google Maps application if installed on the phone, or a new tab on the browser with the correct Google Maps coordinates.

And since LNCH is location dependent, it is required for the user to provide it location permissions in order to determine his/her location.

Screenshots

Splash Section

Splash 1 Splash 2

###Search Results Section Result 1 Result 2

Issues

High Priority

  • Adjusting the map view upon orientation change or window resize is still janky; the current algorithm tries to pan and zoom out the map when start and end markers get overlapped by UI elements or go out of the viewport, and it's still imperfect - see the current calculateOffset() function for this.

Medium Priority

  • UI elements not adjusting according to mobile device orientation, must be something with the CSS media queries.
  • Images loading on the splash page take a while to load due to resolution, causing the transition between images disconnected; may need to implement something like lazy loading.

Low Priority

  • Some UI designs not fully fleshed out or look bad on mobile, such as modal popups and slide animations.
  • May need to implement image results for the selected eateries, still not sure where to place them on the viewport.

Updates

November 15, 2017

Been a while since I've posted updates, I'll have to be more consistent in announcing new features/fixes. Anyway, as of this date I've been implementing some updates to the application. Some of those are:

  • The JavaScript files now use ES6/ES2015 syntax such as block level variables and arrow functions
  • Orientation calculation has been improved, now works more consistently for mobile devices
  • Some UI quirks like popup modals have been improved and hopefully fixed

I've decided against adding another UI element, which is the image for the resulting establishment. It will take too much space in the viewport and will be especially cramped on mobile.

Orientation calculation, while improved, is still imperfect so I haven't checked the task off the list for now. Might need a complete rewrite to finally make it work.

Try It

If you want to try out my current build of the app (Nov. 15, 2017), then just go to this URL:

https://lnch.herokuapp.com/

It's not perfect, and hasn't been tested too frequently. If you have some suggestions/bugs, just let me know! I appreciate the feedback!

About

Lunch randomizer app

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published