SPB Git forge
28commits 1branches 0releases
7.7 MBsize
maindefault branch
10 days agolast push
Python 66.3% TypeScript 22.7% JavaScript 8.6% HTML 1.4% CSS 0.7%
1.5 KB · 34 lines typescript
Raw Blame History
1import type { MetadataRoute } from 'next';2import { DESCRIPTION, SITE_NAME, TAGLINE, THEME_DARK, THEME_LIGHT } from '@/lib/site';34export default function manifest(): MetadataRoute.Manifest {5  return {6    name: `${SITE_NAME} — ${TAGLINE}`,7    short_name: SITE_NAME,8    description: DESCRIPTION,9    id: '/',10    start_url: '/',11    scope: '/',12    display: 'standalone',13    orientation: 'any',14    background_color: THEME_DARK,15    theme_color: THEME_LIGHT,16    lang: 'en',17    dir: 'ltr',18    categories: ['business', 'reference', 'news'],19    // PNGs generated by scripts/build-icons.mjs from the mark geometry (`pnpm icons`).20    icons: [21      { src: '/icon-192.png', sizes: '192x192', type: 'image/png', purpose: 'any' },22      { src: '/icon-512.png', sizes: '512x512', type: 'image/png', purpose: 'any' },23      { src: '/icon-512-maskable.png', sizes: '512x512', type: 'image/png', purpose: 'maskable' },24      { src: '/icon.svg', sizes: 'any', type: 'image/svg+xml', purpose: 'any' },25    ],26    shortcuts: [27      { name: 'Live feed', short_name: 'Live', description: 'Structured corporate events as they are detected', url: '/live' },28      { name: 'Companies', short_name: 'Companies', description: 'Monitored companies directory', url: '/companies' },29      { name: 'Rankings', short_name: 'Rankings', description: 'Most active, fastest hiring, most AI-active…', url: '/rankings' },30      { name: 'Watchlist', short_name: 'Watchlist', description: 'Companies you follow', url: '/watchlist' },31    ],32  };33}34