update seo

This commit is contained in:
2026-04-16 12:20:32 +05:30
parent 816476ed02
commit bf7245d6d1
11 changed files with 424 additions and 38 deletions

View File

@@ -3,10 +3,10 @@ import { usePageMeta } from '../hooks/usePageMeta'
export default function AboutPage() {
usePageMeta({
title: 'About Grateful Journal',
title: 'About Grateful Journal | Private, Encrypted Gratitude Journaling',
description: 'Learn about Grateful Journal — a free, end-to-end encrypted daily gratitude journal. No ads, no tracking, no social feed. Just you and your thoughts.',
canonical: 'https://gratefuljournal.online/about',
ogTitle: 'About Grateful Journal',
ogTitle: 'About Grateful Journal | Private, Encrypted Gratitude Journaling',
ogDescription: 'A free, private gratitude journal with end-to-end encryption. Learn how we built a distraction-free space for your daily reflection practice.',
})
return (

View File

@@ -8,7 +8,7 @@ import { usePageMeta } from '../hooks/usePageMeta'
export default function LoginPage() {
usePageMeta({
title: 'Grateful Journal — Your Private Gratitude Journal',
title: 'Private Gratitude Journal App | Grateful Journal',
description: 'A private, end-to-end encrypted gratitude journal. No feeds, no noise — just you and your thoughts. Grow your gratitude one moment at a time.',
canonical: 'https://gratefuljournal.online/',
})
@@ -34,7 +34,10 @@ export default function LoginPage() {
}
}
if (loading || signingIn) {
// Keep showing the loader until the navigate effect fires.
// Without the `user` check here, the login form flashes for one frame
// between loading→false and the useEffect redirect.
if (loading || signingIn || user) {
return <PageLoader />
}

View File

@@ -3,10 +3,10 @@ import { usePageMeta } from '../hooks/usePageMeta'
export default function PrivacyPage() {
usePageMeta({
title: 'Privacy Policy Grateful Journal',
description: 'Grateful Journal\'s privacy policy. Your journal entries are end-to-end encrypted — we cannot read them. App preferences are stored unencrypted. No ads, no tracking.',
title: 'Privacy Policy | Grateful Journal',
description: 'Grateful Journal\'s privacy policy. Your journal entries are end-to-end encrypted — we cannot read them. No ads, no tracking, no data selling.',
canonical: 'https://gratefuljournal.online/privacy',
ogTitle: 'Privacy Policy Grateful Journal',
ogTitle: 'Privacy Policy | Grateful Journal',
ogDescription: 'Your journal entries are end-to-end encrypted and private. App preferences like background images are stored unencrypted. No ads, no tracking, no data selling.',
})
return (

View File

@@ -3,11 +3,11 @@ import { usePageMeta } from '../hooks/usePageMeta'
export default function TermsOfServicePage() {
usePageMeta({
title: 'Terms of Service Grateful Journal',
description: 'Terms of Service for Grateful Journal. Read about the rules and guidelines for using our app.',
title: 'Terms of Service | Grateful Journal',
description: 'Terms of Service for Grateful Journal — a free, private gratitude journal app. Read about the rules and guidelines for using the service.',
canonical: 'https://gratefuljournal.online/termsofservice',
ogTitle: 'Terms of Service Grateful Journal',
ogDescription: 'Terms of Service for Grateful Journal. Read about the rules and guidelines for using our app.',
ogTitle: 'Terms of Service | Grateful Journal',
ogDescription: 'Terms of Service for Grateful Journal — a free, private gratitude journal app. Read about the rules and guidelines for using the service.',
})
return (
<div className="static-page">