Packages
Lib Package
Shared utilities and helper functions
Structure
dayjs.ts
index.ts
package.json
Utilities
Date Handling (Day.js)
Centralized date handling with Day.js:
import dayjs from "dayjs"
import timezone from "dayjs/plugin/timezone"
import utc from "dayjs/plugin/utc"
dayjs.extend(utc)
dayjs.extend(timezone)
export { dayjs }
export const formatDate = (date: Date, format: string) => {
return dayjs(date).format(format)
}Usage
import { dayjs, formatDate } from "@shared/lib"
// Format date
const formatted = formatDate(new Date(), "YYYY-MM-DD")
// Use dayjs directly
const tomorrow = dayjs().add(1, "day")Adding New Utilities
Create Utility File
Create a new file in packages/lib/:
export const capitalize = (str: string): string => {
return str.charAt(0).toUpperCase() + str.slice(1)
}
export const truncate = (str: string, length: number): string => {
return str.length > length ? `${str.slice(0, length)}...` : str
}Export from index.ts
Add exports to packages/lib/index.ts:
export * from "./dayjs"
export * from "./string-utils"Use in Applications
import { capitalize, truncate } from "@shared/lib"
const title = capitalize("hello world")
const short = truncate("Long text here", 10)Next: Learn about Config Packages.