spb/satelliteindex
Public
TypeScript 66.5%
Python 30.9%
JavaScript 1.4%
CSS 0.7%
1export const SITE_NAME = 'SatelliteIndex';2export const SITE_URL = (process.env.NEXT_PUBLIC_SITE_URL ?? 'https://www.satelliteindex.io').replace(/\/$/, '');3export const TAGLINE = "The world's orbital infrastructure, mapped and indexed";4export const DESCRIPTION =5 'SatelliteIndex is the public intelligence layer for everything in Earth orbit: satellites, constellations, operators, countries, launches, debris and reentries — with live SGP4 positions, orbital history and transparent sources.';6export const CONTACT_EMAIL = 'contact@spboucher.ai';7export const AUTHOR = 'Simon-Pierre Boucher';89export const routes = {10 home: () => '/',11 explore: () => '/explore',12 search: (q?: string) => (q ? `/search?q=${encodeURIComponent(q)}` : '/search'),13 satellites: (qs?: string) => (qs ? `/satellites?${qs}` : '/satellites'),14 satellite: (slug: string) => `/satellite/${slug}`,15 constellations: () => '/constellations',16 constellation: (slug: string) => `/constellation/${slug}`,17 operators: () => '/operators',18 operator: (slug: string) => `/operator/${slug}`,19 countries: () => '/countries',20 country: (slug: string) => `/country/${slug}`,21 launches: (qs?: string) => (qs ? `/launches?${qs}` : '/launches'),22 launch: (cospar: string) => `/launch/${cospar}`,23 launchSites: () => '/launch-sites',24 launchSite: (slug: string) => `/launch-sites/${slug}`,25 debris: () => '/debris',26 reentries: () => '/reentries',27 events: (qs?: string) => (qs ? `/events?${qs}` : '/events'),28 stats: () => '/stats',29 rankings: (metric?: string) => (metric ? `/rankings?metric=${metric}` : '/rankings'),30 sources: () => '/sources',31 methodology: () => '/methodology',32 status: () => '/status',33 statusData: () => '/status/data',34 developers: () => '/developers',35 about: () => '/about',36 privacy: () => '/privacy',37 terms: () => '/terms',38 admin: () => '/admin',39} as const;4041export const primaryNav = [42 { href: routes.explore(), label: 'Explore' },43 { href: routes.satellites(), label: 'Satellites' },44 { href: routes.constellations(), label: 'Constellations' },45 { href: routes.operators(), label: 'Operators' },46 { href: routes.countries(), label: 'Countries' },47 { href: routes.launches(), label: 'Launches' },48 { href: routes.events(), label: 'Events' },49 { href: routes.stats(), label: 'Stats' },50] as const;5152export const moreNav = [53 { href: routes.debris(), label: 'Debris' },54 { href: routes.reentries(), label: 'Reentries' },55 { href: routes.rankings(), label: 'Rankings' },56 { href: routes.launchSites(), label: 'Launch sites' },57 { href: routes.sources(), label: 'Sources' },58 { href: routes.methodology(), label: 'Methodology' },59 { href: routes.status(), label: 'Status' },60 { href: routes.developers(), label: 'API' },61 { href: routes.about(), label: 'About' },62] as const;6364export const ORBIT_CLASS_COLORS: Record<string, string> = {65 LEO: 'var(--leo)',66 MEO: 'var(--meo)',67 GEO: 'var(--geo)',68 HEO: 'var(--heo)',69 OTHER: 'var(--other)',70 UNKNOWN: 'var(--other)',71};7273export const STATUS_COLORS: Record<string, string> = {74 ACTIVE: 'var(--active)',75 INACTIVE: 'var(--inactive)',76 DECAYED: 'var(--ink-3)',77 UNKNOWN: 'var(--warn)',78 LOST: 'var(--danger)',79 FAILED: 'var(--danger)',80 PLANNED: 'var(--accent-2)',81};8283export const MISSION_LABELS: Record<string, string> = {84 communications: 'Communications',85 'earth-observation': 'Earth observation',86 navigation: 'Navigation',87 weather: 'Weather',88 science: 'Science',89 military: 'Military',90 technology: 'Technology',91 iot: 'IoT / M2M',92 station: 'Space station',93 'rocket-body': 'Rocket body',94 debris: 'Debris',95 unknown: 'Unknown',96};9798export const OBJECT_TYPE_LABELS: Record<string, string> = {99 PAYLOAD: 'Payload',100 ROCKET_BODY: 'Rocket body',101 DEBRIS: 'Debris',102 STATION: 'Space station',103 UNKNOWN: 'Unknown',104 CREWED: 'Crewed',105};106107export const EVENT_TYPE_LABELS: Record<string, string> = {108 SATELLITE_LAUNCH: 'Launch',109 DECAY: 'Decay / reentry',110 ORBIT_CHANGE: 'Orbit change',111 SATELLITE_DECOMMISSION: 'Decommission',112 SATELLITE_ACTIVATION: 'Activation',113 REENTRY: 'Reentry',114 CONSTELLATION_EXPANSION: 'Constellation expansion',115 REGULATORY_APPROVAL: 'Regulatory approval',116 NEW_LICENSE: 'New license',117 COMPANY_ANNOUNCEMENT: 'Announcement',118};119