Added all restaurants I could think of

This commit is contained in:
Alexis
2025-08-22 15:21:35 +02:00
parent 10b461d6ae
commit 3188148b06
8 changed files with 551 additions and 112 deletions

View File

@@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 256">
<circle fill="#fff" cx="128" cy="128" r="128" />
<path fill="#000" transform="scale(0.6)" transform-origin="center" d="M208,80H32a8,8,0,0,0-8,8v48a96.3,96.3,0,0,0,32.54,72H32a8,8,0,0,0,0,16H208a8,8,0,0,0,0-16H183.46a96.59,96.59,0,0,0,27-40.09A40,40,0,0,0,248,128v-8A40,40,0,0,0,208,80Zm24,48a24,24,0,0,1-17.2,23,95.78,95.78,0,0,0,1.2-15V97.38A24,24,0,0,1,232,120ZM112,56V24a8,8,0,0,1,16,0V56a8,8,0,0,1-16,0Zm32,0V24a8,8,0,0,1,16,0V56a8,8,0,0,1-16,0ZM80,56V24a8,8,0,0,1,16,0V56a8,8,0,0,1-16,0Z"></path>
</svg>

After

Width:  |  Height:  |  Size: 580 B

View File

@@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 256">
<circle fill="#fff" cx="128" cy="128" r="128" />
<path fill="#000" transform="scale(0.6)" transform-origin="center" d="M229.52,74.21a8,8,0,0,0-7.13-2A44,44,0,0,0,168,41.67a44,44,0,0,0-80,0,44,44,0,0,0-54.4,30.51,8,8,0,0,0-9.4,9.65L54.76,211.67A16,16,0,0,0,70.34,224H185.66a16,16,0,0,0,15.58-12.33L231.79,81.83A8,8,0,0,0,229.52,74.21ZM70.34,208,42.91,91.44l37.85,10.81L94.86,208ZM122.06,73.76,87.57,87.56,49,76.54a28,28,0,0,1,40.1-17.28,8,8,0,0,0,11.56-5.34,28,28,0,0,1,54.66,0,8,8,0,0,0,11.56,5.34A28,28,0,0,1,207,76.54l-38.56,11-34.49-13.8A16,16,0,0,0,122.06,73.76ZM185.66,208H161.14l14.1-105.75,37.85-10.81Z"></path>
</svg>

After

Width:  |  Height:  |  Size: 697 B

View File

@@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 256">
<circle fill="#fff" cx="128" cy="128" r="128" />
<path fill="#000" transform="scale(0.6)" transform-origin="center" d="M208,97.37V96A80,80,0,0,0,48,96v1.37A24,24,0,0,0,56,144h3.29l54.82,95.94a16,16,0,0,0,27.78,0L196.71,144H200a24,24,0,0,0,8-46.63ZM146.89,198.94,115.5,144h19.29l21.75,38.06ZM77.71,144H97.07l40.61,71.06L128,232Zm88,21.94L153.21,144h25.08Z"></path>
</svg>

After

Width:  |  Height:  |  Size: 442 B

View File

@@ -1,4 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 256">
<circle fill="#fff" cx="128" cy="128" r="128" />
<path fill="#000" transform="scale(0.6)" transform-origin="center" d="M72,88V40a8,8,0,0,1,16,0V88a8,8,0,0,1-16,0ZM216,40V224a8,8,0,0,1-16,0V176H152a8,8,0,0,1-8-8,268.75,268.75,0,0,1,7.22-56.88c9.78-40.49,28.32-67.63,53.63-78.47A8,8,0,0,1,216,40ZM200,53.9c-32.17,24.57-38.47,84.42-39.7,106.1H200ZM119.89,38.69a8,8,0,1,0-15.78,2.63L112,88.63a32,32,0,0,1-64,0l7.88-47.31a8,8,0,1,0-15.78-2.63l-8,48A8.17,8.17,0,0,0,32,88a48.07,48.07,0,0,0,40,47.32V224a8,8,0,0,0,16,0V135.32A48.07,48.07,0,0,0,128,88a8.17,8.17,0,0,0-.11-1.31Z"></path>
<path fill="#000" transform="scale(0.6)" transform-origin="center" d="M216,40V224a8,8,0,0,1-16,0V176H152a8,8,0,0,1-8-8,268.75,268.75,0,0,1,7.22-56.88c9.78-40.49,28.32-67.63,53.63-78.47A8,8,0,0,1,216,40Zm-96.11-1.31a8,8,0,1,0-15.78,2.63L111.89,88H88V40a8,8,0,0,0-16,0V88H48.11l7.78-46.68a8,8,0,1,0-15.78-2.63l-8,48A8.17,8.17,0,0,0,32,88a48.07,48.07,0,0,0,40,47.32V224a8,8,0,0,0,16,0V135.32A48.07,48.07,0,0,0,128,88a8.17,8.17,0,0,0-.11-1.31Z"></path>
</svg>

