at://Press
at main 42 lines 1.5 kB view raw
1export const BLOG_URL = import.meta.env.BLOG_URL || "http://localhost:4321"; 2export const PDS_URL = import.meta.env.PDS_URL; 3export const DID = import.meta.env.DID; 4export const HANDLE = import.meta.env.HANDLE; 5export const BLOG_COLLECTION = import.meta.env.BLOG_COLLECTION || "com.whtwnd.blog.entry"; 6export const ABOUT_COLLECTION = import.meta.env.ABOUT_COLLECTION || "xyz.arcnode.blog.about"; 7export const ABOUT_RKEY = "self"; 8 9// Content limits 10export const MAX_TITLE_LENGTH = 300; 11export const MAX_CONTENT_LENGTH = 100_000; 12export const MAX_ABOUT_LENGTH = 5_000; 13export const MAX_IMAGE_SIZE = 5 * 1024 * 1024; // 5 MB 14 15// Session 16export const SESSION_DID_COOKIE = "session_did"; 17export const SESSION_HANDLE_COOKIE = "session_handle"; 18export const SESSION_MAX_AGE = 86400 * 7; // 7 days 19 20// RSS 21export const RSS_MAX_ITEMS = 20; 22export const RSS_EXCERPT_LENGTH = 300; 23export const DEFAULT_EXCERPT_LENGTH = 160; 24 25// Theme 26export const THEME_STORAGE_KEY = "blog-theme"; 27export const THEME_COLORS: Record<string, string> = { 28 default: "#0f172a", 29 parchment: "#d9ccb4", 30 moss: "#dde6d5", 31 slate: "#eef0f3", 32 rose: "#f0e2e4", 33 eink: "#e5e1dc", 34}; 35export const DEFAULT_THEME_COLOR = "#e5e1dc"; 36 37// Cache TTLs (milliseconds) 38export const PROFILE_TTL = 3600_000; // 1 hour 39export const ENTRIES_TTL = 300_000; // 5 minutes 40export const ENTRY_TTL = 600_000; // 10 minutes 41export const ABOUT_TTL = 3600_000; // 1 hour 42export const MAX_ENTRY_CACHE = 200;