Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
101 changes: 75 additions & 26 deletions frontend/config/site.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,85 @@ import type { Metadata } from "next";

const TITLE = "1ai | Multi-model AI chat app";
const DESCRIPTION =
"1ai is a platform that allows you to chat with different LLMs via a unified interface.";
"1ai is a powerful platform that allows you to chat with different Large Language Models (LLMs) via a unified interface. Experience seamless AI conversations with models like GPT-4, Claude, and more. Fast, secure, and user-friendly AI chat application.";

const BASE_URL = process.env.NEXT_PUBLIC_APP_URL ?? "http://localhost:3002";
// Use environment variable or default to production URL
const BASE_URL = process.env.NEXT_PUBLIC_APP_URL ?? "https://1ai.chat";

export const siteConfig: Metadata = {
title: TITLE,
description: DESCRIPTION,
keywords: [
"AI Chat",
"Large Language Models",
"LLM",
"GPT-4",
"Claude",
"AI Assistant",
"Chat AI",
"Multi-model AI",
"AI Platform",
"Conversational AI",
"AI Chat App",
"Artificial Intelligence",
"Machine Learning",
"Natural Language Processing",
"AI Tools",
"Productivity",
"AI Assistant",
"Chatbot",
"AI Conversation",
"Smart Chat",
],
authors: [{ name: "1ai Team" }],
creator: "1ai",
publisher: "1ai",
formatDetection: {
email: false,
address: false,
telephone: false,
},
metadataBase: new URL(BASE_URL),
alternates: {
canonical: BASE_URL,
},
openGraph: {
type: "website",
locale: "en_US",
url: BASE_URL,
title: TITLE,
description: DESCRIPTION,
siteName: "1ai",
images: [
{
url: `${BASE_URL}/og-image.png`,
width: 1200,
height: 630,
alt: "1ai - Multi-model AI chat app",
},
],
},
twitter: {
card: "summary_large_image",
title: TITLE,
description: DESCRIPTION,
images: [`${BASE_URL}/og-image.png`],
creator: "@1ai_chat",
},
robots: {
index: true,
follow: true,
googleBot: {
index: true,
follow: true,
"max-video-preview": -1,
"max-image-preview": "large",
"max-snippet": -1,
},
},
verification: {
google: process.env.GOOGLE_SITE_VERIFICATION,
},
icons: {
icon: [
{
Expand All @@ -22,30 +94,7 @@ export const siteConfig: Metadata = {
type: "image/svg+xml",
},
],
apple: "/apple-touch-icon.png",
},

category: "AI",
alternates: {
canonical: BASE_URL,
},

keywords: [
"1AI Chat",
"AI Fiesta",
"1AI",
"AI",
"LLM",
"Fast",
"User friendly",
"Customization",
"Cheap",
"web3",
"blockchain",
"open-source",
"self-hosted",
"self-hosting",
"self-host",
"self-hosting",
],
metadataBase: new URL(BASE_URL!),
};
27 changes: 27 additions & 0 deletions frontend/public/manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
{
"name": "1ai - Multi-model AI Chat Platform",
"short_name": "1ai",
"description": "Chat with multiple AI models including GPT-4, Claude, and more through a unified interface",
"start_url": "/",
"display": "standalone",
"background_color": "#000000",
"theme_color": "#000000",
"orientation": "portrait-primary",
"icons": [
{
"src": "/favicon.svg",
"sizes": "any",
"type": "image/svg+xml",
"purpose": "any maskable"
},
{
"src": "/favicon-dark.svg",
"sizes": "any",
"type": "image/svg+xml",
"purpose": "any"
}
],
"categories": ["productivity", "utilities", "ai"],
"lang": "en",
"dir": "ltr"
}
12 changes: 12 additions & 0 deletions frontend/public/robots.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
User-agent: *
Allow: /

# Disallow sensitive areas
Disallow: /api/
Disallow: /admin/
Disallow: /_next/
Disallow: /auth/
Disallow: /dashboard/

# Sitemap location
Sitemap: https://1ai.co/sitemap.xml
45 changes: 45 additions & 0 deletions frontend/public/sitemap.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://1ai.co</loc>
<lastmod>2024-12-19</lastmod>
<changefreq>daily</changefreq>
<priority>1.0</priority>
</url>
<url>
<loc>https://1ai.co/ask</loc>
<lastmod>2024-12-19</lastmod>
<changefreq>daily</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://1ai.co/pricing</loc>
<lastmod>2024-12-19</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://1ai.co/about</loc>
<lastmod>2024-12-19</lastmod>
<changefreq>monthly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://1ai.co/contact</loc>
<lastmod>2024-12-19</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://1ai.co/privacy</loc>
<lastmod>2024-12-19</lastmod>
<changefreq>yearly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://1ai.co/terms</loc>
<lastmod>2024-12-19</lastmod>
<changefreq>yearly</changefreq>
<priority>0.5</priority>
</url>
</urlset>