Giter VIP home page Giter VIP logo

culefilo's Issues

[Bug] Inconsistent info shown on saved searches - "Open now" when restaurant is already closed

image

Other inconsistencies that derive from this edge case:

  • Rating changed since the search (Maybe irrelevant, as this might not change drastically for most places).
  • Restaurant closed permanently since search.

Possible solutions:

  • Add a timestamp to the search result page and a note to the validity of the data.
  • Persist the actual opening times and compare against them to calculate openNow, instead of persisting openNow.
  • Refetch dynamic data for each of the results: OpenNow, Ratings, Check for permanently closed.

Other Ideas:

  • Add open /closed badges with color codes (green/red).
  • In case some of the top 3 results are closed or permanently closed, we could still persist 6 results and show some of the last 3 results in replacement of the top 3 that are not available. Those which are currently/permanently unavailable can be still shown, but grayed out/shown with lower opacity.

loading bar and toggle search logs button

send SSE messages in an special format $UNIX_TIME,$PERCENTAGE,$MESSAGE. for example
1712561929762,0.2,Looking for nearby places with...
1712561960576,0.4,Looking for suggestions...

this in order to show:

  • loading bar
  • button to toggle the search logs
  • store logs in the KV record

show messages per state

tentative: refactor in_progress with running

state in_progress -> calls to google maps, e.g: looking for places with a similar plate, looking for ...

Roadmap

Design

  1. User input: name of your favorite meal (text), post code (text)

  2. Zip/Postal Code Lookup -> extract country, city/place name, latitude, longitude https://data.opendatasoft.com/explore/dataset/geonames-postal-code%40public/table/?q=080001

  3. [text-generation]: LLM prompts:

"Other names for {favorite meal} in {country}?"
"From where is originally {favorite meal}?"

---

"what's the cousine of {favorite meal}?"
"Is {favorite meal} vegetarian, vegan, gluten-free, lactose-free?"

first search: bandeja paisa + location bias -> 6 results ? OK
(no results above?) -> second search: "From where is originally {favorite meal}?" -> 6 results ? OK
third search: "what's the cousine of {favorite meal}?" -> 6 results ? OK
final search: "Is {favorite meal} vegetarian, vegan, gluten-free, lactose-free?" -> 6 results ? OK

Google places API text search with data from (3) https://developers.google.com/maps/documentation/places/web-service/text-search, locationBias with data from (2)

  1. From (3) from 6 results -> lookup reviews / overall rating. Ranking

  2. [summarization]: short description of the place based on the most relevant reviews

  3. Return Top 3 results from (5) and explanation message (6)

To be discussed

  1. which LLM performs best?

Tentative

v0.0.0

  • Happy path -> simple search (only text for now)
  • history search page
  • show search process messages
  • responsive design

v0.1.0

  • Results thumbnail
  • post code autocomplete

v1.0.0

  • search filters optional select field: filter by meal type (breakfast, lunch, dinner)
  • search filters currentOpeningHours, priceLevel
  • choose number of results (max 6)
  • sync history search (like duckduckgo, no account)

history page

get all records from context.cloudflare.env.CULEFILO_KV.list and iterate the list <PlaceCard />

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.