Before

Width:  |  Height:  |  Size: 657 B

After

Width:  |  Height:  |  Size: 576 B

View File

@@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 256">
<circle fill="#fff" cx="128" cy="128" r="128" />
<path fill="#000" transform="scale(0.6)" transform-origin="center" d="M112,136V72h19.47a16.09,16.09,0,0,1,13.72,7.77L165.72,114a16.06,16.06,0,0,1,2.28,8.24V216a16,16,0,0,1-16,16H56a16,16,0,0,1-16-16V122.22A16.06,16.06,0,0,1,42.28,114L62.81,79.77A16.09,16.09,0,0,1,76.53,72H96v64a8,8,0,0,0,16,0Zm112,24a16,16,0,0,1-16-16V64A56,56,0,0,0,96,64v8h16V64a40,40,0,0,1,80,0v80a32,32,0,0,0,32,32,8,8,0,0,0,0-16Z"></path>
</svg>

After

Width:  |  Height:  |  Size: 539 B

View File

@@ -5,7 +5,7 @@ import 'vue-leaflet-markercluster/dist/style.css'
import L, { type PointTuple } from 'leaflet'
globalThis.L = L
import { LMap, LTileLayer, LMarker, LPopup, LIcon } from '@vue-leaflet/vue-leaflet'
import { LMap, LTileLayer, LMarker, LPopup, LIcon, LControlZoom } from '@vue-leaflet/vue-leaflet'
import { LMarkerClusterGroup } from 'vue-leaflet-markercluster'
import { computed, ref } from 'vue'
import { useReviewStore } from './stores/reviews'
@@ -16,7 +16,7 @@ const zoom = ref(7)
const minZoom = 4
const center = ref<PointTuple>([47.809376, -0.637207])
const iconSize = ref<PointTuple>([30, 30])
const iconSize = ref<PointTuple>([38, 38])
const iconAnchor = computed<PointTuple>(() => [iconSize.value[0] / 2, iconSize.value[1]])
const popupOffset = [0, iconSize.value[0] * -0.66]
</script>
@@ -28,37 +28,77 @@ const popupOffset = [0, iconSize.value[0] * -0.66]
:min-zoom
v-model:zoom="zoom"
v-model:center="center"
:options="{ zoomControl: false }"
:useGlobalLeaflet="true"
>
<LControlZoom position="bottomright" />
<LTileLayer
url="https://tiles.stadiamaps.com/tiles/alidade_smooth_dark/{z}/{x}/{y}{r}.png"
url="https://tiles.stadiamaps.com/tiles/alidade_smooth/{z}/{x}/{y}{r}.png"
layer-type="base"
name="Stadia Maps Basemap"
/>
<LMarkerClusterGroup :max-cluster-radius="25">
<LMarkerClusterGroup :max-cluster-radius="18" :disable-clustering-at-zoom="14">
<LMarker v-for="marker in markers" :key="marker.title" :lat-lng="marker.coords">
<LPopup :options="{ offset: popupOffset, maxWidth: 500, minWidth: 180 }">
<h2 class="font-bold text-[1.2em] leading-5">
{{ marker.title }}
</h2>
{{ marker.reviews?.[0].grade }}&nbsp;/&nbsp;20
</LPopup>
<LIcon v-if="marker.type === 'bar'" icon-url="/map/icons/bar.svg" :icon-size :icon-anchor />
<LIcon v-if="marker.type === 'bakery'" icon-url="/map/icons/bakery.svg" :icon-size :icon-anchor />
<LPopup :options="{ offset: popupOffset, maxWidth: 380, minWidth: 180 }">
<div class="spacing">
<h2 class="font-bold text-[1.2em] leading-5">
{{ marker.title }}
</h2>
<template v-else-if="marker.type === 'restaurant'">
<LIcon v-if="marker.food === 'asian'" icon-url="/map/icons/asian.svg" :icon-size :icon-anchor />
<LIcon v-else-if="marker.food === 'burgers'" icon-url="/map/icons/burgers.svg" :icon-size :icon-anchor />
<!-- <LIcon v-else-if="marker.food === 'creperie'" icon-url="/map/icons/creperie.svg" :icon-size :icon-anchor /> -->
<!-- <LIcon v-else-if="marker.food === 'eastern'" icon-url="/map/icons/eastern.svg" :icon-size :icon-anchor /> -->
<!-- <LIcon v-else-if="marker.food === 'fast-food'" icon-url="/map/icons/fast-food.svg" :icon-size :icon-anchor /> -->
<LIcon v-else-if="marker.food === 'italian'" icon-url="/map/icons/italian.svg" :icon-size :icon-anchor />
<LIcon v-else-if="marker.food === 'seafood'" icon-url="/map/icons/seafood.svg" :icon-size :icon-anchor />
<!-- <LIcon v-else-if="marker.food === 'street-food'" icon-url="/map/icons/street-food.svg" :icon-size :icon-anchor /> -->
<LIcon v-else-if="marker.food === 'vegetarian'" icon-url="/map/icons/vegetarian.svg" :icon-size :icon-anchor />
<LIcon v-else icon-url="/map/icons/restaurant.svg" :icon-size :icon-anchor />
</template>
<p v-html="marker.reviews?.[0].text" />
</div>
</LPopup>
<LIcon
:icon-size
:icon-anchor
:class-name="marker.closed ? 'grayscale' : ''"
>
<img v-if="marker.type === 'bar'" src="/map/icons/bar.svg" />
<img v-if="marker.type === 'bakery'" src="/map/icons/bakery.svg" />
<img v-if="marker.type === 'tea-shop'" src="/map/icons/tea-shop.svg" />
<img v-if="marker.type === 'coffee-shop'" src="/map/icons/coffee-shop.svg" />
<img v-if="marker.type === 'ice-cream'" src="/map/icons/ice-cream.svg" />
<template v-else-if="marker.type === 'restaurant'">
<img v-if="marker.food === 'asian'" src="/map/icons/asian.svg" />
<img v-else-if="marker.food === 'burgers'" src="/map/icons/burgers.svg" />
<!-- <img v-else-if="marker.food === 'creperie'" src="/map/icons/creperie.svg" /> -->
<!-- <img v-else-if="marker.food === 'eastern'" src="/map/icons/eastern.svg" /> -->
<img v-else-if="marker.food === 'fast-food'" src="/map/icons/fast-food.svg" />
<img v-else-if="marker.food === 'italian'" src="/map/icons/italian.svg" />
<img v-else-if="marker.food === 'seafood'" src="/map/icons/seafood.svg" />
<!-- <img v-else-if="marker.food === 'street-food'" src="/map/icons/street-food.svg" /> -->
<img v-else-if="marker.food === 'vegetarian'" src="/map/icons/vegetarian.svg" />
<img v-else src="/map/icons/restaurant.svg" />
</template>
<div
class="absolute -top-2 -right-2 size-5 text-center grid place-items-center rounded-full text-[0.65rem] font-bold tracking-[-0.075em]"
:class="{
'text-white bg-red-500': marker.reviews?.[0].grade! <= 1.5,
'text-black bg-amber-400': marker.reviews?.[0].grade! > 1.5 && marker.reviews?.[0].grade! <= 2.5,
'text-black bg-lime-400': marker.reviews?.[0].grade! > 2.5 && marker.reviews?.[0].grade! < 4.0,
'text-black bg-green-400': marker.reviews?.[0].grade! > 2.5 && marker.reviews?.[0].grade! < 4.7,
'text-black bg-sky-400': marker.reviews?.[0].grade! >= 4.7
}"
>
{{ marker.reviews?.[0].grade }}
</div>
<div
class="absolute -z-10 -inset-0.5 rounded-full"
:class="{
'bg-red-500': marker.reviews?.[0].grade! <= 1.5,
'bg-amber-400': marker.reviews?.[0].grade! > 1.5 && marker.reviews?.[0].grade! <= 2.5,
'bg-lime-400': marker.reviews?.[0].grade! > 2.5 && marker.reviews?.[0].grade! < 4.0,
'bg-green-400': marker.reviews?.[0].grade! > 2.5 && marker.reviews?.[0].grade! < 4.7,
'bg-sky-400': marker.reviews?.[0].grade! >= 4.7
}"
/>
</LIcon>
</LMarker>
</LMarkerClusterGroup>
</LMap>
@@ -71,9 +111,9 @@ main {
width: 100vw;
}
.leaflet-marker-icon {
.leaflet-marker-icon:not(.marker-cluster) {
border-radius: 50%;
box-shadow: 0 0 8px 1px var(--color-slate-800);
box-shadow: 0 0 5px 3px color-mix(in srgb, var(--color-neutral-400) 66%, transparent);
}
.leaflet-popup-content-wrapper {
@@ -81,30 +121,34 @@ main {
.leaflet-popup-content {
margin: 10px 20px 10px 15px;
p {
margin-bottom: 0;
}
}
}
.marker-cluster-small {
background-color: color-mix(in srgb, var(--color-green-500) 50%, transparent);
background-color: color-mix(in srgb, var(--color-green-500) 25%, transparent);
div {
background-color: color-mix(in srgb, var(--color-green-500) 70%, transparent);
background-color: color-mix(in srgb, var(--color-green-500) 33%, transparent);
}
}
.marker-cluster-medium {
background-color: color-mix(in srgb, var(--color-yellow-400) 50%, transparent);
background-color: color-mix(in srgb, var(--color-yellow-400) 25%, transparent);
div {
background-color: color-mix(in srgb, var(--color-yellow-400) 70%, transparent);
background-color: color-mix(in srgb, var(--color-yellow-400) 33%, transparent);
}
}
.marker-cluster-large {
background-color: color-mix(in srgb, var(--color-rose-400) 50%, transparent);
background-color: color-mix(in srgb, var(--color-rose-400) 25%, transparent);
div {
background-color: color-mix(in srgb, var(--color-rose-400) 70%, transparent);
background-color: color-mix(in srgb, var(--color-rose-400) 33%, transparent);
}
}
</style>

View File

@@ -5,3 +5,7 @@ body {
margin: 0;
padding: 0;
}
.spacing > * + * {
margin: .5em 0 0 !important;
}

View File

@@ -1,7 +1,7 @@
import type { PointTuple } from 'leaflet'
import { defineStore } from 'pinia'
type MarkerType = "restaurant" | "bar" | "bakery"
type MarkerType = "restaurant" | "bar" | "bakery" | "tea-shop" | "coffee-shop" | "ice-cream"
type FoodType = "mixed" | "asian" | "vegetarian" | "italian" | "fast-food" | "street-food" | "burgers" | "seafood" | "creperie" | "eastern"
interface ReviewMarker {
@@ -10,6 +10,7 @@ interface ReviewMarker {
type?: MarkerType
food?: FoodType
reviews?: Review[]
closed?: boolean
}
interface Review {
@@ -18,7 +19,7 @@ interface Review {
}
export const useReviewStore = defineStore('reviews', () => {
const markers: ReviewMarker[] = [
const markers: ReviewMarker[] = [
{
title: "La Tempête",
coords: [47.47828668587478, -3.125865802320788],
@@ -26,7 +27,86 @@ export const useReviewStore = defineStore('reviews', () => {
food: "seafood",
reviews: [
{
grade: 20
grade: 5.0
}
]
},
{
title: "Tika Karaii",
coords: [47.65981670062358, -2.754551148194252],
type: "restaurant",
food: "eastern",
reviews: [
{
grade: 4.5
}
]
},
{
title: "Ikimasho",
coords: [47.21208155132563, -1.5462151933019042],
type: "restaurant",
food: "asian",
reviews: [
{
grade: 3.5,
text: "Un peu cher pour la qualité et la quantité. Le décor est assez sympa mais le confort est aléatoire avec certaines places."
}
]
},
{
title: "Timothy",
coords: [48.648619033396436, -2.0255052905983635],
type: "tea-shop",
reviews: [
{
grade: 3.1,
text: "Un peu cher pour la qualité. Les desserts sont très bourratifs et servis en quantité."
}
]
},
{
title: "Sanchez",
coords: [48.648752135342384, -2.025455708015179],
type: "ice-cream",
reviews: [
{
grade: 4.2,
text: "La réputation qu'ils ont est mérité. Les glaces doivent se traiter comme un repas à part tellement elles sont consistantes. Le prix est assez élevé mais ça les vaut."
}
]
},
{
title: "Maison Fraudin",
coords: [48.14980215620312, -1.6560037150788787],
type: "bakery",
reviews: [
{
grade: 4.4,
text: "Le pain ne déçoit jamais et les viennoiseries sont très bonnes. Les sandwhichs sont très variées et tous bons. Les patîsseries sont surgelées mais sont très bonnes en dessert."
}
]
},
{
title: "Boulangerie Dubois",
coords: [48.135967444815364, -1.6673764586090998],
type: "bakery",
closed: true,
reviews: [
{
grade: 1.4,
text: "Les autres avis sont assez corrects ; le pain est très enfariné, il est souvent frais mais en fin de journée c'est vraiment pas dingue. Les patîsseries sont maisons mais trop cher et peu savoureuses. Ils ont fermés depuis plusieurs mois."
}
]
},
{
title: "Bluebird Coffee",
coords: [48.105979017234944, -1.6779797031849384],
type: "coffee-shop",
reviews: [
{
grade: 2.5,
text: "Cher pour ce qui est servi. Les pâtisseries viennent clairement d'un Denise Donuts et sont revendus avec une marge."
}
]
},
@@ -37,7 +117,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "asian",
reviews: [
{
grade: 16
grade: 4.0
}
]
},
@@ -48,7 +128,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "asian",
reviews: [
{
grade: 18.5
grade: 4.7
}
]
},
@@ -59,7 +139,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "italian",
reviews: [
{
grade: 17.5
grade: 4.4
}
]
},
@@ -70,7 +150,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "asian",
reviews: [
{
grade: 17.5
grade: 4.4
}
]
},
@@ -81,7 +161,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "asian",
reviews: [
{
grade: 17
grade: 4.3
}
]
},
@@ -92,7 +172,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "mixed",
reviews: [
{
grade: 16.5
grade: 4.1
}
]
},
@@ -103,7 +183,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "mixed",
reviews: [
{
grade: 16.5
grade: 4.1
}
]
},
@@ -114,7 +194,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "italian",
reviews: [
{
grade: 16.5
grade: 4.1
}
]
},
@@ -125,7 +205,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "italian",
reviews: [
{
grade: 16.5
grade: 4.1
}
]
},
@@ -135,7 +215,7 @@ export const useReviewStore = defineStore('reviews', () => {
type: "bar",
reviews: [
{
grade: 16.5
grade: 4.1
}
]
},
@@ -146,7 +226,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "mixed",
reviews: [
{
grade: 16.5
grade: 4.1
}
]
},
@@ -157,7 +237,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "mixed",
reviews: [
{
grade: 16
grade: 4.0
}
]
},
@@ -168,7 +248,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "italian",
reviews: [
{
grade: 16
grade: 4.0
}
]
},
@@ -179,7 +259,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "street-food",
reviews: [
{
grade: 15
grade: 3.8
}
]
},
@@ -190,7 +270,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "street-food",
reviews: [
{
grade: 15.5
grade: 3.9
}
]
},
@@ -201,7 +281,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "street-food",
reviews: [
{
grade: 15
grade: 3.8
}
]
},
@@ -212,7 +292,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "italian",
reviews: [
{
grade: 15
grade: 3.8
}
]
},
@@ -223,7 +303,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "mixed",
reviews: [
{
grade: 15
grade: 3.8
}
]
},
@@ -233,7 +313,7 @@ export const useReviewStore = defineStore('reviews', () => {
type: "bar",
reviews: [
{
grade: 15
grade: 3.8
}
]
},
@@ -244,7 +324,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "mixed",
reviews: [
{
grade: 15
grade: 3.8
}
]
},
@@ -255,7 +335,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "italian",
reviews: [
{
grade: 15
grade: 3.8
}
]
},
@@ -266,7 +346,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "mixed",
reviews: [
{
grade: 15
grade: 3.8
}
]
},
@@ -276,7 +356,7 @@ export const useReviewStore = defineStore('reviews', () => {
type: "bar",
reviews: [
{
grade: 15
grade: 3.8
}
]
},
@@ -286,29 +366,228 @@ export const useReviewStore = defineStore('reviews', () => {
type: "bar",
reviews: [
{
grade: 15
grade: 3.8
}
]
},
{
title: "Pitaya",
coords: [48.11275152309647, -1.681332848723036],
title: "La Cahuette",
coords: [48.37932628308267, -1.997729950591147],
type: "restaurant",
food: "street-food",
reviews: [
{
grade: 15
grade: 2.8,
text: "Les frites laissent à désirer et l'attente est très longue en saison estivale. Les burgers sont corrects mais sans plus."
}
]
},
{
title: "Louise - Bistrot vivant ",
title: "Les Trois Marchands",
coords: [47.563206203260144, -1.6261305674309026],
type: "restaurant",
food: "mixed",
reviews: [
{
grade: 3.9,
text: "Plats assez savoureux et classiques."
}
]
},
{
title: "Café du Port",
coords: [48.66929767634353, -4.33011524112937],
type: "bar",
reviews: [
{
grade: 2.8
}
]
},
{
title: "Les Grees",
coords: [47.699107672564175, -2.3349031061638525],
type: "restaurant",
food: 'creperie',
reviews: [
{
grade: 3.1
}
]
},
{
title: "Le Fil Rouge",
coords: [47.00433730235794, -2.241934154327476],
type: "restaurant",
food: "mixed",
reviews: [
{
grade: 4.8,
text: "Excellent rapport qualité-prix, produits locaux, carte réduite, plats élaborés, service impeccable. Seul le lieu n'est pas à la hauteur mais ils l'ont aménagés au mieux."
}
]
},
{
title: "Balnéair",
coords: [46.785535407861765, -2.076231521637219],
type: "restaurant",
food: "mixed",
reviews: [
{
grade: 3.3,
text: "Touristique mais plutôt bon comparé aux autres restaurants de la ville."
}
]
},
{
title: "La Famiglia",
coords: [46.78236739785464, -2.0672389339926136],
type: "restaurant",
food: "mixed",
reviews: [
{
grade: 2.5,
text: "Service extrêmement long ; même après deux relances, ils ont oublié une carafe d'eau pendant que je m'étouffais mdr. Beaucoup d'enfants qui hurlent en saison. Pizza trop garnies."
}
]
},
{
title: "La Terrasse",
coords: [46.784871733120006, -2.0745900260335604],
type: "restaurant",
food: "mixed",
reviews: [
{
grade: 2.9,
text: "Touristique et décent, sans plus. La viande n'était pas incroyable mais le service était très rapide (trop rapide pour du fait maison)."
}
]
},
{
title: "La Plancha du Pêcheur",
coords: [46.72716935750215, -2.3500279766604986],
type: "restaurant",
food: "seafood",
reviews: [
{
grade: 4.0,
text: "Très bon poisson local."
}
]
},
{
title: "Saïgon Cà phê",
coords: [49.254911553043485, 4.027036477700138],
type: "restaurant",
food: "asian",
reviews: [
{
grade: 4.0,
text: "Pad thaï très bon pour la grande rue touristique de Reims."
}
]
},
{
title: "La Calabraise d'Erlon",
coords: [49.256709879454554, 4.025919584640479],
type: "restaurant",
food: "mixed",
closed: true,
reviews: [
{
grade: 3.0,
text: "Restaurant classique, pas testé suffisament, mais il a fermé depuis."
}
]
},
{
title: "Domino's Pizza Reims 2",
coords: [49.24872749306072, 4.014697897441654],
type: "restaurant",
food: "fast-food",
reviews: [
{
grade: 1.2,
text: "« C'est une erreur la pizza sans base ? »"
}
]
},
{
title: "Pitaya Saint Malo",
coords: [48.64722245232454, -2.008746896095137],
type: "restaurant",
food: "street-food",
reviews: [
{
grade: 3.6
}
]
},
{
title: "Pitaya Les Lices",
coords: [48.11275152309647, -1.681332848723036],
type: "restaurant",
food: "street-food",
closed: true,
reviews: [
{
grade: 3.8
}
]
},
{
title: "Pitaya République",
coords: [48.10910236630688, -1.6794006013981202],
type: "restaurant",
food: "street-food",
closed: true,
reviews: [
{
grade: 3.0
}
]
},
{
title: "La Tête enfarinée",
coords: [48.11105155759505, -1.6783913363236944],
type: "bakery",
reviews: [
{
grade: 4.0,
text: 'Beaucoup de produits fait maison, certaines viennoiseries sont très grasses.'
}
]
},
{
title: "Ty Chou",
coords: [48.110853137393235, -1.677131058014288],
type: "bakery",
reviews: [
{
grade: 3.8,
text: 'Très bon magasin de chous, mais très cher pour la quantité proposée.'
}
]
},
{
title: "oko café",
coords: [48.11049107446778, -1.6785554547709793],
type: "coffee-shop",
reviews: [
{
grade: 4.3,
text: 'Meilleurs thés au matcha de Rennes. Très bons bentos également.'
}
]
},
{
title: "Louise - Bistrot vivant",
coords: [48.102723651057815, -1.6623584050501647],
type: "restaurant",
food: "mixed",
reviews: [
{
grade: 15
grade: 3.8
}
]
},
@@ -319,7 +598,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "mixed",
reviews: [
{
grade: 15
grade: 3.8
}
]
},
@@ -330,7 +609,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "mixed",
reviews: [
{
grade: 15
grade: 3.8
}
]
},
@@ -341,7 +620,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "italian",
reviews: [
{
grade: 14.5
grade: 3.6
}
]
},
@@ -352,7 +631,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "mixed",
reviews: [
{
grade: 14.5
grade: 3.6
}
]
},
@@ -363,7 +642,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "mixed",
reviews: [
{
grade: 14.5
grade: 3.6
}
]
},
@@ -374,7 +653,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "mixed",
reviews: [
{
grade: 14.5
grade: 3.6
}
]
},
@@ -385,7 +664,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "creperie",
reviews: [
{
grade: 14
grade: 3.5
}
]
},
@@ -395,7 +674,7 @@ export const useReviewStore = defineStore('reviews', () => {
type: "bar",
reviews: [
{
grade: 14
grade: 3.5
}
]
},
@@ -406,7 +685,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "italian",
reviews: [
{
grade: 14
grade: 3.5
}
]
},
@@ -417,7 +696,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "italian",
reviews: [
{
grade: 14
grade: 3.5
}
]
},
@@ -428,7 +707,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "mixed",
reviews: [
{
grade: 14
grade: 3.5
}
]
},
@@ -438,7 +717,7 @@ export const useReviewStore = defineStore('reviews', () => {
type: "bar",
reviews: [
{
grade: 14
grade: 3.5
}
]
},
@@ -449,18 +728,31 @@ export const useReviewStore = defineStore('reviews', () => {
food: "eastern",
reviews: [
{
grade: 14
grade: 3.5
}
]
},
{
title: "Basilic & Co",
title: "Basilic & Co Laennec",
coords: [48.109668130909405, -1.6657984439029816],
type: "restaurant",
food: "italian",
closed: true,
reviews: [
{
grade: 3.5
}
]
},
{
title: "Basilic & Co République",
coords: [48.10966916865554, -1.677701394599814],
type: "restaurant",
food: "italian",
reviews: [
{
grade: 14
grade: 3.2,
text: "Service moins chaleureux que l'ancien de Laennec, mais quasiment identique au reste de la chaîne."
}
]
},
@@ -471,7 +763,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "mixed",
reviews: [
{
grade: 13.5
grade: 3.1
}
]
},
@@ -482,7 +774,20 @@ export const useReviewStore = defineStore('reviews', () => {
food: "mixed",
reviews: [
{
grade: 13.5
grade: 3.4
}
]
},
{
title: "Court Circuit",
coords: [48.352759883915, -1.1980992257408898],
type: "restaurant",
food: "mixed",
closed: true,
reviews: [
{
grade: 4.6,
text: "Un restaurant purement (?) local avec des produits de saison ; il a fermé définitivement."
}
]
},
@@ -492,18 +797,29 @@ export const useReviewStore = defineStore('reviews', () => {
type: "bar",
reviews: [
{
grade: 13.5
grade: 3.4
}
]
},
{
title: "Big Fernand",
title: "Big Fernand Les Lices",
coords: [48.11347562584714, -1.6814439702872734],
type: "restaurant",
food: "burgers",
reviews: [
{
grade: 14
grade: 3.5
}
]
},
{
title: "Big Fernand Colombier",
coords: [48.10507495821483, -1.6787919265428453],
type: "restaurant",
food: "burgers",
reviews: [
{
grade: 3.5
}
]
},
@@ -514,7 +830,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "asian",
reviews: [
{
grade: 12
grade: 3.0
}
]
},
@@ -525,7 +841,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "creperie",
reviews: [
{
grade: 13
grade: 3.3
}
]
},
@@ -536,7 +852,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "burgers",
reviews: [
{
grade: 13
grade: 3.3
}
]
},
@@ -547,7 +863,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "asian",
reviews: [
{
grade: 13
grade: 3.3
}
]
},
@@ -558,7 +874,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "vegetarian",
reviews: [
{
grade: 12
grade: 3.0
}
]
},
@@ -568,7 +884,17 @@ export const useReviewStore = defineStore('reviews', () => {
type: "bar",
reviews: [
{
grade: 12.5
grade: 3.1
}
]
},
{
title: "Tiffany's",
coords: [48.1108461948547, -1.669435256663923],
type: "bar",
reviews: [
{
grade: 3.1
}
]
},
@@ -579,7 +905,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "mixed",
reviews: [
{
grade: 11
grade: 2.8
}
]
},
@@ -589,7 +915,7 @@ export const useReviewStore = defineStore('reviews', () => {
type: "bakery",
reviews: [
{
grade: 12
grade: 3.0
}
]
},
@@ -600,7 +926,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "burgers",
reviews: [
{
grade: 12
grade: 3.0
}
]
},
@@ -611,7 +937,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "burgers",
reviews: [
{
grade: 12
grade: 3.0
}
]
},
@@ -622,7 +948,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "italian",
reviews: [
{
grade: 12
grade: 3.0
}
]
},
@@ -633,7 +959,19 @@ export const useReviewStore = defineStore('reviews', () => {
food: "fast-food",
reviews: [
{
grade: 12
grade: 2.1
}
]
},
{
title: "Buffalo Grill Cesson",
coords: [48.112892048227735, -1.5878640534577222],
type: "restaurant",
food: "mixed",
reviews: [
{
grade: 3.1,
text: "De mémoire l'attente était un peu longue mais les plats sont assez similaires à la chaîne et aux autres du même style. Pas trop de personnalité."
}
]
},
@@ -644,7 +982,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "burgers",
reviews: [
{
grade: 11.5
grade: 2.9
}
]
},
@@ -655,18 +993,19 @@ export const useReviewStore = defineStore('reviews', () => {
food: "asian",
reviews: [
{
grade: 11
grade: 2.8
}
]
},
{
title: "Class'Croute",
coords: [48.13042865928908, -1.6223519152906614],
type: "restaurant",
food: "street-food",
coords: [48.107802279857204, -1.6122065246659587],
type: "bakery",
closed: true,
reviews: [
{
grade: 10
grade: 2.5,
text: "Beaucoup trop cher pour ce que c'est mais le service est très correct."
}
]
},
@@ -677,7 +1016,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "italian",
reviews: [
{
grade: 10
grade: 2.5
}
]
},
@@ -688,7 +1027,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "eastern",
reviews: [
{
grade: 8.5
grade: 2.1
}
]
},
@@ -699,7 +1038,43 @@ export const useReviewStore = defineStore('reviews', () => {
food: "fast-food",
reviews: [
{
grade: 8
grade: 2.0
}
]
},
{
title: "KFC Saint Grégoire",
coords: [48.136350699570116, -1.6917078951937914],
type: "restaurant",
food: "fast-food",
reviews: [
{
grade: 1.6,
text: "Shrinkflation flagrante sur les pièces de poulet ; fraicheur aléatoire et bien représentative de la chaîne."
}
]
},
{
title: "Domino's Rennes Nord",
coords: [48.12790634146763, -1.6482049652206932],
type: "restaurant",
food: "fast-food",
reviews: [
{
grade: 1.4,
text: "La pâte est comme les autres Domino's : médiocre et élastique, jamais croustillante. Les prix sont restés corrects et la livraison est rapide, mais c'est tout."
}
]
},
{
title: "McDonald's Rue de Fougères",
coords: [48.12984002588701, -1.6409525884133094],
type: "restaurant",
food: "fast-food",
reviews: [
{
grade: 1.2,
text: 'Service un peu long, mais toujours chaotique et très dur de se placer à table aux heures de pointe.'
}
]
},
@@ -710,7 +1085,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "fast-food",
reviews: [
{
grade: 7
grade: 1.8
}
]
},
@@ -721,7 +1096,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "fast-food",
reviews: [
{
grade: 7
grade: 1.8
}
]
},
@@ -732,7 +1107,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "street-food",
reviews: [
{
grade: 6.5
grade: 1.6
}
]
},
@@ -743,7 +1118,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "fast-food",
reviews: [
{
grade: 6
grade: 1.5
}
]
},
@@ -754,7 +1129,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "fast-food",
reviews: [
{
grade: 3.5
grade: 0.9
}
]
},
@@ -765,7 +1140,7 @@ export const useReviewStore = defineStore('reviews', () => {
food: "mixed",
reviews: [
{
grade: 2
grade: 0.5
}
]
},