git clone https://github.com/yournextstore/yournextstore.git
cd yournextstore
bun install
cp .env.example .env.local # then add your YNS_API_KEY from yns.app/admin
bun devYou need Bun 1.0+ and a YNS API key from yns.app/admin.
This is a Next.js App Router project. If you're unfamiliar with App Router, Server Components, or Server Actions, start with the Next.js docs.
What's YNS-specific:
lib/commerce.ts— Commerce Kit SDK client. All product/cart/checkout data goes throughcommerce.productBrowse(),commerce.cartUpsert(), etc.lib/money.ts—formatMoney()for all price formattingcomponents/ui/— Shadcn UI primitives (Radix-based). Don't edit these directly — regenerate withbunx shadcn@latest- Error handling — use
safe-try:const [error, result] = await safe(...) - No
/apiroutes — mutations use Server Actions
Biome enforces most of these. Run bun run lint before pushing.
- Named exports only (except
page.tsx,layout.tsx, etc.) - Static typing without
any map/filter/reduceover imperative loopsformatMoney()for prices,safe-tryfor errors
tsgo --noEmit # No type errors
bun run lint # No lint errors
bun test # Tests pass
bun run build # Build succeedsFork the repo, create a branch from main, and open a PR with a clear description of what changed and why.
Look for issues labeled good first issue.