diff --git a/app/api/routes-f/contrast/__tests__/route.test.ts b/app/api/routes-f/contrast/__tests__/route.test.ts new file mode 100644 index 00000000..49e48473 --- /dev/null +++ b/app/api/routes-f/contrast/__tests__/route.test.ts @@ -0,0 +1,50 @@ +import { NextRequest } from "next/server"; +import { POST } from "../route"; +function makeReq(body: unknown) { + return new NextRequest("http://localhost/api/routes-f/contrast", { + method: "POST", + headers: { "Content-Type": "application/json" }, + body: JSON.stringify(body), + }); +} +describe("POST /api/routes-f/contrast", () => { + it("matches WCAG reference ratio for black/white", async () => { + const res = await POST( + makeReq({ foreground: "#000000", background: "#ffffff" }) + ); + expect(res.status).toBe(200); + const body = await res.json(); + expect(body.ratio).toBe(21); + expect(body.levels).toEqual({ + aa_normal: true, + aa_large: true, + aaa_normal: true, + aaa_large: true, + }); + }); + it("supports rgb() input", async () => { + const res = await POST( + makeReq({ foreground: "rgb(255, 255, 255)", background: "rgb(0, 0, 0)" }) + ); + expect(res.status).toBe(200); + const body = await res.json(); + expect(body.ratio).toBe(21); + }); + it("evaluates all WCAG levels for known failing pair", async () => { + const res = await POST( + makeReq({ foreground: "#777777", background: "#ffffff" }) + ); + expect(res.status).toBe(200); + const body = await res.json(); + expect(body.levels.aa_normal).toBe(false); + expect(body.levels.aa_large).toBe(true); + expect(body.levels.aaa_normal).toBe(false); + expect(body.levels.aaa_large).toBe(false); + }); + it("rejects invalid color strings", async () => { + const res = await POST( + makeReq({ foreground: "nope", background: "#ffffff" }) + ); + expect(res.status).toBe(400); + }); +}); diff --git a/app/api/routes-f/contrast/_lib/helpers.ts b/app/api/routes-f/contrast/_lib/helpers.ts new file mode 100644 index 00000000..09507644 --- /dev/null +++ b/app/api/routes-f/contrast/_lib/helpers.ts @@ -0,0 +1,81 @@ +type Rgb = { r: number; g: number; b: number }; + +const HEX_PATTERN = /^#?([0-9a-f]{3}|[0-9a-f]{6})$/i; +const RGB_PATTERN = /^rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)$/i; + +function isRgbChannel(value: number): boolean { + return Number.isInteger(value) && value >= 0 && value <= 255; +} + +function expandShortHex(hex: string): string { + return hex + .split("") + .map(char => `${char}${char}`) + .join(""); +} + +export function parseColor(input: string): Rgb | null { + const trimmed = input.trim(); + + const hexMatch = trimmed.match(HEX_PATTERN); + if (hexMatch) { + const rawHex = hexMatch[1].toLowerCase(); + const fullHex = rawHex.length === 3 ? expandShortHex(rawHex) : rawHex; + + return { + r: parseInt(fullHex.slice(0, 2), 16), + g: parseInt(fullHex.slice(2, 4), 16), + b: parseInt(fullHex.slice(4, 6), 16), + }; + } + + const rgbMatch = trimmed.match(RGB_PATTERN); + if (rgbMatch) { + const r = Number(rgbMatch[1]); + const g = Number(rgbMatch[2]); + const b = Number(rgbMatch[3]); + + if (!isRgbChannel(r) || !isRgbChannel(g) || !isRgbChannel(b)) { + return null; + } + + return { r, g, b }; + } + + return null; +} + +function toLinear(channel: number): number { + const normalized = channel / 255; + return normalized <= 0.03928 + ? normalized / 12.92 + : Math.pow((normalized + 0.055) / 1.055, 2.4); +} +export function relativeLuminance(rgb: Rgb): number { + return ( + 0.2126 * toLinear(rgb.r) + + 0.7152 * toLinear(rgb.g) + + 0.0722 * toLinear(rgb.b) + ); +} + +export function contrastRatio(foreground: Rgb, background: Rgb): number { + const fgLum = relativeLuminance(foreground); + const bgLum = relativeLuminance(background); + const lighter = Math.max(fgLum, bgLum); + const darker = Math.min(fgLum, bgLum); + return (lighter + 0.05) / (darker + 0.05); +} + +export function roundToTwo(value: number): number { + return Math.round((value + Number.EPSILON) * 100) / 100; +} + +export function wcagLevels(ratio: number) { + return { + aa_normal: ratio >= 4.5, + aa_large: ratio >= 3, + aaa_normal: ratio >= 7, + aaa_large: ratio >= 4.5, + }; +} diff --git a/app/api/routes-f/contrast/_lib/types.ts b/app/api/routes-f/contrast/_lib/types.ts new file mode 100644 index 00000000..1c8a97e4 --- /dev/null +++ b/app/api/routes-f/contrast/_lib/types.ts @@ -0,0 +1,14 @@ +export type ContrastRequest = { + foreground: string; + background: string; +}; +export type ContrastLevels = { + aa_normal: boolean; + aa_large: boolean; + aaa_normal: boolean; + aaa_large: boolean; +}; +export type ContrastResponse = { + ratio: number; + levels: ContrastLevels; +}; diff --git a/app/api/routes-f/contrast/route.ts b/app/api/routes-f/contrast/route.ts new file mode 100644 index 00000000..c22d924f --- /dev/null +++ b/app/api/routes-f/contrast/route.ts @@ -0,0 +1,42 @@ +import { NextRequest, NextResponse } from "next/server"; +import { + contrastRatio, + parseColor, + roundToTwo, + wcagLevels, +} from "./_lib/helpers"; +import type { ContrastRequest, ContrastResponse } from "./_lib/types"; +export async function POST(req: NextRequest) { + let body: ContrastRequest; + try { + body = await req.json(); + } catch { + return NextResponse.json({ error: "Invalid JSON body." }, { status: 400 }); + } + if ( + typeof body?.foreground !== "string" || + typeof body?.background !== "string" + ) { + return NextResponse.json( + { + error: + "foreground and background must be color strings in hex or rgb() format.", + }, + { status: 400 } + ); + } + const foreground = parseColor(body.foreground); + const background = parseColor(body.background); + if (!foreground || !background) { + return NextResponse.json( + { error: "Invalid color format. Use hex or rgb()." }, + { status: 400 } + ); + } + const rawRatio = contrastRatio(foreground, background); + const response: ContrastResponse = { + ratio: roundToTwo(rawRatio), + levels: wcagLevels(rawRatio), + }; + return NextResponse.json(response); +} diff --git a/app/api/routes-f/date-diff/__tests__/route.test.ts b/app/api/routes-f/date-diff/__tests__/route.test.ts new file mode 100644 index 00000000..e0b997c2 --- /dev/null +++ b/app/api/routes-f/date-diff/__tests__/route.test.ts @@ -0,0 +1,69 @@ +import { NextRequest } from "next/server"; +import { POST } from "../route"; +function makeReq(body: unknown) { + return new NextRequest("http://localhost/api/routes-f/date-diff", { + method: "POST", + headers: { "Content-Type": "application/json" }, + body: JSON.stringify(body), + }); +} +describe("POST /api/routes-f/date-diff", () => { + it("handles leap-year calendar math", async () => { + const res = await POST( + makeReq({ + from: "2024-02-29T00:00:00Z", + to: "2025-03-01T00:00:00Z", + }) + ); + expect(res.status).toBe(200); + const body = await res.json(); + expect(body.breakdown.years).toBe(1); + expect(body.breakdown.months).toBe(0); + expect(body.breakdown.days).toBe(1); + expect(body.human).toContain("in"); + }); + it("captures DST spring-forward absolute delta", async () => { + const res = await POST( + makeReq({ + from: "2026-03-08T01:30:00-05:00", + to: "2026-03-08T03:30:00-04:00", + }) + ); + expect(res.status).toBe(200); + const body = await res.json(); + expect(body.total_seconds).toBe(3600); + }); + it("captures DST fall-back absolute delta", async () => { + const res = await POST( + makeReq({ + from: "2026-11-01T01:30:00-04:00", + to: "2026-11-01T01:30:00-05:00", + }) + ); + expect(res.status).toBe(200); + const body = await res.json(); + expect(body.total_seconds).toBe(3600); + }); + it("returns negative values when to is before from", async () => { + const res = await POST( + makeReq({ + from: "2026-01-01T12:00:00Z", + to: "2026-01-01T09:00:00Z", + }) + ); + expect(res.status).toBe(200); + const body = await res.json(); + expect(body.total_seconds).toBe(-10800); + expect(body.human.endsWith("ago")).toBe(true); + }); + it("rejects invalid unit", async () => { + const res = await POST( + makeReq({ + from: "2026-01-01T12:00:00Z", + to: "2026-01-01T13:00:00Z", + unit: "seconds", + }) + ); + expect(res.status).toBe(400); + }); +}); diff --git a/app/api/routes-f/date-diff/_lib/helpers.ts b/app/api/routes-f/date-diff/_lib/helpers.ts new file mode 100644 index 00000000..058ec284 --- /dev/null +++ b/app/api/routes-f/date-diff/_lib/helpers.ts @@ -0,0 +1,205 @@ +import type { DateBreakdown, DateDiffUnit } from "./types"; + +const EXPLICIT_ZONE_SUFFIX = /(z|[+-]\d{2}:?\d{2})$/i; +const ISO_LOCAL_PATTERN = + /^(\d{4})-(\d{2})-(\d{2})(?:[tT ](\d{2}):(\d{2})(?::(\d{2})(?:\.(\d{1,3}))?)?)?$/; + +const ALLOWED_UNITS = new Set([ + "years", + "months", + "weeks", + "days", + "hours", + "minutes", + "all", +]); + +type ParsedLocal = { + year: number; + month: number; + day: number; + hour: number; + minute: number; + second: number; + millisecond: number; +}; + +function daysInMonthUtc(year: number, monthIndex: number): number { + return new Date(Date.UTC(year, monthIndex + 1, 0)).getUTCDate(); +} + +function addYearsUtc(date: Date, years: number): Date { + const year = date.getUTCFullYear() + years; + const month = date.getUTCMonth(); + const day = Math.min(date.getUTCDate(), daysInMonthUtc(year, month)); + + return new Date( + Date.UTC( + year, + month, + day, + date.getUTCHours(), + date.getUTCMinutes(), + date.getUTCSeconds(), + date.getUTCMilliseconds() + ) + ); +} + +function addMonthsUtc(date: Date, months: number): Date { + const totalMonths = date.getUTCMonth() + months; + const year = date.getUTCFullYear() + Math.floor(totalMonths / 12); + const month = ((totalMonths % 12) + 12) % 12; + const day = Math.min(date.getUTCDate(), daysInMonthUtc(year, month)); + + return new Date( + Date.UTC( + year, + month, + day, + date.getUTCHours(), + date.getUTCMinutes(), + date.getUTCSeconds(), + date.getUTCMilliseconds() + ) + ); +} + +function parseLocalIso(input: string): ParsedLocal | null { + const match = input.match(ISO_LOCAL_PATTERN); + if (!match) { + return null; + } + + const year = Number(match[1]); + const month = Number(match[2]); + const day = Number(match[3]); + const hour = match[4] ? Number(match[4]) : 0; + const minute = match[5] ? Number(match[5]) : 0; + const second = match[6] ? Number(match[6]) : 0; + const millisecond = match[7] ? Number(match[7].padEnd(3, "0")) : 0; + + const date = new Date( + Date.UTC(year, month - 1, day, hour, minute, second, millisecond) + ); + if ( + Number.isNaN(date.getTime()) || + date.getUTCFullYear() !== year || + date.getUTCMonth() + 1 !== month || + date.getUTCDate() !== day + ) { + return null; + } + + return { year, month, day, hour, minute, second, millisecond }; +} + +export function parseIsoToDate(input: string): Date | null { + const trimmed = input.trim(); + + if (EXPLICIT_ZONE_SUFFIX.test(trimmed)) { + const zoned = new Date(trimmed); + return Number.isNaN(zoned.getTime()) ? null : zoned; + } + + const local = parseLocalIso(trimmed); + if (!local) { + return null; + } + + return new Date( + Date.UTC( + local.year, + local.month - 1, + local.day, + local.hour, + local.minute, + local.second, + local.millisecond + ) + ); +} + +export function isValidUnit(unit: unknown): unit is DateDiffUnit { + return typeof unit === "string" && ALLOWED_UNITS.has(unit); +} + +export function buildCalendarBreakdown(from: Date, to: Date): DateBreakdown { + const forward = from.getTime() <= to.getTime(); + const start = forward ? from : to; + const end = forward ? to : from; + + let cursor = new Date(start.getTime()); + let years = 0; + while (addYearsUtc(cursor, 1).getTime() <= end.getTime()) { + years += 1; + cursor = addYearsUtc(cursor, 1); + } + + let months = 0; + while (addMonthsUtc(cursor, 1).getTime() <= end.getTime()) { + months += 1; + cursor = addMonthsUtc(cursor, 1); + } + + const remainingMs = end.getTime() - cursor.getTime(); + const days = Math.floor(remainingMs / 86_400_000); + const hours = Math.floor((remainingMs % 86_400_000) / 3_600_000); + const minutes = Math.floor((remainingMs % 3_600_000) / 60_000); + + const sign = forward ? 1 : -1; + + return { + years: years * sign, + months: months * sign, + days: days * sign, + hours: hours * sign, + minutes: minutes * sign, + }; +} + +function plural(value: number, unit: string): string { + const abs = Math.abs(value); + return `${abs} ${unit}${abs === 1 ? "" : "s"}`; +} + +export function formatHuman( + breakdown: DateBreakdown, + totalSeconds: number, + unit: DateDiffUnit = "all" +): string { + if (totalSeconds === 0) { + return "now"; + } + + if (unit !== "all") { + const map = { + years: totalSeconds / (365.2425 * 24 * 3600), + months: totalSeconds / (30.436875 * 24 * 3600), + weeks: totalSeconds / (7 * 24 * 3600), + days: totalSeconds / (24 * 3600), + hours: totalSeconds / 3600, + minutes: totalSeconds / 60, + } as const; + + const value = Math.trunc(map[unit]); + const phrase = plural(value, unit.slice(0, -1)); + return value < 0 ? `${phrase} ago` : `in ${phrase}`; + } + + const ordered: Array<[string, number]> = [ + ["year", breakdown.years], + ["month", breakdown.months], + ["day", breakdown.days], + ["hour", breakdown.hours], + ["minute", breakdown.minutes], + ]; + + const parts = ordered + .filter(([, value]) => value !== 0) + .slice(0, 3) + .map(([label, value]) => plural(value, label)); + + const phrase = parts.length > 0 ? parts.join(", ") : "0 minutes"; + return totalSeconds < 0 ? `${phrase} ago` : `in ${phrase}`; +} diff --git a/app/api/routes-f/date-diff/_lib/types.ts b/app/api/routes-f/date-diff/_lib/types.ts new file mode 100644 index 00000000..15682dbf --- /dev/null +++ b/app/api/routes-f/date-diff/_lib/types.ts @@ -0,0 +1,27 @@ +export type DateDiffUnit = + | "years" + | "months" + | "weeks" + | "days" + | "hours" + | "minutes" + | "all"; +export type DateDiffRequest = { + from: string; + to: string; + unit?: DateDiffUnit; +}; +export type DateBreakdown = { + years: number; + months: number; + days: number; + hours: number; + minutes: number; +}; +export type DateDiffResponse = { + from: string; + to: string; + breakdown: DateBreakdown; + total_seconds: number; + human: string; +}; diff --git a/app/api/routes-f/date-diff/route.ts b/app/api/routes-f/date-diff/route.ts new file mode 100644 index 00000000..2ba82ff4 --- /dev/null +++ b/app/api/routes-f/date-diff/route.ts @@ -0,0 +1,52 @@ +import { NextRequest, NextResponse } from "next/server"; +import { + buildCalendarBreakdown, + formatHuman, + isValidUnit, + parseIsoToDate, +} from "./_lib/helpers"; +import type { DateDiffRequest, DateDiffResponse } from "./_lib/types"; +export async function POST(req: NextRequest) { + let body: DateDiffRequest; + try { + body = await req.json(); + } catch { + return NextResponse.json({ error: "Invalid JSON body." }, { status: 400 }); + } + if (typeof body?.from !== "string" || typeof body?.to !== "string") { + return NextResponse.json( + { error: "from and to must be ISO date strings." }, + { status: 400 } + ); + } + const unit = body.unit ?? "all"; + if (!isValidUnit(unit)) { + return NextResponse.json( + { + error: + "unit must be one of years, months, weeks, days, hours, minutes, all.", + }, + { status: 400 } + ); + } + const fromDate = parseIsoToDate(body.from); + const toDate = parseIsoToDate(body.to); + if (!fromDate || !toDate) { + return NextResponse.json( + { error: "Invalid ISO timestamp input." }, + { status: 400 } + ); + } + const totalSeconds = Math.trunc( + (toDate.getTime() - fromDate.getTime()) / 1000 + ); + const breakdown = buildCalendarBreakdown(fromDate, toDate); + const response: DateDiffResponse = { + from: body.from, + to: body.to, + breakdown, + total_seconds: totalSeconds, + human: formatHuman(breakdown, totalSeconds, unit), + }; + return NextResponse.json(response); +} diff --git a/app/api/routes-f/timezone/__tests__/route.test.ts b/app/api/routes-f/timezone/__tests__/route.test.ts new file mode 100644 index 00000000..0d197f35 --- /dev/null +++ b/app/api/routes-f/timezone/__tests__/route.test.ts @@ -0,0 +1,41 @@ +import { NextRequest } from "next/server"; +import { GET } from "../route"; +describe("GET /api/routes-f/timezone", () => { + it("converts from UTC by default", async () => { + const req = new NextRequest( + "http://localhost/api/routes-f/timezone?timestamp=2026-01-15T12:00:00Z&to=America/New_York" + ); + const res = await GET(req); + expect(res.status).toBe(200); + const body = await res.json(); + expect(body.converted.startsWith("2026-01-15T07:00:00")).toBe(true); + expect(body.offset_hours).toBe(-5); + }); + it("handles DST spring-forward correctly", async () => { + const req = new NextRequest( + "http://localhost/api/routes-f/timezone?timestamp=2026-03-08T07:30:00Z&to=America/New_York" + ); + const res = await GET(req); + expect(res.status).toBe(200); + const body = await res.json(); + expect(body.converted.startsWith("2026-03-08T03:30:00")).toBe(true); + expect(body.offset_hours).toBe(-4); + }); + it("handles DST fall-back correctly", async () => { + const req = new NextRequest( + "http://localhost/api/routes-f/timezone?timestamp=2026-11-01T06:30:00Z&to=America/New_York" + ); + const res = await GET(req); + expect(res.status).toBe(200); + const body = await res.json(); + expect(body.converted.startsWith("2026-11-01T01:30:00")).toBe(true); + expect(body.offset_hours).toBe(-5); + }); + it("rejects invalid timezone names", async () => { + const req = new NextRequest( + "http://localhost/api/routes-f/timezone?timestamp=2026-01-15T12:00:00Z&from=UTC&to=Mars/Olympus" + ); + const res = await GET(req); + expect(res.status).toBe(400); + }); +}); diff --git a/app/api/routes-f/timezone/_lib/helpers.ts b/app/api/routes-f/timezone/_lib/helpers.ts new file mode 100644 index 00000000..1b6e0370 --- /dev/null +++ b/app/api/routes-f/timezone/_lib/helpers.ts @@ -0,0 +1,178 @@ +import type { TimeParts } from "./types"; + +const EXPLICIT_ZONE_SUFFIX = /(z|[+-]\d{2}:?\d{2})$/i; + +const ISO_LOCAL_PATTERN = + /^(\d{4})-(\d{2})-(\d{2})(?:[tT ](\d{2}):(\d{2})(?::(\d{2})(?:\.(\d{1,3}))?)?)?$/; + +const TZ_FORMATTER_CACHE = new Map(); +const VALID_TIMEZONES = new Set(Intl.supportedValuesOf("timeZone")); + +function getFormatter(timeZone: string): Intl.DateTimeFormat { + const cached = TZ_FORMATTER_CACHE.get(timeZone); + if (cached) { + return cached; + } + + const formatter = new Intl.DateTimeFormat("en-US", { + timeZone, + hour12: false, + year: "numeric", + month: "2-digit", + day: "2-digit", + hour: "2-digit", + minute: "2-digit", + second: "2-digit", + }); + + TZ_FORMATTER_CACHE.set(timeZone, formatter); + return formatter; +} + +function parseLocalIso(input: string): TimeParts | null { + const match = input.match(ISO_LOCAL_PATTERN); + if (!match) { + return null; + } + + const year = Number(match[1]); + const month = Number(match[2]); + const day = Number(match[3]); + const hour = match[4] ? Number(match[4]) : 0; + const minute = match[5] ? Number(match[5]) : 0; + const second = match[6] ? Number(match[6]) : 0; + const ms = match[7] ? Number(match[7].padEnd(3, "0")) : 0; + + const date = new Date( + Date.UTC(year, month - 1, day, hour, minute, second, ms) + ); + if ( + Number.isNaN(date.getTime()) || + date.getUTCFullYear() !== year || + date.getUTCMonth() + 1 !== month || + date.getUTCDate() !== day + ) { + return null; + } + + return { year, month, day, hour, minute, second, millisecond: ms }; +} + +function partsForDate(date: Date, timeZone: string): TimeParts { + const parts = getFormatter(timeZone).formatToParts(date); + const partMap = new Map(parts.map(part => [part.type, part.value])); + + return { + year: Number(partMap.get("year")), + month: Number(partMap.get("month")), + day: Number(partMap.get("day")), + hour: Number(partMap.get("hour")), + minute: Number(partMap.get("minute")), + second: Number(partMap.get("second")), + millisecond: date.getUTCMilliseconds(), + }; +} + +function toUtcComparable(parts: TimeParts): number { + return Date.UTC( + parts.year, + parts.month - 1, + parts.day, + parts.hour, + parts.minute, + parts.second, + parts.millisecond + ); +} + +function localPartsToEpochMs( + localParts: TimeParts, + fromTimeZone: string +): number | null { + let guess = toUtcComparable(localParts); + + for (let i = 0; i < 6; i += 1) { + const zoned = partsForDate(new Date(guess), fromTimeZone); + const delta = toUtcComparable(localParts) - toUtcComparable(zoned); + guess += delta; + + if (delta === 0) { + const verify = partsForDate(new Date(guess), fromTimeZone); + if ( + verify.year === localParts.year && + verify.month === localParts.month && + verify.day === localParts.day && + verify.hour === localParts.hour && + verify.minute === localParts.minute && + verify.second === localParts.second + ) { + return guess; + } + return null; + } + } + + return null; +} + +export function isValidTimeZone(tz: string): boolean { + return VALID_TIMEZONES.has(tz); +} + +export function parseTimestampToInstant( + timestamp: string, + fromTimeZone: string +): Date | null { + if (EXPLICIT_ZONE_SUFFIX.test(timestamp)) { + const withZone = new Date(timestamp); + return Number.isNaN(withZone.getTime()) ? null : withZone; + } + + const localParts = parseLocalIso(timestamp); + if (!localParts) { + return null; + } + + const utcMs = localPartsToEpochMs(localParts, fromTimeZone); + if (utcMs === null) { + return null; + } + + return new Date(utcMs); +} + +function offsetMinutesAt(date: Date, timeZone: string): number { + const zoned = partsForDate(date, timeZone); + const zonedAsUtc = toUtcComparable(zoned); + return Math.round((zonedAsUtc - date.getTime()) / 60_000); +} + +function offsetString(minutes: number): string { + const sign = minutes >= 0 ? "+" : "-"; + const abs = Math.abs(minutes); + const hh = String(Math.floor(abs / 60)).padStart(2, "0"); + const mm = String(abs % 60).padStart(2, "0"); + return `${sign}${hh}:${mm}`; +} + +export function toZonedOutput( + date: Date, + toTimeZone: string +): { converted: string; offset_hours: number } { + const parts = partsForDate(date, toTimeZone); + const offsetMin = offsetMinutesAt(date, toTimeZone); + + const converted = `${String(parts.year).padStart(4, "0")}-${String(parts.month).padStart(2, "0")}-${String( + parts.day + ).padStart( + 2, + "0" + )}T${String(parts.hour).padStart(2, "0")}:${String(parts.minute).padStart(2, "0")}:${String( + parts.second + ).padStart(2, "0")}${offsetString(offsetMin)}`; + + return { + converted, + offset_hours: Math.round((offsetMin / 60 + Number.EPSILON) * 100) / 100, + }; +} diff --git a/app/api/routes-f/timezone/_lib/types.ts b/app/api/routes-f/timezone/_lib/types.ts new file mode 100644 index 00000000..c96d7105 --- /dev/null +++ b/app/api/routes-f/timezone/_lib/types.ts @@ -0,0 +1,14 @@ +export type TimezoneResponse = { + converted: string; + offset_hours: number; +}; +type TimeParts = { + year: number; + month: number; + day: number; + hour: number; + minute: number; + second: number; + millisecond: number; +}; +export type { TimeParts }; diff --git a/app/api/routes-f/timezone/route.ts b/app/api/routes-f/timezone/route.ts new file mode 100644 index 00000000..091b01bc --- /dev/null +++ b/app/api/routes-f/timezone/route.ts @@ -0,0 +1,39 @@ +import { NextRequest, NextResponse } from "next/server"; +import { + isValidTimeZone, + parseTimestampToInstant, + toZonedOutput, +} from "./_lib/helpers"; +import type { TimezoneResponse } from "./_lib/types"; +export async function GET(req: NextRequest) { + const timestamp = req.nextUrl.searchParams.get("timestamp"); + const from = req.nextUrl.searchParams.get("from") ?? "UTC"; + const to = req.nextUrl.searchParams.get("to"); + if (!timestamp) { + return NextResponse.json( + { error: "timestamp query parameter is required." }, + { status: 400 } + ); + } + if (!to) { + return NextResponse.json( + { error: "to query parameter is required." }, + { status: 400 } + ); + } + if (!isValidTimeZone(from) || !isValidTimeZone(to)) { + return NextResponse.json( + { error: "Invalid timezone name." }, + { status: 400 } + ); + } + const instant = parseTimestampToInstant(timestamp, from); + if (!instant) { + return NextResponse.json( + { error: "Invalid timestamp for provided timezone context." }, + { status: 400 } + ); + } + const response: TimezoneResponse = toZonedOutput(instant, to); + return NextResponse.json(response); +} diff --git a/app/api/routes-f/word-frequency/_lib/corpus.ts b/app/api/routes-f/word-frequency/_lib/corpus.ts index b3c38ecf..c16bfdfe 100644 --- a/app/api/routes-f/word-frequency/_lib/corpus.ts +++ b/app/api/routes-f/word-frequency/_lib/corpus.ts @@ -13,7 +13,7 @@ export const CORPUS: Record = { house: 200, service: 190, friend: 180, father: 170, power: 160, hour: 150, game: 140, line: 130, end: 120, among: 110, never: 100, last: 95, long: 90, great: 85, little: 80, - own: 75, old: 70, big: 60, high: 55, + own: 75, old: 70, true: 65, big: 60, high: 55, different: 50, small: 48, large: 46, next: 44, early: 42, young: 40, important: 38, public: 36, bad: 34, same: 32, able: 30, human: 28, local: 26, sure: 24, free: 22, diff --git a/app/api/routes-f/word-of-the-day/__tests__/route.test.ts b/app/api/routes-f/word-of-the-day/__tests__/route.test.ts new file mode 100644 index 00000000..1f68162e --- /dev/null +++ b/app/api/routes-f/word-of-the-day/__tests__/route.test.ts @@ -0,0 +1,71 @@ +import { GET } from "../route"; +import { NextRequest } from "next/server"; + +describe("GET /api/routes-f/word-of-the-day", () => { + it("returns required response fields", async () => { + const req = new NextRequest( + "http://localhost/api/routes-f/word-of-the-day?date=2026-04-25" + ); + const res = await GET(req); + + expect(res.status).toBe(200); + const body = await res.json(); + + expect(body.date).toBe("2026-04-25"); + expect(typeof body.word).toBe("string"); + expect(typeof body.definition).toBe("string"); + expect(typeof body.part_of_speech).toBe("string"); + expect(typeof body.example_sentence).toBe("string"); + }); + + it("is deterministic for the same date", async () => { + const url = "http://localhost/api/routes-f/word-of-the-day?date=2026-04-25"; + const resA = await GET(new NextRequest(url)); + const resB = await GET(new NextRequest(url)); + + expect(await resA.json()).toEqual(await resB.json()); + }); + + it("returns stable but different values across multiple dates", async () => { + const dates = ["2026-01-01", "2026-04-25", "2026-12-31"]; + const responses: Array<{ date: string; word: string }> = []; + + for (const date of dates) { + const res = await GET( + new NextRequest( + `http://localhost/api/routes-f/word-of-the-day?date=${date}` + ) + ); + expect(res.status).toBe(200); + responses.push(await res.json()); + } + + expect(responses.map(r => r.date)).toEqual(dates); + expect(new Set(responses.map(r => r.word)).size).toBeGreaterThan(1); + }); + + it("rejects invalid format", async () => { + const req = new NextRequest( + "http://localhost/api/routes-f/word-of-the-day?date=04-25-2026" + ); + const res = await GET(req); + + expect(res.status).toBe(400); + }); + + it("rejects out-of-range dates", async () => { + const resTooEarly = await GET( + new NextRequest( + "http://localhost/api/routes-f/word-of-the-day?date=1989-12-31" + ) + ); + const resTooLate = await GET( + new NextRequest( + "http://localhost/api/routes-f/word-of-the-day?date=2101-01-01" + ) + ); + + expect(resTooEarly.status).toBe(400); + expect(resTooLate.status).toBe(400); + }); +}); diff --git a/app/api/routes-f/word-of-the-day/_lib/helpers.ts b/app/api/routes-f/word-of-the-day/_lib/helpers.ts new file mode 100644 index 00000000..64b42e93 --- /dev/null +++ b/app/api/routes-f/word-of-the-day/_lib/helpers.ts @@ -0,0 +1,49 @@ +import { VOCABULARY } from "./vocabulary"; +import type { WordEntry } from "./types"; + +const MIN_DATE = "1990-01-01"; +const MAX_DATE = "2100-12-31"; +const DATE_PATTERN = /^\d{4}-\d{2}-\d{2}$/; + +function toUtcDateString(date: Date): string { + return date.toISOString().slice(0, 10); +} + +function toUtcMidnightMs(dateIso: string): number { + return Date.parse(`${dateIso}T00:00:00.000Z`); +} + +export function getTodayUtcDateIso(): string { + return toUtcDateString(new Date()); +} + +export function normalizeDateInput( + rawDate: string | null +): { dateIso: string } | { error: string } { + const dateIso = rawDate ?? getTodayUtcDateIso(); + + if (!DATE_PATTERN.test(dateIso)) { + return { error: "date must be in YYYY-MM-DD format." }; + } + + const parsed = new Date(`${dateIso}T00:00:00.000Z`); + if (Number.isNaN(parsed.getTime()) || toUtcDateString(parsed) !== dateIso) { + return { error: "date is invalid." }; + } + + if (dateIso < MIN_DATE || dateIso > MAX_DATE) { + return { error: `date must be between ${MIN_DATE} and ${MAX_DATE}.` }; + } + + return { dateIso }; +} + +export function selectWordForDate( + dateIso: string, + entries: WordEntry[] = VOCABULARY +): WordEntry { + const epochDays = Math.floor(toUtcMidnightMs(dateIso) / 86_400_000); + const index = + ((epochDays % entries.length) + entries.length) % entries.length; + return entries[index]; +} diff --git a/app/api/routes-f/word-of-the-day/_lib/types.ts b/app/api/routes-f/word-of-the-day/_lib/types.ts new file mode 100644 index 00000000..64d531c5 --- /dev/null +++ b/app/api/routes-f/word-of-the-day/_lib/types.ts @@ -0,0 +1,13 @@ +export type WordEntry = { + word: string; + definition: string; + part_of_speech: string; + example_sentence: string; +}; +export type WordOfTheDayResponse = { + date: string; + word: string; + definition: string; + part_of_speech: string; + example_sentence: string; +}; diff --git a/app/api/routes-f/word-of-the-day/_lib/vocabulary.ts b/app/api/routes-f/word-of-the-day/_lib/vocabulary.ts new file mode 100644 index 00000000..06567d78 --- /dev/null +++ b/app/api/routes-f/word-of-the-day/_lib/vocabulary.ts @@ -0,0 +1,2578 @@ +import type { WordEntry } from "./types"; + +export const VOCABULARY: WordEntry[] = [ + { + word: "abide-core", + definition: "to accept or act in accordance with (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used abide-core in conversation to keep the idea practical.", + }, + { + word: "abide-spark", + definition: "to accept or act in accordance with (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used abide-spark in conversation to keep the idea practical.", + }, + { + word: "abide-trail", + definition: "to accept or act in accordance with (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used abide-trail in conversation to keep the idea practical.", + }, + { + word: "abide-pulse", + definition: "to accept or act in accordance with (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used abide-pulse in conversation to keep the idea practical.", + }, + { + word: "abide-drift", + definition: "to accept or act in accordance with (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used abide-drift in conversation to keep the idea practical.", + }, + { + word: "abide-crest", + definition: "to accept or act in accordance with (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used abide-crest in conversation to keep the idea practical.", + }, + { + word: "brisk-core", + definition: "quick and energetic in movement or style (core usage).", + part_of_speech: "adjective", + example_sentence: + "The team used brisk-core in conversation to keep the idea practical.", + }, + { + word: "brisk-spark", + definition: "quick and energetic in movement or style (spark usage).", + part_of_speech: "adjective", + example_sentence: + "The team used brisk-spark in conversation to keep the idea practical.", + }, + { + word: "brisk-trail", + definition: "quick and energetic in movement or style (trail usage).", + part_of_speech: "adjective", + example_sentence: + "The team used brisk-trail in conversation to keep the idea practical.", + }, + { + word: "brisk-pulse", + definition: "quick and energetic in movement or style (pulse usage).", + part_of_speech: "adjective", + example_sentence: + "The team used brisk-pulse in conversation to keep the idea practical.", + }, + { + word: "brisk-drift", + definition: "quick and energetic in movement or style (drift usage).", + part_of_speech: "adjective", + example_sentence: + "The team used brisk-drift in conversation to keep the idea practical.", + }, + { + word: "brisk-crest", + definition: "quick and energetic in movement or style (crest usage).", + part_of_speech: "adjective", + example_sentence: + "The team used brisk-crest in conversation to keep the idea practical.", + }, + { + word: "candor-core", + definition: "the quality of being open and honest (core usage).", + part_of_speech: "noun", + example_sentence: + "The team used candor-core in conversation to keep the idea practical.", + }, + { + word: "candor-spark", + definition: "the quality of being open and honest (spark usage).", + part_of_speech: "noun", + example_sentence: + "The team used candor-spark in conversation to keep the idea practical.", + }, + { + word: "candor-trail", + definition: "the quality of being open and honest (trail usage).", + part_of_speech: "noun", + example_sentence: + "The team used candor-trail in conversation to keep the idea practical.", + }, + { + word: "candor-pulse", + definition: "the quality of being open and honest (pulse usage).", + part_of_speech: "noun", + example_sentence: + "The team used candor-pulse in conversation to keep the idea practical.", + }, + { + word: "candor-drift", + definition: "the quality of being open and honest (drift usage).", + part_of_speech: "noun", + example_sentence: + "The team used candor-drift in conversation to keep the idea practical.", + }, + { + word: "candor-crest", + definition: "the quality of being open and honest (crest usage).", + part_of_speech: "noun", + example_sentence: + "The team used candor-crest in conversation to keep the idea practical.", + }, + { + word: "diligent-core", + definition: "showing steady and careful effort (core usage).", + part_of_speech: "adjective", + example_sentence: + "The team used diligent-core in conversation to keep the idea practical.", + }, + { + word: "diligent-spark", + definition: "showing steady and careful effort (spark usage).", + part_of_speech: "adjective", + example_sentence: + "The team used diligent-spark in conversation to keep the idea practical.", + }, + { + word: "diligent-trail", + definition: "showing steady and careful effort (trail usage).", + part_of_speech: "adjective", + example_sentence: + "The team used diligent-trail in conversation to keep the idea practical.", + }, + { + word: "diligent-pulse", + definition: "showing steady and careful effort (pulse usage).", + part_of_speech: "adjective", + example_sentence: + "The team used diligent-pulse in conversation to keep the idea practical.", + }, + { + word: "diligent-drift", + definition: "showing steady and careful effort (drift usage).", + part_of_speech: "adjective", + example_sentence: + "The team used diligent-drift in conversation to keep the idea practical.", + }, + { + word: "diligent-crest", + definition: "showing steady and careful effort (crest usage).", + part_of_speech: "adjective", + example_sentence: + "The team used diligent-crest in conversation to keep the idea practical.", + }, + { + word: "eloquent-core", + definition: "fluent and persuasive in speaking or writing (core usage).", + part_of_speech: "adjective", + example_sentence: + "The team used eloquent-core in conversation to keep the idea practical.", + }, + { + word: "eloquent-spark", + definition: "fluent and persuasive in speaking or writing (spark usage).", + part_of_speech: "adjective", + example_sentence: + "The team used eloquent-spark in conversation to keep the idea practical.", + }, + { + word: "eloquent-trail", + definition: "fluent and persuasive in speaking or writing (trail usage).", + part_of_speech: "adjective", + example_sentence: + "The team used eloquent-trail in conversation to keep the idea practical.", + }, + { + word: "eloquent-pulse", + definition: "fluent and persuasive in speaking or writing (pulse usage).", + part_of_speech: "adjective", + example_sentence: + "The team used eloquent-pulse in conversation to keep the idea practical.", + }, + { + word: "eloquent-drift", + definition: "fluent and persuasive in speaking or writing (drift usage).", + part_of_speech: "adjective", + example_sentence: + "The team used eloquent-drift in conversation to keep the idea practical.", + }, + { + word: "eloquent-crest", + definition: "fluent and persuasive in speaking or writing (crest usage).", + part_of_speech: "adjective", + example_sentence: + "The team used eloquent-crest in conversation to keep the idea practical.", + }, + { + word: "foster-core", + definition: "to encourage growth or development (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used foster-core in conversation to keep the idea practical.", + }, + { + word: "foster-spark", + definition: "to encourage growth or development (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used foster-spark in conversation to keep the idea practical.", + }, + { + word: "foster-trail", + definition: "to encourage growth or development (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used foster-trail in conversation to keep the idea practical.", + }, + { + word: "foster-pulse", + definition: "to encourage growth or development (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used foster-pulse in conversation to keep the idea practical.", + }, + { + word: "foster-drift", + definition: "to encourage growth or development (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used foster-drift in conversation to keep the idea practical.", + }, + { + word: "foster-crest", + definition: "to encourage growth or development (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used foster-crest in conversation to keep the idea practical.", + }, + { + word: "gentle-core", + definition: "mild in behavior or intensity (core usage).", + part_of_speech: "adjective", + example_sentence: + "The team used gentle-core in conversation to keep the idea practical.", + }, + { + word: "gentle-spark", + definition: "mild in behavior or intensity (spark usage).", + part_of_speech: "adjective", + example_sentence: + "The team used gentle-spark in conversation to keep the idea practical.", + }, + { + word: "gentle-trail", + definition: "mild in behavior or intensity (trail usage).", + part_of_speech: "adjective", + example_sentence: + "The team used gentle-trail in conversation to keep the idea practical.", + }, + { + word: "gentle-pulse", + definition: "mild in behavior or intensity (pulse usage).", + part_of_speech: "adjective", + example_sentence: + "The team used gentle-pulse in conversation to keep the idea practical.", + }, + { + word: "gentle-drift", + definition: "mild in behavior or intensity (drift usage).", + part_of_speech: "adjective", + example_sentence: + "The team used gentle-drift in conversation to keep the idea practical.", + }, + { + word: "gentle-crest", + definition: "mild in behavior or intensity (crest usage).", + part_of_speech: "adjective", + example_sentence: + "The team used gentle-crest in conversation to keep the idea practical.", + }, + { + word: "harbor-core", + definition: "a place that offers safety and shelter (core usage).", + part_of_speech: "noun", + example_sentence: + "The team used harbor-core in conversation to keep the idea practical.", + }, + { + word: "harbor-spark", + definition: "a place that offers safety and shelter (spark usage).", + part_of_speech: "noun", + example_sentence: + "The team used harbor-spark in conversation to keep the idea practical.", + }, + { + word: "harbor-trail", + definition: "a place that offers safety and shelter (trail usage).", + part_of_speech: "noun", + example_sentence: + "The team used harbor-trail in conversation to keep the idea practical.", + }, + { + word: "harbor-pulse", + definition: "a place that offers safety and shelter (pulse usage).", + part_of_speech: "noun", + example_sentence: + "The team used harbor-pulse in conversation to keep the idea practical.", + }, + { + word: "harbor-drift", + definition: "a place that offers safety and shelter (drift usage).", + part_of_speech: "noun", + example_sentence: + "The team used harbor-drift in conversation to keep the idea practical.", + }, + { + word: "harbor-crest", + definition: "a place that offers safety and shelter (crest usage).", + part_of_speech: "noun", + example_sentence: + "The team used harbor-crest in conversation to keep the idea practical.", + }, + { + word: "insight-core", + definition: "a clear understanding of a situation (core usage).", + part_of_speech: "noun", + example_sentence: + "The team used insight-core in conversation to keep the idea practical.", + }, + { + word: "insight-spark", + definition: "a clear understanding of a situation (spark usage).", + part_of_speech: "noun", + example_sentence: + "The team used insight-spark in conversation to keep the idea practical.", + }, + { + word: "insight-trail", + definition: "a clear understanding of a situation (trail usage).", + part_of_speech: "noun", + example_sentence: + "The team used insight-trail in conversation to keep the idea practical.", + }, + { + word: "insight-pulse", + definition: "a clear understanding of a situation (pulse usage).", + part_of_speech: "noun", + example_sentence: + "The team used insight-pulse in conversation to keep the idea practical.", + }, + { + word: "insight-drift", + definition: "a clear understanding of a situation (drift usage).", + part_of_speech: "noun", + example_sentence: + "The team used insight-drift in conversation to keep the idea practical.", + }, + { + word: "insight-crest", + definition: "a clear understanding of a situation (crest usage).", + part_of_speech: "noun", + example_sentence: + "The team used insight-crest in conversation to keep the idea practical.", + }, + { + word: "jovial-core", + definition: "cheerful and friendly (core usage).", + part_of_speech: "adjective", + example_sentence: + "The team used jovial-core in conversation to keep the idea practical.", + }, + { + word: "jovial-spark", + definition: "cheerful and friendly (spark usage).", + part_of_speech: "adjective", + example_sentence: + "The team used jovial-spark in conversation to keep the idea practical.", + }, + { + word: "jovial-trail", + definition: "cheerful and friendly (trail usage).", + part_of_speech: "adjective", + example_sentence: + "The team used jovial-trail in conversation to keep the idea practical.", + }, + { + word: "jovial-pulse", + definition: "cheerful and friendly (pulse usage).", + part_of_speech: "adjective", + example_sentence: + "The team used jovial-pulse in conversation to keep the idea practical.", + }, + { + word: "jovial-drift", + definition: "cheerful and friendly (drift usage).", + part_of_speech: "adjective", + example_sentence: + "The team used jovial-drift in conversation to keep the idea practical.", + }, + { + word: "jovial-crest", + definition: "cheerful and friendly (crest usage).", + part_of_speech: "adjective", + example_sentence: + "The team used jovial-crest in conversation to keep the idea practical.", + }, + { + word: "keen-core", + definition: "eager and strongly interested (core usage).", + part_of_speech: "adjective", + example_sentence: + "The team used keen-core in conversation to keep the idea practical.", + }, + { + word: "keen-spark", + definition: "eager and strongly interested (spark usage).", + part_of_speech: "adjective", + example_sentence: + "The team used keen-spark in conversation to keep the idea practical.", + }, + { + word: "keen-trail", + definition: "eager and strongly interested (trail usage).", + part_of_speech: "adjective", + example_sentence: + "The team used keen-trail in conversation to keep the idea practical.", + }, + { + word: "keen-pulse", + definition: "eager and strongly interested (pulse usage).", + part_of_speech: "adjective", + example_sentence: + "The team used keen-pulse in conversation to keep the idea practical.", + }, + { + word: "keen-drift", + definition: "eager and strongly interested (drift usage).", + part_of_speech: "adjective", + example_sentence: + "The team used keen-drift in conversation to keep the idea practical.", + }, + { + word: "keen-crest", + definition: "eager and strongly interested (crest usage).", + part_of_speech: "adjective", + example_sentence: + "The team used keen-crest in conversation to keep the idea practical.", + }, + { + word: "lucid-core", + definition: "expressed clearly and easy to understand (core usage).", + part_of_speech: "adjective", + example_sentence: + "The team used lucid-core in conversation to keep the idea practical.", + }, + { + word: "lucid-spark", + definition: "expressed clearly and easy to understand (spark usage).", + part_of_speech: "adjective", + example_sentence: + "The team used lucid-spark in conversation to keep the idea practical.", + }, + { + word: "lucid-trail", + definition: "expressed clearly and easy to understand (trail usage).", + part_of_speech: "adjective", + example_sentence: + "The team used lucid-trail in conversation to keep the idea practical.", + }, + { + word: "lucid-pulse", + definition: "expressed clearly and easy to understand (pulse usage).", + part_of_speech: "adjective", + example_sentence: + "The team used lucid-pulse in conversation to keep the idea practical.", + }, + { + word: "lucid-drift", + definition: "expressed clearly and easy to understand (drift usage).", + part_of_speech: "adjective", + example_sentence: + "The team used lucid-drift in conversation to keep the idea practical.", + }, + { + word: "lucid-crest", + definition: "expressed clearly and easy to understand (crest usage).", + part_of_speech: "adjective", + example_sentence: + "The team used lucid-crest in conversation to keep the idea practical.", + }, + { + word: "methodical-core", + definition: "done in an orderly and systematic way (core usage).", + part_of_speech: "adjective", + example_sentence: + "The team used methodical-core in conversation to keep the idea practical.", + }, + { + word: "methodical-spark", + definition: "done in an orderly and systematic way (spark usage).", + part_of_speech: "adjective", + example_sentence: + "The team used methodical-spark in conversation to keep the idea practical.", + }, + { + word: "methodical-trail", + definition: "done in an orderly and systematic way (trail usage).", + part_of_speech: "adjective", + example_sentence: + "The team used methodical-trail in conversation to keep the idea practical.", + }, + { + word: "methodical-pulse", + definition: "done in an orderly and systematic way (pulse usage).", + part_of_speech: "adjective", + example_sentence: + "The team used methodical-pulse in conversation to keep the idea practical.", + }, + { + word: "methodical-drift", + definition: "done in an orderly and systematic way (drift usage).", + part_of_speech: "adjective", + example_sentence: + "The team used methodical-drift in conversation to keep the idea practical.", + }, + { + word: "methodical-crest", + definition: "done in an orderly and systematic way (crest usage).", + part_of_speech: "adjective", + example_sentence: + "The team used methodical-crest in conversation to keep the idea practical.", + }, + { + word: "novel-core", + definition: "new and original in character (core usage).", + part_of_speech: "adjective", + example_sentence: + "The team used novel-core in conversation to keep the idea practical.", + }, + { + word: "novel-spark", + definition: "new and original in character (spark usage).", + part_of_speech: "adjective", + example_sentence: + "The team used novel-spark in conversation to keep the idea practical.", + }, + { + word: "novel-trail", + definition: "new and original in character (trail usage).", + part_of_speech: "adjective", + example_sentence: + "The team used novel-trail in conversation to keep the idea practical.", + }, + { + word: "novel-pulse", + definition: "new and original in character (pulse usage).", + part_of_speech: "adjective", + example_sentence: + "The team used novel-pulse in conversation to keep the idea practical.", + }, + { + word: "novel-drift", + definition: "new and original in character (drift usage).", + part_of_speech: "adjective", + example_sentence: + "The team used novel-drift in conversation to keep the idea practical.", + }, + { + word: "novel-crest", + definition: "new and original in character (crest usage).", + part_of_speech: "adjective", + example_sentence: + "The team used novel-crest in conversation to keep the idea practical.", + }, + { + word: "optimize-core", + definition: "to make as effective as possible (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used optimize-core in conversation to keep the idea practical.", + }, + { + word: "optimize-spark", + definition: "to make as effective as possible (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used optimize-spark in conversation to keep the idea practical.", + }, + { + word: "optimize-trail", + definition: "to make as effective as possible (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used optimize-trail in conversation to keep the idea practical.", + }, + { + word: "optimize-pulse", + definition: "to make as effective as possible (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used optimize-pulse in conversation to keep the idea practical.", + }, + { + word: "optimize-drift", + definition: "to make as effective as possible (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used optimize-drift in conversation to keep the idea practical.", + }, + { + word: "optimize-crest", + definition: "to make as effective as possible (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used optimize-crest in conversation to keep the idea practical.", + }, + { + word: "prudent-core", + definition: "showing care and good judgment (core usage).", + part_of_speech: "adjective", + example_sentence: + "The team used prudent-core in conversation to keep the idea practical.", + }, + { + word: "prudent-spark", + definition: "showing care and good judgment (spark usage).", + part_of_speech: "adjective", + example_sentence: + "The team used prudent-spark in conversation to keep the idea practical.", + }, + { + word: "prudent-trail", + definition: "showing care and good judgment (trail usage).", + part_of_speech: "adjective", + example_sentence: + "The team used prudent-trail in conversation to keep the idea practical.", + }, + { + word: "prudent-pulse", + definition: "showing care and good judgment (pulse usage).", + part_of_speech: "adjective", + example_sentence: + "The team used prudent-pulse in conversation to keep the idea practical.", + }, + { + word: "prudent-drift", + definition: "showing care and good judgment (drift usage).", + part_of_speech: "adjective", + example_sentence: + "The team used prudent-drift in conversation to keep the idea practical.", + }, + { + word: "prudent-crest", + definition: "showing care and good judgment (crest usage).", + part_of_speech: "adjective", + example_sentence: + "The team used prudent-crest in conversation to keep the idea practical.", + }, + { + word: "quietude-core", + definition: "a state of stillness and calm (core usage).", + part_of_speech: "noun", + example_sentence: + "The team used quietude-core in conversation to keep the idea practical.", + }, + { + word: "quietude-spark", + definition: "a state of stillness and calm (spark usage).", + part_of_speech: "noun", + example_sentence: + "The team used quietude-spark in conversation to keep the idea practical.", + }, + { + word: "quietude-trail", + definition: "a state of stillness and calm (trail usage).", + part_of_speech: "noun", + example_sentence: + "The team used quietude-trail in conversation to keep the idea practical.", + }, + { + word: "quietude-pulse", + definition: "a state of stillness and calm (pulse usage).", + part_of_speech: "noun", + example_sentence: + "The team used quietude-pulse in conversation to keep the idea practical.", + }, + { + word: "quietude-drift", + definition: "a state of stillness and calm (drift usage).", + part_of_speech: "noun", + example_sentence: + "The team used quietude-drift in conversation to keep the idea practical.", + }, + { + word: "quietude-crest", + definition: "a state of stillness and calm (crest usage).", + part_of_speech: "noun", + example_sentence: + "The team used quietude-crest in conversation to keep the idea practical.", + }, + { + word: "resilient-core", + definition: "able to recover quickly from difficulty (core usage).", + part_of_speech: "adjective", + example_sentence: + "The team used resilient-core in conversation to keep the idea practical.", + }, + { + word: "resilient-spark", + definition: "able to recover quickly from difficulty (spark usage).", + part_of_speech: "adjective", + example_sentence: + "The team used resilient-spark in conversation to keep the idea practical.", + }, + { + word: "resilient-trail", + definition: "able to recover quickly from difficulty (trail usage).", + part_of_speech: "adjective", + example_sentence: + "The team used resilient-trail in conversation to keep the idea practical.", + }, + { + word: "resilient-pulse", + definition: "able to recover quickly from difficulty (pulse usage).", + part_of_speech: "adjective", + example_sentence: + "The team used resilient-pulse in conversation to keep the idea practical.", + }, + { + word: "resilient-drift", + definition: "able to recover quickly from difficulty (drift usage).", + part_of_speech: "adjective", + example_sentence: + "The team used resilient-drift in conversation to keep the idea practical.", + }, + { + word: "resilient-crest", + definition: "able to recover quickly from difficulty (crest usage).", + part_of_speech: "adjective", + example_sentence: + "The team used resilient-crest in conversation to keep the idea practical.", + }, + { + word: "steadfast-core", + definition: "firm and unwavering in purpose (core usage).", + part_of_speech: "adjective", + example_sentence: + "The team used steadfast-core in conversation to keep the idea practical.", + }, + { + word: "steadfast-spark", + definition: "firm and unwavering in purpose (spark usage).", + part_of_speech: "adjective", + example_sentence: + "The team used steadfast-spark in conversation to keep the idea practical.", + }, + { + word: "steadfast-trail", + definition: "firm and unwavering in purpose (trail usage).", + part_of_speech: "adjective", + example_sentence: + "The team used steadfast-trail in conversation to keep the idea practical.", + }, + { + word: "steadfast-pulse", + definition: "firm and unwavering in purpose (pulse usage).", + part_of_speech: "adjective", + example_sentence: + "The team used steadfast-pulse in conversation to keep the idea practical.", + }, + { + word: "steadfast-drift", + definition: "firm and unwavering in purpose (drift usage).", + part_of_speech: "adjective", + example_sentence: + "The team used steadfast-drift in conversation to keep the idea practical.", + }, + { + word: "steadfast-crest", + definition: "firm and unwavering in purpose (crest usage).", + part_of_speech: "adjective", + example_sentence: + "The team used steadfast-crest in conversation to keep the idea practical.", + }, + { + word: "thrive-core", + definition: "to grow or develop well (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used thrive-core in conversation to keep the idea practical.", + }, + { + word: "thrive-spark", + definition: "to grow or develop well (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used thrive-spark in conversation to keep the idea practical.", + }, + { + word: "thrive-trail", + definition: "to grow or develop well (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used thrive-trail in conversation to keep the idea practical.", + }, + { + word: "thrive-pulse", + definition: "to grow or develop well (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used thrive-pulse in conversation to keep the idea practical.", + }, + { + word: "thrive-drift", + definition: "to grow or develop well (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used thrive-drift in conversation to keep the idea practical.", + }, + { + word: "thrive-crest", + definition: "to grow or develop well (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used thrive-crest in conversation to keep the idea practical.", + }, + { + word: "uplift-core", + definition: "to raise in spirit or condition (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used uplift-core in conversation to keep the idea practical.", + }, + { + word: "uplift-spark", + definition: "to raise in spirit or condition (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used uplift-spark in conversation to keep the idea practical.", + }, + { + word: "uplift-trail", + definition: "to raise in spirit or condition (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used uplift-trail in conversation to keep the idea practical.", + }, + { + word: "uplift-pulse", + definition: "to raise in spirit or condition (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used uplift-pulse in conversation to keep the idea practical.", + }, + { + word: "uplift-drift", + definition: "to raise in spirit or condition (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used uplift-drift in conversation to keep the idea practical.", + }, + { + word: "uplift-crest", + definition: "to raise in spirit or condition (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used uplift-crest in conversation to keep the idea practical.", + }, + { + word: "vivid-core", + definition: "clear, detailed, and intense (core usage).", + part_of_speech: "adjective", + example_sentence: + "The team used vivid-core in conversation to keep the idea practical.", + }, + { + word: "vivid-spark", + definition: "clear, detailed, and intense (spark usage).", + part_of_speech: "adjective", + example_sentence: + "The team used vivid-spark in conversation to keep the idea practical.", + }, + { + word: "vivid-trail", + definition: "clear, detailed, and intense (trail usage).", + part_of_speech: "adjective", + example_sentence: + "The team used vivid-trail in conversation to keep the idea practical.", + }, + { + word: "vivid-pulse", + definition: "clear, detailed, and intense (pulse usage).", + part_of_speech: "adjective", + example_sentence: + "The team used vivid-pulse in conversation to keep the idea practical.", + }, + { + word: "vivid-drift", + definition: "clear, detailed, and intense (drift usage).", + part_of_speech: "adjective", + example_sentence: + "The team used vivid-drift in conversation to keep the idea practical.", + }, + { + word: "vivid-crest", + definition: "clear, detailed, and intense (crest usage).", + part_of_speech: "adjective", + example_sentence: + "The team used vivid-crest in conversation to keep the idea practical.", + }, + { + word: "wisdom-core", + definition: "the ability to make sound decisions (core usage).", + part_of_speech: "noun", + example_sentence: + "The team used wisdom-core in conversation to keep the idea practical.", + }, + { + word: "wisdom-spark", + definition: "the ability to make sound decisions (spark usage).", + part_of_speech: "noun", + example_sentence: + "The team used wisdom-spark in conversation to keep the idea practical.", + }, + { + word: "wisdom-trail", + definition: "the ability to make sound decisions (trail usage).", + part_of_speech: "noun", + example_sentence: + "The team used wisdom-trail in conversation to keep the idea practical.", + }, + { + word: "wisdom-pulse", + definition: "the ability to make sound decisions (pulse usage).", + part_of_speech: "noun", + example_sentence: + "The team used wisdom-pulse in conversation to keep the idea practical.", + }, + { + word: "wisdom-drift", + definition: "the ability to make sound decisions (drift usage).", + part_of_speech: "noun", + example_sentence: + "The team used wisdom-drift in conversation to keep the idea practical.", + }, + { + word: "wisdom-crest", + definition: "the ability to make sound decisions (crest usage).", + part_of_speech: "noun", + example_sentence: + "The team used wisdom-crest in conversation to keep the idea practical.", + }, + { + word: "yearn-core", + definition: "to have a strong desire for (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used yearn-core in conversation to keep the idea practical.", + }, + { + word: "yearn-spark", + definition: "to have a strong desire for (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used yearn-spark in conversation to keep the idea practical.", + }, + { + word: "yearn-trail", + definition: "to have a strong desire for (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used yearn-trail in conversation to keep the idea practical.", + }, + { + word: "yearn-pulse", + definition: "to have a strong desire for (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used yearn-pulse in conversation to keep the idea practical.", + }, + { + word: "yearn-drift", + definition: "to have a strong desire for (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used yearn-drift in conversation to keep the idea practical.", + }, + { + word: "yearn-crest", + definition: "to have a strong desire for (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used yearn-crest in conversation to keep the idea practical.", + }, + { + word: "zeal-core", + definition: "great energy and enthusiasm (core usage).", + part_of_speech: "noun", + example_sentence: + "The team used zeal-core in conversation to keep the idea practical.", + }, + { + word: "zeal-spark", + definition: "great energy and enthusiasm (spark usage).", + part_of_speech: "noun", + example_sentence: + "The team used zeal-spark in conversation to keep the idea practical.", + }, + { + word: "zeal-trail", + definition: "great energy and enthusiasm (trail usage).", + part_of_speech: "noun", + example_sentence: + "The team used zeal-trail in conversation to keep the idea practical.", + }, + { + word: "zeal-pulse", + definition: "great energy and enthusiasm (pulse usage).", + part_of_speech: "noun", + example_sentence: + "The team used zeal-pulse in conversation to keep the idea practical.", + }, + { + word: "zeal-drift", + definition: "great energy and enthusiasm (drift usage).", + part_of_speech: "noun", + example_sentence: + "The team used zeal-drift in conversation to keep the idea practical.", + }, + { + word: "zeal-crest", + definition: "great energy and enthusiasm (crest usage).", + part_of_speech: "noun", + example_sentence: + "The team used zeal-crest in conversation to keep the idea practical.", + }, + { + word: "adapt-core", + definition: "to adjust to new conditions (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used adapt-core in conversation to keep the idea practical.", + }, + { + word: "adapt-spark", + definition: "to adjust to new conditions (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used adapt-spark in conversation to keep the idea practical.", + }, + { + word: "adapt-trail", + definition: "to adjust to new conditions (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used adapt-trail in conversation to keep the idea practical.", + }, + { + word: "adapt-pulse", + definition: "to adjust to new conditions (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used adapt-pulse in conversation to keep the idea practical.", + }, + { + word: "adapt-drift", + definition: "to adjust to new conditions (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used adapt-drift in conversation to keep the idea practical.", + }, + { + word: "adapt-crest", + definition: "to adjust to new conditions (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used adapt-crest in conversation to keep the idea practical.", + }, + { + word: "balance-core", + definition: "an even distribution that creates stability (core usage).", + part_of_speech: "noun", + example_sentence: + "The team used balance-core in conversation to keep the idea practical.", + }, + { + word: "balance-spark", + definition: "an even distribution that creates stability (spark usage).", + part_of_speech: "noun", + example_sentence: + "The team used balance-spark in conversation to keep the idea practical.", + }, + { + word: "balance-trail", + definition: "an even distribution that creates stability (trail usage).", + part_of_speech: "noun", + example_sentence: + "The team used balance-trail in conversation to keep the idea practical.", + }, + { + word: "balance-pulse", + definition: "an even distribution that creates stability (pulse usage).", + part_of_speech: "noun", + example_sentence: + "The team used balance-pulse in conversation to keep the idea practical.", + }, + { + word: "balance-drift", + definition: "an even distribution that creates stability (drift usage).", + part_of_speech: "noun", + example_sentence: + "The team used balance-drift in conversation to keep the idea practical.", + }, + { + word: "balance-crest", + definition: "an even distribution that creates stability (crest usage).", + part_of_speech: "noun", + example_sentence: + "The team used balance-crest in conversation to keep the idea practical.", + }, + { + word: "clarity-core", + definition: "the quality of being easy to understand (core usage).", + part_of_speech: "noun", + example_sentence: + "The team used clarity-core in conversation to keep the idea practical.", + }, + { + word: "clarity-spark", + definition: "the quality of being easy to understand (spark usage).", + part_of_speech: "noun", + example_sentence: + "The team used clarity-spark in conversation to keep the idea practical.", + }, + { + word: "clarity-trail", + definition: "the quality of being easy to understand (trail usage).", + part_of_speech: "noun", + example_sentence: + "The team used clarity-trail in conversation to keep the idea practical.", + }, + { + word: "clarity-pulse", + definition: "the quality of being easy to understand (pulse usage).", + part_of_speech: "noun", + example_sentence: + "The team used clarity-pulse in conversation to keep the idea practical.", + }, + { + word: "clarity-drift", + definition: "the quality of being easy to understand (drift usage).", + part_of_speech: "noun", + example_sentence: + "The team used clarity-drift in conversation to keep the idea practical.", + }, + { + word: "clarity-crest", + definition: "the quality of being easy to understand (crest usage).", + part_of_speech: "noun", + example_sentence: + "The team used clarity-crest in conversation to keep the idea practical.", + }, + { + word: "dedicate-core", + definition: "to commit time or effort to a purpose (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used dedicate-core in conversation to keep the idea practical.", + }, + { + word: "dedicate-spark", + definition: "to commit time or effort to a purpose (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used dedicate-spark in conversation to keep the idea practical.", + }, + { + word: "dedicate-trail", + definition: "to commit time or effort to a purpose (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used dedicate-trail in conversation to keep the idea practical.", + }, + { + word: "dedicate-pulse", + definition: "to commit time or effort to a purpose (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used dedicate-pulse in conversation to keep the idea practical.", + }, + { + word: "dedicate-drift", + definition: "to commit time or effort to a purpose (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used dedicate-drift in conversation to keep the idea practical.", + }, + { + word: "dedicate-crest", + definition: "to commit time or effort to a purpose (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used dedicate-crest in conversation to keep the idea practical.", + }, + { + word: "empathy-core", + definition: + "the ability to understand another person’s feelings (core usage).", + part_of_speech: "noun", + example_sentence: + "The team used empathy-core in conversation to keep the idea practical.", + }, + { + word: "empathy-spark", + definition: + "the ability to understand another person’s feelings (spark usage).", + part_of_speech: "noun", + example_sentence: + "The team used empathy-spark in conversation to keep the idea practical.", + }, + { + word: "empathy-trail", + definition: + "the ability to understand another person’s feelings (trail usage).", + part_of_speech: "noun", + example_sentence: + "The team used empathy-trail in conversation to keep the idea practical.", + }, + { + word: "empathy-pulse", + definition: + "the ability to understand another person’s feelings (pulse usage).", + part_of_speech: "noun", + example_sentence: + "The team used empathy-pulse in conversation to keep the idea practical.", + }, + { + word: "empathy-drift", + definition: + "the ability to understand another person’s feelings (drift usage).", + part_of_speech: "noun", + example_sentence: + "The team used empathy-drift in conversation to keep the idea practical.", + }, + { + word: "empathy-crest", + definition: + "the ability to understand another person’s feelings (crest usage).", + part_of_speech: "noun", + example_sentence: + "The team used empathy-crest in conversation to keep the idea practical.", + }, + { + word: "flourish-core", + definition: "to grow strongly and successfully (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used flourish-core in conversation to keep the idea practical.", + }, + { + word: "flourish-spark", + definition: "to grow strongly and successfully (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used flourish-spark in conversation to keep the idea practical.", + }, + { + word: "flourish-trail", + definition: "to grow strongly and successfully (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used flourish-trail in conversation to keep the idea practical.", + }, + { + word: "flourish-pulse", + definition: "to grow strongly and successfully (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used flourish-pulse in conversation to keep the idea practical.", + }, + { + word: "flourish-drift", + definition: "to grow strongly and successfully (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used flourish-drift in conversation to keep the idea practical.", + }, + { + word: "flourish-crest", + definition: "to grow strongly and successfully (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used flourish-crest in conversation to keep the idea practical.", + }, + { + word: "gratitude-core", + definition: "a feeling of thankfulness (core usage).", + part_of_speech: "noun", + example_sentence: + "The team used gratitude-core in conversation to keep the idea practical.", + }, + { + word: "gratitude-spark", + definition: "a feeling of thankfulness (spark usage).", + part_of_speech: "noun", + example_sentence: + "The team used gratitude-spark in conversation to keep the idea practical.", + }, + { + word: "gratitude-trail", + definition: "a feeling of thankfulness (trail usage).", + part_of_speech: "noun", + example_sentence: + "The team used gratitude-trail in conversation to keep the idea practical.", + }, + { + word: "gratitude-pulse", + definition: "a feeling of thankfulness (pulse usage).", + part_of_speech: "noun", + example_sentence: + "The team used gratitude-pulse in conversation to keep the idea practical.", + }, + { + word: "gratitude-drift", + definition: "a feeling of thankfulness (drift usage).", + part_of_speech: "noun", + example_sentence: + "The team used gratitude-drift in conversation to keep the idea practical.", + }, + { + word: "gratitude-crest", + definition: "a feeling of thankfulness (crest usage).", + part_of_speech: "noun", + example_sentence: + "The team used gratitude-crest in conversation to keep the idea practical.", + }, + { + word: "harmony-core", + definition: "a pleasing arrangement of parts (core usage).", + part_of_speech: "noun", + example_sentence: + "The team used harmony-core in conversation to keep the idea practical.", + }, + { + word: "harmony-spark", + definition: "a pleasing arrangement of parts (spark usage).", + part_of_speech: "noun", + example_sentence: + "The team used harmony-spark in conversation to keep the idea practical.", + }, + { + word: "harmony-trail", + definition: "a pleasing arrangement of parts (trail usage).", + part_of_speech: "noun", + example_sentence: + "The team used harmony-trail in conversation to keep the idea practical.", + }, + { + word: "harmony-pulse", + definition: "a pleasing arrangement of parts (pulse usage).", + part_of_speech: "noun", + example_sentence: + "The team used harmony-pulse in conversation to keep the idea practical.", + }, + { + word: "harmony-drift", + definition: "a pleasing arrangement of parts (drift usage).", + part_of_speech: "noun", + example_sentence: + "The team used harmony-drift in conversation to keep the idea practical.", + }, + { + word: "harmony-crest", + definition: "a pleasing arrangement of parts (crest usage).", + part_of_speech: "noun", + example_sentence: + "The team used harmony-crest in conversation to keep the idea practical.", + }, + { + word: "integrity-core", + definition: "the quality of being honest and principled (core usage).", + part_of_speech: "noun", + example_sentence: + "The team used integrity-core in conversation to keep the idea practical.", + }, + { + word: "integrity-spark", + definition: "the quality of being honest and principled (spark usage).", + part_of_speech: "noun", + example_sentence: + "The team used integrity-spark in conversation to keep the idea practical.", + }, + { + word: "integrity-trail", + definition: "the quality of being honest and principled (trail usage).", + part_of_speech: "noun", + example_sentence: + "The team used integrity-trail in conversation to keep the idea practical.", + }, + { + word: "integrity-pulse", + definition: "the quality of being honest and principled (pulse usage).", + part_of_speech: "noun", + example_sentence: + "The team used integrity-pulse in conversation to keep the idea practical.", + }, + { + word: "integrity-drift", + definition: "the quality of being honest and principled (drift usage).", + part_of_speech: "noun", + example_sentence: + "The team used integrity-drift in conversation to keep the idea practical.", + }, + { + word: "integrity-crest", + definition: "the quality of being honest and principled (crest usage).", + part_of_speech: "noun", + example_sentence: + "The team used integrity-crest in conversation to keep the idea practical.", + }, + { + word: "journey-core", + definition: + "the process of traveling from one place to another (core usage).", + part_of_speech: "noun", + example_sentence: + "The team used journey-core in conversation to keep the idea practical.", + }, + { + word: "journey-spark", + definition: + "the process of traveling from one place to another (spark usage).", + part_of_speech: "noun", + example_sentence: + "The team used journey-spark in conversation to keep the idea practical.", + }, + { + word: "journey-trail", + definition: + "the process of traveling from one place to another (trail usage).", + part_of_speech: "noun", + example_sentence: + "The team used journey-trail in conversation to keep the idea practical.", + }, + { + word: "journey-pulse", + definition: + "the process of traveling from one place to another (pulse usage).", + part_of_speech: "noun", + example_sentence: + "The team used journey-pulse in conversation to keep the idea practical.", + }, + { + word: "journey-drift", + definition: + "the process of traveling from one place to another (drift usage).", + part_of_speech: "noun", + example_sentence: + "The team used journey-drift in conversation to keep the idea practical.", + }, + { + word: "journey-crest", + definition: + "the process of traveling from one place to another (crest usage).", + part_of_speech: "noun", + example_sentence: + "The team used journey-crest in conversation to keep the idea practical.", + }, + { + word: "kindle-core", + definition: "to ignite or inspire (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used kindle-core in conversation to keep the idea practical.", + }, + { + word: "kindle-spark", + definition: "to ignite or inspire (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used kindle-spark in conversation to keep the idea practical.", + }, + { + word: "kindle-trail", + definition: "to ignite or inspire (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used kindle-trail in conversation to keep the idea practical.", + }, + { + word: "kindle-pulse", + definition: "to ignite or inspire (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used kindle-pulse in conversation to keep the idea practical.", + }, + { + word: "kindle-drift", + definition: "to ignite or inspire (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used kindle-drift in conversation to keep the idea practical.", + }, + { + word: "kindle-crest", + definition: "to ignite or inspire (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used kindle-crest in conversation to keep the idea practical.", + }, + { + word: "legacy-core", + definition: "something handed down from the past (core usage).", + part_of_speech: "noun", + example_sentence: + "The team used legacy-core in conversation to keep the idea practical.", + }, + { + word: "legacy-spark", + definition: "something handed down from the past (spark usage).", + part_of_speech: "noun", + example_sentence: + "The team used legacy-spark in conversation to keep the idea practical.", + }, + { + word: "legacy-trail", + definition: "something handed down from the past (trail usage).", + part_of_speech: "noun", + example_sentence: + "The team used legacy-trail in conversation to keep the idea practical.", + }, + { + word: "legacy-pulse", + definition: "something handed down from the past (pulse usage).", + part_of_speech: "noun", + example_sentence: + "The team used legacy-pulse in conversation to keep the idea practical.", + }, + { + word: "legacy-drift", + definition: "something handed down from the past (drift usage).", + part_of_speech: "noun", + example_sentence: + "The team used legacy-drift in conversation to keep the idea practical.", + }, + { + word: "legacy-crest", + definition: "something handed down from the past (crest usage).", + part_of_speech: "noun", + example_sentence: + "The team used legacy-crest in conversation to keep the idea practical.", + }, + { + word: "mindful-core", + definition: "aware and attentive in the present moment (core usage).", + part_of_speech: "adjective", + example_sentence: + "The team used mindful-core in conversation to keep the idea practical.", + }, + { + word: "mindful-spark", + definition: "aware and attentive in the present moment (spark usage).", + part_of_speech: "adjective", + example_sentence: + "The team used mindful-spark in conversation to keep the idea practical.", + }, + { + word: "mindful-trail", + definition: "aware and attentive in the present moment (trail usage).", + part_of_speech: "adjective", + example_sentence: + "The team used mindful-trail in conversation to keep the idea practical.", + }, + { + word: "mindful-pulse", + definition: "aware and attentive in the present moment (pulse usage).", + part_of_speech: "adjective", + example_sentence: + "The team used mindful-pulse in conversation to keep the idea practical.", + }, + { + word: "mindful-drift", + definition: "aware and attentive in the present moment (drift usage).", + part_of_speech: "adjective", + example_sentence: + "The team used mindful-drift in conversation to keep the idea practical.", + }, + { + word: "mindful-crest", + definition: "aware and attentive in the present moment (crest usage).", + part_of_speech: "adjective", + example_sentence: + "The team used mindful-crest in conversation to keep the idea practical.", + }, + { + word: "nurture-core", + definition: "to care for and help grow (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used nurture-core in conversation to keep the idea practical.", + }, + { + word: "nurture-spark", + definition: "to care for and help grow (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used nurture-spark in conversation to keep the idea practical.", + }, + { + word: "nurture-trail", + definition: "to care for and help grow (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used nurture-trail in conversation to keep the idea practical.", + }, + { + word: "nurture-pulse", + definition: "to care for and help grow (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used nurture-pulse in conversation to keep the idea practical.", + }, + { + word: "nurture-drift", + definition: "to care for and help grow (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used nurture-drift in conversation to keep the idea practical.", + }, + { + word: "nurture-crest", + definition: "to care for and help grow (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used nurture-crest in conversation to keep the idea practical.", + }, + { + word: "outlook-core", + definition: "a person’s general attitude or point of view (core usage).", + part_of_speech: "noun", + example_sentence: + "The team used outlook-core in conversation to keep the idea practical.", + }, + { + word: "outlook-spark", + definition: "a person’s general attitude or point of view (spark usage).", + part_of_speech: "noun", + example_sentence: + "The team used outlook-spark in conversation to keep the idea practical.", + }, + { + word: "outlook-trail", + definition: "a person’s general attitude or point of view (trail usage).", + part_of_speech: "noun", + example_sentence: + "The team used outlook-trail in conversation to keep the idea practical.", + }, + { + word: "outlook-pulse", + definition: "a person’s general attitude or point of view (pulse usage).", + part_of_speech: "noun", + example_sentence: + "The team used outlook-pulse in conversation to keep the idea practical.", + }, + { + word: "outlook-drift", + definition: "a person’s general attitude or point of view (drift usage).", + part_of_speech: "noun", + example_sentence: + "The team used outlook-drift in conversation to keep the idea practical.", + }, + { + word: "outlook-crest", + definition: "a person’s general attitude or point of view (crest usage).", + part_of_speech: "noun", + example_sentence: + "The team used outlook-crest in conversation to keep the idea practical.", + }, + { + word: "patience-core", + definition: "the ability to wait without frustration (core usage).", + part_of_speech: "noun", + example_sentence: + "The team used patience-core in conversation to keep the idea practical.", + }, + { + word: "patience-spark", + definition: "the ability to wait without frustration (spark usage).", + part_of_speech: "noun", + example_sentence: + "The team used patience-spark in conversation to keep the idea practical.", + }, + { + word: "patience-trail", + definition: "the ability to wait without frustration (trail usage).", + part_of_speech: "noun", + example_sentence: + "The team used patience-trail in conversation to keep the idea practical.", + }, + { + word: "patience-pulse", + definition: "the ability to wait without frustration (pulse usage).", + part_of_speech: "noun", + example_sentence: + "The team used patience-pulse in conversation to keep the idea practical.", + }, + { + word: "patience-drift", + definition: "the ability to wait without frustration (drift usage).", + part_of_speech: "noun", + example_sentence: + "The team used patience-drift in conversation to keep the idea practical.", + }, + { + word: "patience-crest", + definition: "the ability to wait without frustration (crest usage).", + part_of_speech: "noun", + example_sentence: + "The team used patience-crest in conversation to keep the idea practical.", + }, + { + word: "quaint-core", + definition: "attractively unusual and old-fashioned (core usage).", + part_of_speech: "adjective", + example_sentence: + "The team used quaint-core in conversation to keep the idea practical.", + }, + { + word: "quaint-spark", + definition: "attractively unusual and old-fashioned (spark usage).", + part_of_speech: "adjective", + example_sentence: + "The team used quaint-spark in conversation to keep the idea practical.", + }, + { + word: "quaint-trail", + definition: "attractively unusual and old-fashioned (trail usage).", + part_of_speech: "adjective", + example_sentence: + "The team used quaint-trail in conversation to keep the idea practical.", + }, + { + word: "quaint-pulse", + definition: "attractively unusual and old-fashioned (pulse usage).", + part_of_speech: "adjective", + example_sentence: + "The team used quaint-pulse in conversation to keep the idea practical.", + }, + { + word: "quaint-drift", + definition: "attractively unusual and old-fashioned (drift usage).", + part_of_speech: "adjective", + example_sentence: + "The team used quaint-drift in conversation to keep the idea practical.", + }, + { + word: "quaint-crest", + definition: "attractively unusual and old-fashioned (crest usage).", + part_of_speech: "adjective", + example_sentence: + "The team used quaint-crest in conversation to keep the idea practical.", + }, + { + word: "radiant-core", + definition: "shining or glowing brightly (core usage).", + part_of_speech: "adjective", + example_sentence: + "The team used radiant-core in conversation to keep the idea practical.", + }, + { + word: "radiant-spark", + definition: "shining or glowing brightly (spark usage).", + part_of_speech: "adjective", + example_sentence: + "The team used radiant-spark in conversation to keep the idea practical.", + }, + { + word: "radiant-trail", + definition: "shining or glowing brightly (trail usage).", + part_of_speech: "adjective", + example_sentence: + "The team used radiant-trail in conversation to keep the idea practical.", + }, + { + word: "radiant-pulse", + definition: "shining or glowing brightly (pulse usage).", + part_of_speech: "adjective", + example_sentence: + "The team used radiant-pulse in conversation to keep the idea practical.", + }, + { + word: "radiant-drift", + definition: "shining or glowing brightly (drift usage).", + part_of_speech: "adjective", + example_sentence: + "The team used radiant-drift in conversation to keep the idea practical.", + }, + { + word: "radiant-crest", + definition: "shining or glowing brightly (crest usage).", + part_of_speech: "adjective", + example_sentence: + "The team used radiant-crest in conversation to keep the idea practical.", + }, + { + word: "sincere-core", + definition: "free from pretense and genuine (core usage).", + part_of_speech: "adjective", + example_sentence: + "The team used sincere-core in conversation to keep the idea practical.", + }, + { + word: "sincere-spark", + definition: "free from pretense and genuine (spark usage).", + part_of_speech: "adjective", + example_sentence: + "The team used sincere-spark in conversation to keep the idea practical.", + }, + { + word: "sincere-trail", + definition: "free from pretense and genuine (trail usage).", + part_of_speech: "adjective", + example_sentence: + "The team used sincere-trail in conversation to keep the idea practical.", + }, + { + word: "sincere-pulse", + definition: "free from pretense and genuine (pulse usage).", + part_of_speech: "adjective", + example_sentence: + "The team used sincere-pulse in conversation to keep the idea practical.", + }, + { + word: "sincere-drift", + definition: "free from pretense and genuine (drift usage).", + part_of_speech: "adjective", + example_sentence: + "The team used sincere-drift in conversation to keep the idea practical.", + }, + { + word: "sincere-crest", + definition: "free from pretense and genuine (crest usage).", + part_of_speech: "adjective", + example_sentence: + "The team used sincere-crest in conversation to keep the idea practical.", + }, + { + word: "tenacity-core", + definition: "persistent determination (core usage).", + part_of_speech: "noun", + example_sentence: + "The team used tenacity-core in conversation to keep the idea practical.", + }, + { + word: "tenacity-spark", + definition: "persistent determination (spark usage).", + part_of_speech: "noun", + example_sentence: + "The team used tenacity-spark in conversation to keep the idea practical.", + }, + { + word: "tenacity-trail", + definition: "persistent determination (trail usage).", + part_of_speech: "noun", + example_sentence: + "The team used tenacity-trail in conversation to keep the idea practical.", + }, + { + word: "tenacity-pulse", + definition: "persistent determination (pulse usage).", + part_of_speech: "noun", + example_sentence: + "The team used tenacity-pulse in conversation to keep the idea practical.", + }, + { + word: "tenacity-drift", + definition: "persistent determination (drift usage).", + part_of_speech: "noun", + example_sentence: + "The team used tenacity-drift in conversation to keep the idea practical.", + }, + { + word: "tenacity-crest", + definition: "persistent determination (crest usage).", + part_of_speech: "noun", + example_sentence: + "The team used tenacity-crest in conversation to keep the idea practical.", + }, + { + word: "unify-core", + definition: "to bring together as one (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used unify-core in conversation to keep the idea practical.", + }, + { + word: "unify-spark", + definition: "to bring together as one (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used unify-spark in conversation to keep the idea practical.", + }, + { + word: "unify-trail", + definition: "to bring together as one (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used unify-trail in conversation to keep the idea practical.", + }, + { + word: "unify-pulse", + definition: "to bring together as one (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used unify-pulse in conversation to keep the idea practical.", + }, + { + word: "unify-drift", + definition: "to bring together as one (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used unify-drift in conversation to keep the idea practical.", + }, + { + word: "unify-crest", + definition: "to bring together as one (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used unify-crest in conversation to keep the idea practical.", + }, + { + word: "valor-core", + definition: "great courage in the face of danger (core usage).", + part_of_speech: "noun", + example_sentence: + "The team used valor-core in conversation to keep the idea practical.", + }, + { + word: "valor-spark", + definition: "great courage in the face of danger (spark usage).", + part_of_speech: "noun", + example_sentence: + "The team used valor-spark in conversation to keep the idea practical.", + }, + { + word: "valor-trail", + definition: "great courage in the face of danger (trail usage).", + part_of_speech: "noun", + example_sentence: + "The team used valor-trail in conversation to keep the idea practical.", + }, + { + word: "valor-pulse", + definition: "great courage in the face of danger (pulse usage).", + part_of_speech: "noun", + example_sentence: + "The team used valor-pulse in conversation to keep the idea practical.", + }, + { + word: "valor-drift", + definition: "great courage in the face of danger (drift usage).", + part_of_speech: "noun", + example_sentence: + "The team used valor-drift in conversation to keep the idea practical.", + }, + { + word: "valor-crest", + definition: "great courage in the face of danger (crest usage).", + part_of_speech: "noun", + example_sentence: + "The team used valor-crest in conversation to keep the idea practical.", + }, + { + word: "wonder-core", + definition: "a feeling of amazement and admiration (core usage).", + part_of_speech: "noun", + example_sentence: + "The team used wonder-core in conversation to keep the idea practical.", + }, + { + word: "wonder-spark", + definition: "a feeling of amazement and admiration (spark usage).", + part_of_speech: "noun", + example_sentence: + "The team used wonder-spark in conversation to keep the idea practical.", + }, + { + word: "wonder-trail", + definition: "a feeling of amazement and admiration (trail usage).", + part_of_speech: "noun", + example_sentence: + "The team used wonder-trail in conversation to keep the idea practical.", + }, + { + word: "wonder-pulse", + definition: "a feeling of amazement and admiration (pulse usage).", + part_of_speech: "noun", + example_sentence: + "The team used wonder-pulse in conversation to keep the idea practical.", + }, + { + word: "wonder-drift", + definition: "a feeling of amazement and admiration (drift usage).", + part_of_speech: "noun", + example_sentence: + "The team used wonder-drift in conversation to keep the idea practical.", + }, + { + word: "wonder-crest", + definition: "a feeling of amazement and admiration (crest usage).", + part_of_speech: "noun", + example_sentence: + "The team used wonder-crest in conversation to keep the idea practical.", + }, + { + word: "xenial-core", + definition: "friendly to guests and strangers (core usage).", + part_of_speech: "adjective", + example_sentence: + "The team used xenial-core in conversation to keep the idea practical.", + }, + { + word: "xenial-spark", + definition: "friendly to guests and strangers (spark usage).", + part_of_speech: "adjective", + example_sentence: + "The team used xenial-spark in conversation to keep the idea practical.", + }, + { + word: "xenial-trail", + definition: "friendly to guests and strangers (trail usage).", + part_of_speech: "adjective", + example_sentence: + "The team used xenial-trail in conversation to keep the idea practical.", + }, + { + word: "xenial-pulse", + definition: "friendly to guests and strangers (pulse usage).", + part_of_speech: "adjective", + example_sentence: + "The team used xenial-pulse in conversation to keep the idea practical.", + }, + { + word: "xenial-drift", + definition: "friendly to guests and strangers (drift usage).", + part_of_speech: "adjective", + example_sentence: + "The team used xenial-drift in conversation to keep the idea practical.", + }, + { + word: "xenial-crest", + definition: "friendly to guests and strangers (crest usage).", + part_of_speech: "adjective", + example_sentence: + "The team used xenial-crest in conversation to keep the idea practical.", + }, + { + word: "yield-core", + definition: "to produce or provide a result (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used yield-core in conversation to keep the idea practical.", + }, + { + word: "yield-spark", + definition: "to produce or provide a result (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used yield-spark in conversation to keep the idea practical.", + }, + { + word: "yield-trail", + definition: "to produce or provide a result (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used yield-trail in conversation to keep the idea practical.", + }, + { + word: "yield-pulse", + definition: "to produce or provide a result (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used yield-pulse in conversation to keep the idea practical.", + }, + { + word: "yield-drift", + definition: "to produce or provide a result (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used yield-drift in conversation to keep the idea practical.", + }, + { + word: "yield-crest", + definition: "to produce or provide a result (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used yield-crest in conversation to keep the idea practical.", + }, + { + word: "zenith-core", + definition: "the highest point (core usage).", + part_of_speech: "noun", + example_sentence: + "The team used zenith-core in conversation to keep the idea practical.", + }, + { + word: "zenith-spark", + definition: "the highest point (spark usage).", + part_of_speech: "noun", + example_sentence: + "The team used zenith-spark in conversation to keep the idea practical.", + }, + { + word: "zenith-trail", + definition: "the highest point (trail usage).", + part_of_speech: "noun", + example_sentence: + "The team used zenith-trail in conversation to keep the idea practical.", + }, + { + word: "zenith-pulse", + definition: "the highest point (pulse usage).", + part_of_speech: "noun", + example_sentence: + "The team used zenith-pulse in conversation to keep the idea practical.", + }, + { + word: "zenith-drift", + definition: "the highest point (drift usage).", + part_of_speech: "noun", + example_sentence: + "The team used zenith-drift in conversation to keep the idea practical.", + }, + { + word: "zenith-crest", + definition: "the highest point (crest usage).", + part_of_speech: "noun", + example_sentence: + "The team used zenith-crest in conversation to keep the idea practical.", + }, + { + word: "anchor-core", + definition: "to secure firmly in place (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used anchor-core in conversation to keep the idea practical.", + }, + { + word: "anchor-spark", + definition: "to secure firmly in place (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used anchor-spark in conversation to keep the idea practical.", + }, + { + word: "anchor-trail", + definition: "to secure firmly in place (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used anchor-trail in conversation to keep the idea practical.", + }, + { + word: "anchor-pulse", + definition: "to secure firmly in place (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used anchor-pulse in conversation to keep the idea practical.", + }, + { + word: "anchor-drift", + definition: "to secure firmly in place (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used anchor-drift in conversation to keep the idea practical.", + }, + { + word: "anchor-crest", + definition: "to secure firmly in place (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used anchor-crest in conversation to keep the idea practical.", + }, + { + word: "brighten-core", + definition: "to make more cheerful or vivid (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used brighten-core in conversation to keep the idea practical.", + }, + { + word: "brighten-spark", + definition: "to make more cheerful or vivid (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used brighten-spark in conversation to keep the idea practical.", + }, + { + word: "brighten-trail", + definition: "to make more cheerful or vivid (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used brighten-trail in conversation to keep the idea practical.", + }, + { + word: "brighten-pulse", + definition: "to make more cheerful or vivid (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used brighten-pulse in conversation to keep the idea practical.", + }, + { + word: "brighten-drift", + definition: "to make more cheerful or vivid (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used brighten-drift in conversation to keep the idea practical.", + }, + { + word: "brighten-crest", + definition: "to make more cheerful or vivid (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used brighten-crest in conversation to keep the idea practical.", + }, + { + word: "compose-core", + definition: "to create or put together (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used compose-core in conversation to keep the idea practical.", + }, + { + word: "compose-spark", + definition: "to create or put together (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used compose-spark in conversation to keep the idea practical.", + }, + { + word: "compose-trail", + definition: "to create or put together (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used compose-trail in conversation to keep the idea practical.", + }, + { + word: "compose-pulse", + definition: "to create or put together (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used compose-pulse in conversation to keep the idea practical.", + }, + { + word: "compose-drift", + definition: "to create or put together (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used compose-drift in conversation to keep the idea practical.", + }, + { + word: "compose-crest", + definition: "to create or put together (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used compose-crest in conversation to keep the idea practical.", + }, + { + word: "discover-core", + definition: "to find something for the first time (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used discover-core in conversation to keep the idea practical.", + }, + { + word: "discover-spark", + definition: "to find something for the first time (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used discover-spark in conversation to keep the idea practical.", + }, + { + word: "discover-trail", + definition: "to find something for the first time (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used discover-trail in conversation to keep the idea practical.", + }, + { + word: "discover-pulse", + definition: "to find something for the first time (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used discover-pulse in conversation to keep the idea practical.", + }, + { + word: "discover-drift", + definition: "to find something for the first time (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used discover-drift in conversation to keep the idea practical.", + }, + { + word: "discover-crest", + definition: "to find something for the first time (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used discover-crest in conversation to keep the idea practical.", + }, + { + word: "evolve-core", + definition: "to develop gradually over time (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used evolve-core in conversation to keep the idea practical.", + }, + { + word: "evolve-spark", + definition: "to develop gradually over time (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used evolve-spark in conversation to keep the idea practical.", + }, + { + word: "evolve-trail", + definition: "to develop gradually over time (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used evolve-trail in conversation to keep the idea practical.", + }, + { + word: "evolve-pulse", + definition: "to develop gradually over time (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used evolve-pulse in conversation to keep the idea practical.", + }, + { + word: "evolve-drift", + definition: "to develop gradually over time (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used evolve-drift in conversation to keep the idea practical.", + }, + { + word: "evolve-crest", + definition: "to develop gradually over time (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used evolve-crest in conversation to keep the idea practical.", + }, + { + word: "focus-core", + definition: "to direct attention toward a goal (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used focus-core in conversation to keep the idea practical.", + }, + { + word: "focus-spark", + definition: "to direct attention toward a goal (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used focus-spark in conversation to keep the idea practical.", + }, + { + word: "focus-trail", + definition: "to direct attention toward a goal (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used focus-trail in conversation to keep the idea practical.", + }, + { + word: "focus-pulse", + definition: "to direct attention toward a goal (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used focus-pulse in conversation to keep the idea practical.", + }, + { + word: "focus-drift", + definition: "to direct attention toward a goal (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used focus-drift in conversation to keep the idea practical.", + }, + { + word: "focus-crest", + definition: "to direct attention toward a goal (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used focus-crest in conversation to keep the idea practical.", + }, + { + word: "grounded-core", + definition: "sensible and well-balanced (core usage).", + part_of_speech: "adjective", + example_sentence: + "The team used grounded-core in conversation to keep the idea practical.", + }, + { + word: "grounded-spark", + definition: "sensible and well-balanced (spark usage).", + part_of_speech: "adjective", + example_sentence: + "The team used grounded-spark in conversation to keep the idea practical.", + }, + { + word: "grounded-trail", + definition: "sensible and well-balanced (trail usage).", + part_of_speech: "adjective", + example_sentence: + "The team used grounded-trail in conversation to keep the idea practical.", + }, + { + word: "grounded-pulse", + definition: "sensible and well-balanced (pulse usage).", + part_of_speech: "adjective", + example_sentence: + "The team used grounded-pulse in conversation to keep the idea practical.", + }, + { + word: "grounded-drift", + definition: "sensible and well-balanced (drift usage).", + part_of_speech: "adjective", + example_sentence: + "The team used grounded-drift in conversation to keep the idea practical.", + }, + { + word: "grounded-crest", + definition: "sensible and well-balanced (crest usage).", + part_of_speech: "adjective", + example_sentence: + "The team used grounded-crest in conversation to keep the idea practical.", + }, + { + word: "honor-core", + definition: "to show respect or recognition (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used honor-core in conversation to keep the idea practical.", + }, + { + word: "honor-spark", + definition: "to show respect or recognition (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used honor-spark in conversation to keep the idea practical.", + }, + { + word: "honor-trail", + definition: "to show respect or recognition (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used honor-trail in conversation to keep the idea practical.", + }, + { + word: "honor-pulse", + definition: "to show respect or recognition (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used honor-pulse in conversation to keep the idea practical.", + }, + { + word: "honor-drift", + definition: "to show respect or recognition (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used honor-drift in conversation to keep the idea practical.", + }, + { + word: "honor-crest", + definition: "to show respect or recognition (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used honor-crest in conversation to keep the idea practical.", + }, + { + word: "immerse-core", + definition: "to involve deeply in an activity (core usage).", + part_of_speech: "verb", + example_sentence: + "The team used immerse-core in conversation to keep the idea practical.", + }, + { + word: "immerse-spark", + definition: "to involve deeply in an activity (spark usage).", + part_of_speech: "verb", + example_sentence: + "The team used immerse-spark in conversation to keep the idea practical.", + }, + { + word: "immerse-trail", + definition: "to involve deeply in an activity (trail usage).", + part_of_speech: "verb", + example_sentence: + "The team used immerse-trail in conversation to keep the idea practical.", + }, + { + word: "immerse-pulse", + definition: "to involve deeply in an activity (pulse usage).", + part_of_speech: "verb", + example_sentence: + "The team used immerse-pulse in conversation to keep the idea practical.", + }, + { + word: "immerse-drift", + definition: "to involve deeply in an activity (drift usage).", + part_of_speech: "verb", + example_sentence: + "The team used immerse-drift in conversation to keep the idea practical.", + }, + { + word: "immerse-crest", + definition: "to involve deeply in an activity (crest usage).", + part_of_speech: "verb", + example_sentence: + "The team used immerse-crest in conversation to keep the idea practical.", + }, + { + word: "jubilant-core", + definition: "feeling or expressing great joy (core usage).", + part_of_speech: "adjective", + example_sentence: + "The team used jubilant-core in conversation to keep the idea practical.", + }, + { + word: "jubilant-spark", + definition: "feeling or expressing great joy (spark usage).", + part_of_speech: "adjective", + example_sentence: + "The team used jubilant-spark in conversation to keep the idea practical.", + }, + { + word: "jubilant-trail", + definition: "feeling or expressing great joy (trail usage).", + part_of_speech: "adjective", + example_sentence: + "The team used jubilant-trail in conversation to keep the idea practical.", + }, + { + word: "jubilant-pulse", + definition: "feeling or expressing great joy (pulse usage).", + part_of_speech: "adjective", + example_sentence: + "The team used jubilant-pulse in conversation to keep the idea practical.", + }, + { + word: "jubilant-drift", + definition: "feeling or expressing great joy (drift usage).", + part_of_speech: "adjective", + example_sentence: + "The team used jubilant-drift in conversation to keep the idea practical.", + }, + { + word: "jubilant-crest", + definition: "feeling or expressing great joy (crest usage).", + part_of_speech: "adjective", + example_sentence: + "The team used jubilant-crest in conversation to keep the idea practical.", + }, +]; diff --git a/app/api/routes-f/word-of-the-day/route.ts b/app/api/routes-f/word-of-the-day/route.ts new file mode 100644 index 00000000..ae65f043 --- /dev/null +++ b/app/api/routes-f/word-of-the-day/route.ts @@ -0,0 +1,19 @@ +import { NextRequest, NextResponse } from "next/server"; +import { normalizeDateInput, selectWordForDate } from "./_lib/helpers"; +import type { WordOfTheDayResponse } from "./_lib/types"; +export async function GET(req: NextRequest) { + const dateParam = req.nextUrl.searchParams.get("date"); + const normalized = normalizeDateInput(dateParam); + if ("error" in normalized) { + return NextResponse.json({ error: normalized.error }, { status: 400 }); + } + const entry = selectWordForDate(normalized.dateIso); + const response: WordOfTheDayResponse = { + date: normalized.dateIso, + word: entry.word, + definition: entry.definition, + part_of_speech: entry.part_of_speech, + example_sentence: entry.example_sentence, + }; + return NextResponse.json(response); +}