feat: post-signup onboarding wizard (dietary/allergen prefs, notifications, skippable) (v0.77.0)
New accounts land on a 3-step wizard after signup — welcome, dietary preferences & allergens, notification opt-in — skippable at every step, shown once via a users.onboardingCompletedAt gate in the (app) layout. Existing accounts are backfilled as already-onboarded. Also gives the allergen-preferences step a real write path: user_allergens previously only had a GDPR-export read. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -766,7 +766,10 @@
|
||||
"surpriseMe": "Surprise me",
|
||||
"generatingContent": "Generating recipe content…",
|
||||
"decrease": "Decrease",
|
||||
"increase": "Increase"
|
||||
"increase": "Increase",
|
||||
"skip": "Skip",
|
||||
"continue": "Continue",
|
||||
"finish": "Finish"
|
||||
},
|
||||
"auth": {
|
||||
"signIn": "Sign in",
|
||||
@@ -1642,5 +1645,33 @@
|
||||
"previous": "Previous",
|
||||
"next": "Next",
|
||||
"pageOf": "Page {page} of {total}"
|
||||
},
|
||||
"onboarding": {
|
||||
"stepOf": "Step {step} of {total}",
|
||||
"welcomeTitle": "Welcome to Epicure",
|
||||
"welcomeBody": "A couple of quick questions to tailor recipes and meal plans to you — takes under a minute, and you can skip any step.",
|
||||
"dietaryTitle": "Dietary preferences & allergens",
|
||||
"dietaryBody": "We'll use these to steer AI recipe generation and flag matching recipes — you can always change them later in Settings.",
|
||||
"dietaryTagsLabel": "Diet",
|
||||
"allergensLabel": "Allergens to avoid",
|
||||
"dietVegan": "Vegan",
|
||||
"dietVegetarian": "Vegetarian",
|
||||
"dietGlutenFree": "Gluten-free",
|
||||
"dietDairyFree": "Dairy-free",
|
||||
"dietNutFree": "Nut-free",
|
||||
"dietHalal": "Halal",
|
||||
"dietKosher": "Kosher",
|
||||
"allergenPeanuts": "Peanuts",
|
||||
"allergenTreeNuts": "Tree nuts",
|
||||
"allergenDairy": "Dairy",
|
||||
"allergenEggs": "Eggs",
|
||||
"allergenShellfish": "Shellfish",
|
||||
"allergenFish": "Fish",
|
||||
"allergenSoy": "Soy",
|
||||
"allergenGluten": "Gluten",
|
||||
"notificationsTitle": "Stay in the loop",
|
||||
"notificationsBody": "Get notified about comments, follows, and shopping list reminders. You can fine-tune categories anytime in Settings → Notifications.",
|
||||
"finishFailed": "Something went wrong — you can finish setup later from Settings",
|
||||
"goToRecipes": "Go to recipes"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -766,7 +766,10 @@
|
||||
"surpriseMe": "Surprends-moi",
|
||||
"generatingContent": "Génération du contenu de la recette…",
|
||||
"decrease": "Diminuer",
|
||||
"increase": "Augmenter"
|
||||
"increase": "Augmenter",
|
||||
"skip": "Passer",
|
||||
"continue": "Continuer",
|
||||
"finish": "Terminer"
|
||||
},
|
||||
"auth": {
|
||||
"signIn": "Se connecter",
|
||||
@@ -1633,5 +1636,33 @@
|
||||
"previous": "Précédent",
|
||||
"next": "Suivant",
|
||||
"pageOf": "Page {page} sur {total}"
|
||||
},
|
||||
"onboarding": {
|
||||
"stepOf": "Étape {step} sur {total}",
|
||||
"welcomeTitle": "Bienvenue sur Epicure",
|
||||
"welcomeBody": "Quelques questions rapides pour adapter les recettes et les plans de repas à vos besoins — moins d'une minute, et chaque étape peut être passée.",
|
||||
"dietaryTitle": "Préférences alimentaires & allergènes",
|
||||
"dietaryBody": "Nous les utiliserons pour orienter la génération de recettes par l'IA et repérer les recettes correspondantes — vous pourrez toujours les modifier plus tard dans les Réglages.",
|
||||
"dietaryTagsLabel": "Régime",
|
||||
"allergensLabel": "Allergènes à éviter",
|
||||
"dietVegan": "Végan",
|
||||
"dietVegetarian": "Végétarien",
|
||||
"dietGlutenFree": "Sans gluten",
|
||||
"dietDairyFree": "Sans lactose",
|
||||
"dietNutFree": "Sans fruits à coque",
|
||||
"dietHalal": "Halal",
|
||||
"dietKosher": "Kasher",
|
||||
"allergenPeanuts": "Arachides",
|
||||
"allergenTreeNuts": "Fruits à coque",
|
||||
"allergenDairy": "Produits laitiers",
|
||||
"allergenEggs": "Œufs",
|
||||
"allergenShellfish": "Crustacés",
|
||||
"allergenFish": "Poisson",
|
||||
"allergenSoy": "Soja",
|
||||
"allergenGluten": "Gluten",
|
||||
"notificationsTitle": "Restez informé",
|
||||
"notificationsBody": "Recevez des notifications pour les commentaires, les abonnements et les rappels de liste de courses. Vous pourrez affiner les catégories à tout moment dans Réglages → Notifications.",
|
||||
"finishFailed": "Une erreur est survenue — vous pourrez terminer la configuration plus tard dans les Réglages",
|
||||
"goToRecipes": "Aller aux recettes"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user