-
Notifications
You must be signed in to change notification settings - Fork 8
fix: QA issues #28-35 — SEO titles, favicon, accessibility, security headers #38
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| import type { Metadata } from 'next'; | ||
|
|
||
| export const metadata: Metadata = { | ||
| title: 'Books', | ||
| description: 'Browse Books on BitTorrented', | ||
| }; | ||
|
|
||
| export default function Layout({ children }: { children: React.ReactNode }) { | ||
| return children; | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,5 +1,6 @@ | ||
| 'use client'; | ||
|
|
||
|
|
||
| /** | ||
| * Books Page | ||
| * | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| import type { Metadata } from 'next'; | ||
|
|
||
| export const metadata: Metadata = { | ||
| title: 'DHT Torrents', | ||
| description: 'Browse DHT Torrents on BitTorrented', | ||
| }; | ||
|
|
||
| export default function Layout({ children }: { children: React.ReactNode }) { | ||
| return children; | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,5 +1,6 @@ | ||
| 'use client'; | ||
|
|
||
|
|
||
| /** | ||
| * DHT Index Page | ||
| * | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| import type { Metadata } from 'next'; | ||
|
|
||
| export const metadata: Metadata = { | ||
| title: 'Find Torrents', | ||
| description: 'Browse Find Torrents on BitTorrented', | ||
| }; | ||
|
|
||
| export default function Layout({ children }: { children: React.ReactNode }) { | ||
| return children; | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,5 +1,6 @@ | ||
| 'use client'; | ||
|
|
||
|
|
||
| /** | ||
| * Find Torrents Page | ||
| * | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| import type { Metadata } from 'next'; | ||
|
|
||
| export const metadata: Metadata = { | ||
| title: 'Movies', | ||
| description: 'Browse Movies on BitTorrented', | ||
| }; | ||
|
|
||
| export default function Layout({ children }: { children: React.ReactNode }) { | ||
| return children; | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,5 +1,6 @@ | ||
| 'use client'; | ||
|
|
||
|
|
||
| /** | ||
| * Movies Page | ||
| * | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| import type { Metadata } from 'next'; | ||
|
|
||
| export const metadata: Metadata = { | ||
| title: 'Music', | ||
| description: 'Browse Music on BitTorrented', | ||
| }; | ||
|
|
||
| export default function Layout({ children }: { children: React.ReactNode }) { | ||
| return children; | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,5 +1,6 @@ | ||
| 'use client'; | ||
|
|
||
|
|
||
| /** | ||
| * Music Page | ||
| * | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| import type { Metadata } from 'next'; | ||
|
|
||
| export const metadata: Metadata = { | ||
| title: 'Search', | ||
| description: 'Browse Search on BitTorrented', | ||
| }; | ||
|
|
||
| export default function Layout({ children }: { children: React.ReactNode }) { | ||
| return children; | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,5 +1,6 @@ | ||
| 'use client'; | ||
|
|
||
|
|
||
| /** | ||
| * Search Page | ||
| * | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| import type { Metadata } from 'next'; | ||
|
|
||
| export const metadata: Metadata = { | ||
| title: 'Trending', | ||
| description: 'Browse Trending on BitTorrented', | ||
| }; | ||
|
Comment on lines
+3
to
+6
|
||
|
|
||
| export default function Layout({ children }: { children: React.ReactNode }) { | ||
| return children; | ||
| } | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,5 +1,6 @@ | ||
| 'use client'; | ||
|
|
||
|
|
||
| /** | ||
| * Trending Page | ||
| * | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| import type { Metadata } from 'next'; | ||
|
|
||
| export const metadata: Metadata = { | ||
| title: 'TV Shows', | ||
| description: 'Browse TV Shows on BitTorrented', | ||
| }; | ||
|
|
||
| export default function Layout({ children }: { children: React.ReactNode }) { | ||
| return children; | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,5 +1,6 @@ | ||
| 'use client'; | ||
|
|
||
|
|
||
| /** | ||
| * TV Shows Page | ||
| * | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Because this is a client component page that is still SSR'd, gating the banner on
typeof window !== 'undefined'means the server render will never include the banner, but the client render can include it for?reason=live-tv. That can trigger hydration mismatch warnings and causes a layout shift. Prefer derivingreasonfromsearchParamsin a server wrapper (and pass it as a prop), or render the banner only after mount via state set inuseEffect(so the first client render matches SSR).