Skip to content

Site Configuration

The site configuration file (src/config/site.config.ts) is the central place for all site-wide settings.

interface SiteConfig {
name: string;
description: string;
url: string;
ogImage: string;
author: string;
email: string;
phone?: string;
address?: {
street: string;
city: string;
state: string;
zip: string;
country: string;
};
socialLinks: string[];
twitter?: {
site: string;
creator: string;
};
verification?: {
google?: string;
bing?: string;
};
branding: {
logo: {
alt: string;
};
favicon: {
svg: string;
};
colors: {
themeColor: string;
backgroundColor: string;
};
};
}
const siteConfig: SiteConfig = {
name: 'Velocity',
description: 'A modern website built with Astro and Tailwind CSS',
url: import.meta.env.SITE_URL || 'https://example.com',
ogImage: '/og-default.png',
author: 'Your Name',
email: 'hello@example.com',
phone: '+1 (555) 123-4567',
address: {
street: '123 Main St',
city: 'Dallas',
state: 'TX',
zip: '75001',
country: 'US',
},
socialLinks: [
'https://github.com/yourname',
'https://twitter.com/yourname',
],
twitter: {
site: '@yoursite',
creator: '@yourcreator',
},
verification: {
google: 'your-google-verification-code',
bing: 'your-bing-verification-code',
},
branding: {
logo: { alt: 'Your Site Name' },
favicon: { svg: '/favicon.svg' },
colors: {
themeColor: '#F94C10',
backgroundColor: '#ffffff',
},
},
};
export default siteConfig;
FieldTypeDescription
namestringYour site/brand name
descriptionstringDefault meta description
urlstringProduction URL
ogImagestringDefault OG image path
authorstringDefault author name
emailstringContact email
FieldTypeDescription
phonestringContact phone number
addressobjectPhysical address for local SEO
socialLinksstring[]Social media profile URLs
twitterobjectTwitter card configuration
verificationobjectSearch engine verification codes
FieldPathDescription
logo.altbranding.logo.altLogo alt text for accessibility
favicon.svgbranding.favicon.svgPath to favicon in public/
themeColorbranding.colors.themeColorBrowser toolbar color (hex)
backgroundColorbranding.colors.backgroundColorPWA splash background
---
import siteConfig from '@/config/site.config';
---
<title>{siteConfig.name}</title>
<meta name="description" content={siteConfig.description} />
<meta name="author" content={siteConfig.author} />