All Projects → UsainBloot → Wheel Of Lunch

UsainBloot / Wheel Of Lunch

HTML5 randomised spinning wheel to select a place to eat by using a RESTful API to fetch local places.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Wheel Of Lunch

Jspaint
🎨 Classic MS Paint, REVIVED + ✨Extras
Stars: ✭ 5,972 (+8431.43%)
Mutual labels:  html5, canvas
Canvas101
Learning Canvas series
Stars: ✭ 28 (-60%)
Mutual labels:  html5, canvas
Html5 Animation
Foundation HTML5 Animation with JavaScript example code and book exercises.
Stars: ✭ 667 (+852.86%)
Mutual labels:  html5, canvas
Planck.js
2D JavaScript Physics Engine
Stars: ✭ 4,149 (+5827.14%)
Mutual labels:  html5, canvas
Literallycanvas
A canvas in your browser. Literally.
Stars: ✭ 1,043 (+1390%)
Mutual labels:  html5, canvas
Html5
HTML5学习、总结、实践
Stars: ✭ 493 (+604.29%)
Mutual labels:  html5, canvas
H264 Live Player
A live h264 player for the browser (ideal for raspberrypi / raspicam )
Stars: ✭ 886 (+1165.71%)
Mutual labels:  html5, canvas
Melonjs
a fresh & lightweight javascript game engine
Stars: ✭ 3,721 (+5215.71%)
Mutual labels:  html5, canvas
Curtainsjs
curtains.js is a lightweight vanilla WebGL javascript library that turns HTML DOM elements into interactive textured planes.
Stars: ✭ 1,039 (+1384.29%)
Mutual labels:  html5, canvas
Minipaint
online image editor
Stars: ✭ 1,014 (+1348.57%)
Mutual labels:  html5, canvas
Canvas Nest.js
♋ Interactive Particle / Nest System With JavaScript and Canvas, no jQuery.
Stars: ✭ 3,966 (+5565.71%)
Mutual labels:  html5, canvas
Tower game
💒 盖楼游戏 html5 canvas tower building game 🏢🏬🏦🏯🏰
Stars: ✭ 1,110 (+1485.71%)
Mutual labels:  html5, canvas
Taro
A lightweight 3D game engine for the web.
Stars: ✭ 345 (+392.86%)
Mutual labels:  html5, canvas
Zrender
A lightweight graphic library providing 2d draw for Apache ECharts
Stars: ✭ 5,122 (+7217.14%)
Mutual labels:  html5, canvas
Phaser3 Docs
Phaser 3 Documentation and TypeScript Defs
Stars: ✭ 339 (+384.29%)
Mutual labels:  html5, canvas
Pacman
Pacman based on HTML5. 基于HTML5的吃豆人游戏 - 经典游戏开发样例
Stars: ✭ 707 (+910%)
Mutual labels:  html5, canvas
Dynamic effect
平时练习的一些前端动效,基于HTML5,CSS3,Canvas,Svg
Stars: ✭ 264 (+277.14%)
Mutual labels:  html5, canvas
Hstardoc
My blogs write with markdown.
Stars: ✭ 297 (+324.29%)
Mutual labels:  html5, canvas
Canvas Img Process
html5 canvas image process ( 3*3 kernel ) canvas卷积核测试 canvas图片后期
Stars: ✭ 31 (-55.71%)
Mutual labels:  html5, canvas
Mopaint
🎨💪 Modern, modular paint and more! (pre-alpha, not much done yet)
Stars: ✭ 50 (-28.57%)
Mutual labels:  html5, canvas

Wheel of Lunch

Build Status

Wheel of Lunch makes those difficult lunch decisions for you. Simply enter your location, spin the wheel and let the site suggest a place for lunch.

Under the hood, Wheel of Lunch uses Google Places, canvas, geo-ip location, a custom REST API, a decent amount of geometry, and an auto-expanding search algorithm to ensure that it returns 12 locations no matter where you are.

Take me to the wheel.

Features

  • Range finder to determine a suitable distance to search for the initial 12 places.
  • Place results determined by Google Places API, returns 12 most relevant places
  • Get location via Google Maps or by geo-ip location.
  • Get directions to recommendation via Google Maps.
  • View rating out of 5 for selected place
  • Click and draggable wheel
  • Search for restuaraunts, food or bar.
  • Shareable URL (allows others to view the same results).
  • Dynamic Search option to automatically increase search radius until the desired number of results has been found or when a user is in a rural area.

Setup

Prerequisites

Installation

To install all requirement node modules and bower components

npm install

Development

Setup

gulp - Build public folder, scss to css, JavaScript linting and Browserify.

gulp dev - Same as gulp but also starts up a local server using BrowserSync.

gulp serve - Only starts up a local BrowserSync server.

Framework

  • Gulp - Automated task runner
  • Browserify - Require modules in a node-like fashion
  • Hogan - Dynamic HTML templating
  • BrowserSync - Easy synchronised local server for development

Search Radius

When a user is in a rural area and the wheel can not find a suitable number of places within the default search radius, the search will increment until a suitable number is found.

Search radius increments

Increment Search Radius
1 300
2 400
3 500
4 1000
5 1500
6 2000
7 2500
8 3000

Resources

Articles

License

The MIT License (MIT)

Copyright (c) 2015 Jack Palmer

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].