Skip to content

Commit

Permalink
SEO
Browse files Browse the repository at this point in the history
  • Loading branch information
A-Hazzard committed Nov 8, 2024
1 parent f7a8f58 commit 3b567e2
Show file tree
Hide file tree
Showing 7 changed files with 191 additions and 12 deletions.
19 changes: 7 additions & 12 deletions app/layout.tsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import type { Metadata } from "next";
import "./globals.css";
import { NextUIProvider } from "@nextui-org/react";
import { Providers } from "./providers";
import { Metadata } from "next";

export const metadata: Metadata = {
title: "Digital Utopia - Empower Your Financial Journey",
Expand All @@ -9,11 +9,11 @@ export const metadata: Metadata = {
openGraph: {
title: "Digital Utopia",
description: "Empower your financial journey with Digital Utopia.",
url: "https://digital-utopia.vercel.app",
url: "https://digitalutopia.app",
siteName: "Digital Utopia",
images: [
{
url: "https://digital-utopia.vercel.app/logo.svg",
url: "https://digitalutopia.app/logo.png",
width: 800,
height: 600,
alt: "Digital Utopia",
Expand All @@ -22,13 +22,8 @@ export const metadata: Metadata = {
locale: "en_US",
type: "website",
},
twitter: {
card: "summary_large_image",
title: "Digital Utopia",
description: "Empower your financial journey with Digital Utopia.",
images: ["https://digital-utopia.vercel.app/logo.svg"],
},
};

export default function RootLayout({
children,
}: Readonly<{
Expand All @@ -37,9 +32,9 @@ export default function RootLayout({
return (
<html lang="en">
<body>
<NextUIProvider>
<Providers>
{children}
</NextUIProvider>
</Providers>
</body>
</html>
);
Expand Down
25 changes: 25 additions & 0 deletions app/manifest.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
import { MetadataRoute } from 'next'

export default function manifest(): MetadataRoute.Manifest {
return {
name: 'Digital Utopia',
short_name: 'Digital Utopia',
description: 'Secure crypto trading platform',
start_url: '/',
display: 'standalone',
background_color: '#000000',
theme_color: '#000000',
icons: [
{
src: '/logo.png',
sizes: '192x192',
type: 'image/png',
},
{
src: '/logo.png',
sizes: '512x512',
type: 'image/png',
},
],
}
}
23 changes: 23 additions & 0 deletions app/metadata.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
import type { Metadata } from "next";

export const metadata: Metadata = {
title: "Digital Utopia - Empower Your Financial Journey",
description: "Join Digital Utopia to start your crypto journey, become a profitable trader, and access exclusive financial services.",
keywords: "crypto, trading, financial independence, copy trading, digital opportunities, deposit, withdraw, invoices",
openGraph: {
title: "Digital Utopia",
description: "Empower your financial journey with Digital Utopia.",
url: "https://digitalutopia.app",
siteName: "Digital Utopia",
images: [
{
url: "https://digitalutopia.app/logo.svg",
width: 800,
height: 600,
alt: "Digital Utopia",
},
],
locale: "en_US",
type: "website",
},
};
6 changes: 6 additions & 0 deletions app/providers.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@

import { NextUIProvider } from "@nextui-org/react";

export function Providers({ children }: { children: React.ReactNode }) {
return <NextUIProvider>{children}</NextUIProvider>;
}
16 changes: 16 additions & 0 deletions app/robots.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import { MetadataRoute } from 'next'

export default function robots(): MetadataRoute.Robots {
return {
rules: {
userAgent: '*',
allow: '/',
disallow: [
'/admin/*',
'/api/*',
'/private/*',
],
},
sitemap: 'https://digitalutopia.app/sitemap.xml',
}
}
87 changes: 87 additions & 0 deletions app/sitemap.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
import { MetadataRoute } from 'next'

export default function sitemap(): MetadataRoute.Sitemap {
const baseUrl = 'https://digitalutopia.app' // Replace with your actual domain

return [
{
url: `${baseUrl}`,
lastModified: new Date(),
changeFrequency: 'daily',
priority: 1,
},
{
url: `${baseUrl}/login`,
lastModified: new Date(),
changeFrequency: 'monthly',
priority: 0.8,
},
{
url: `${baseUrl}/register`,
lastModified: new Date(),
changeFrequency: 'monthly',
priority: 0.8,
},
{
url: `${baseUrl}/forgot-password`,
lastModified: new Date(),
changeFrequency: 'yearly',
priority: 0.5,
},
{
url: `${baseUrl}/resources`,
lastModified: new Date(),
changeFrequency: 'weekly',
priority: 0.9,
},
{
url: `${baseUrl}/invoices`,
lastModified: new Date(),
changeFrequency: 'daily',
priority: 0.8,
},
{
url: `${baseUrl}/withdrawals`,
lastModified: new Date(),
changeFrequency: 'daily',
priority: 0.8,
},
// Admin routes
{
url: `${baseUrl}/admin/user-management`,
lastModified: new Date(),
changeFrequency: 'daily',
priority: 0.7,
},
{
url: `${baseUrl}/admin/invoices`,
lastModified: new Date(),
changeFrequency: 'daily',
priority: 0.7,
},
{
url: `${baseUrl}/admin/deposits`,
lastModified: new Date(),
changeFrequency: 'daily',
priority: 0.7,
},
{
url: `${baseUrl}/admin/withdrawals`,
lastModified: new Date(),
changeFrequency: 'daily',
priority: 0.7,
},
{
url: `${baseUrl}/admin/trades`,
lastModified: new Date(),
changeFrequency: 'daily',
priority: 0.7,
},
{
url: `${baseUrl}/admin/manage-resources`,
lastModified: new Date(),
changeFrequency: 'daily',
priority: 0.7,
},
]
}
27 changes: 27 additions & 0 deletions components/StructuredData.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
export default function StructuredData() {
const jsonLd = {
'@context': 'https://schema.org',
'@type': 'WebApplication',
name: 'Digital Utopia',
applicationCategory: 'FinanceApplication',
operatingSystem: 'Web',
description: 'Digital Utopia is a secure crypto trading platform offering seamless trading experiences with real-time market data and advanced trading tools.',
offers: {
'@type': 'Offer',
price: '0',
priceCurrency: 'USD',
},
author: {
'@type': 'Organization',
name: 'Digital Utopia',
url: 'https://digitalutopia.app',
},
}

return (
<script
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(jsonLd) }}
/>
)
}

0 comments on commit 3b567e2

Please sign in to comment.