import { user, skills } from './user';

// ============================================================================
// NAVIGATION
// ============================================================================

export const navigation = [
	{ name: 'home', path: '/', icon: '~' },
	{ name: 'about', path: '/about', icon: 'mdi:account' },
	// { name: 'portfolio', path: '/portfolio', icon: '📁' },
	// { name: 'models', path: '/models', icon: '🎨' },
	{ name: 'projects', path: '/projects', icon: '🏆' },
	// { name: 'components', path: '/components', icon: '🧩' },
	{ name: 'blog', path: '/blog', icon: '📝' }
];

// ============================================================================
// SITE METADATA
// ============================================================================

export const site = {
	title: `${user.displayname} | Portfolio`,
	description: `${user.title} - ${user.bio}`,
	keywords: ['developer', 'portfolio', 'programming', ...skills.languages, ...skills.frameworks],
	ogImage: '/og-image.png',
	twitterHandle: '@yourusername'
};

// ============================================================================
// PAGE META (per-route)
// ============================================================================

export interface PageMeta {
	title: string;
	description?: string;
	icon?: string; // Iconify id or path to an image (e.g. 'mdi:home' or '/icons/home.svg')
	keywords?: string[];
	ogImage?: string;
}

// Map route => meta. Use route paths as keys (e.g. '/', '/portfolio')
export const pageMeta: Record<string, PageMeta> = {
	'/': {
		title: `${user.displayname} — Home`,
		description: `Home — ${user.title} portfolio and projects.`,
		icon: 'mdi:home',
		keywords: ['home', 'portfolio', 'about']
	},
	'/about': {
		title: `${user.displayname} — About`,
		description: `About — ${user.title} portfolio and projects.`,
		icon: 'mdi:account',
		keywords: ['about', 'portfolio', 'about']
	},
	'/portfolio': {
		title: `${user.displayname} — Portfolio`,
		description: 'Selected projects, highlights and case studies.',
		icon: 'mdi:folder-multiple',
		keywords: ['projects', 'portfolio', 'showcase']
	},
	'/models': {
		title: `${user.displayname} — 3D Models`,
		description: 'A curated collection of 3D models and previews.',
		icon: 'mdi:cube-outline',
		keywords: ['3d', 'models', 'glb', 'gltf']
	},
	'/projects': {
		title: `${user.displayname} — Projects`,
		description: 'Hackathon projects, demos and awards.',
		icon: 'mdi:trophy',
		keywords: ['hackathon', 'projects', 'events']
	},
	'/projects/opensource': {
		title: `${user.displayname} — Open Source`,
		description: 'Libraries and tools built and maintained in the open.',
		icon: 'mdi:source-branch',
		keywords: ['open source', 'projects', 'github']
	},
	'/projects/packages': {
		title: `${user.displayname} — Packages`,
		description: 'Published packages and CLI tools.',
		icon: 'mdi:package-variant',
		keywords: ['packages', 'npm', 'cli']
	},
	'/projects/hackathons': {
		title: `${user.displayname} — Hackathons`,
		description: 'Hackathon projects, demos and awards.',
		icon: 'mdi:trophy',
		keywords: ['hackathon', 'projects', 'events']
	},
	'/projects/research': {
		title: `${user.displayname} — Research`,
		description: 'Research roles, projects, and publications.',
		icon: 'mdi:microscope',
		keywords: ['research', 'academic', 'publications']
	},
	'/components': {
		title: `${user.displayname} — Components`,
		description: 'Terminal UI components showcase and documentation.',
		icon: 'mdi:puzzle',
		keywords: ['components', 'ui', 'terminal', 'tui']
	},
	'/links': {
		title: `${user.displayname} — Links`,
		description: 'All my links with scannable QR codes.',
		icon: 'mdi:link-variant',
		keywords: ['links', 'qr', 'social', 'contact']
	},
	'/blog': {
		title: `${user.displayname} — Blog`,
		description: 'Notes and write-ups from my projects.',
		icon: 'mdi:post-outline',
		keywords: ['blog', 'writing', 'notes']
	}
};
