MCPcopy
hub / github.com/sadmann7/skateshop

github.com/sadmann7/skateshop @main sqlite

repository ↗ · DeepWiki ↗
508 symbols 1,704 edges 314 files 2 documented · 0%
README

Skateshop

This is an open source e-commerce skateshop build with everything new in Next.js 14. It is bootstrapped with create-t3-app.

Skateshop

Warning This project is still in development and is not ready for production use.

It uses new technologies (drizzle ORM) which are subject to change and may break your application.

Tech Stack

Features to be implemented

  • [x] Authentication with Clerk
  • [x] File uploads with uploadthing
  • [x] Newsletter subscription with React Email and Resend
  • [x] Blog using MDX and Contentlayer
  • [x] ORM using Drizzle ORM
  • [x] Database on PlanetScale
  • [x] Validation with Zod
  • [x] Storefront with products, categories, and subcategories
  • [x] Seller and customer workflows
  • [x] User subscriptions with Stripe
  • [ ] Checkout with Stripe Checkout
  • [ ] Admin dashboard with stores, products, orders, subscriptions, and payments

Running Locally

  1. Clone the repository

bash git clone https://github.com/sadmann7/skateshop.git

  1. Install dependencies using pnpm

bash pnpm install

  1. Copy the .env.example to .env and update the variables.

bash cp .env.example .env

  1. Start the development server

bash pnpm run dev

  1. Push the database schema

bash pnpm run db:push

  1. Start the Stripe webhook listener

bash pnpm run stripe:listen

How do I deploy this?

Follow the deployment guides for Vercel, Netlify and Docker for more information.

Contributing

Contributions are welcome! Please open an issue if you have any questions or suggestions. Your contributions will be acknowledged. See the contributing guide for more information.

Contributors

Thanks goes to these wonderful people for their contributions:

Made with contrib.rocks

License

Licensed under the MIT License. Check the LICENSE file for details.

Extension points exported contracts — how you extend this code

CheckoutShellProps (Interface)
* See the Stripe documentation for more information: * @see https://stripe.com/docs/payments/quickstart
src/components/checkout/checkout-shell.tsx
Page (Interface)
(no doc)
unlighthouse.config.ts
NavItem (Interface)
(no doc)
src/types/index.ts
GenerateIdOptions (Interface)
(no doc)
src/lib/id.ts
RootLayoutProps (Interface)
(no doc)
src/app/layout.tsx
UseClickOutsideProps (Interface)
(no doc)
src/hooks/use-click-outside.ts
DashboardConfig (Interface)
(no doc)
src/config/dashboard.ts
BoardBuilderProps (Interface)
(no doc)
src/components/board-builder.tsx

Core symbols most depended-on inside this repo

cn
called by 263
src/lib/utils.ts
generateId
called by 43
src/lib/id.ts
formatPrice
called by 25
src/lib/utils.ts
getErrorMessage
called by 23
src/lib/handle-error.ts
absoluteUrl
called by 17
src/lib/utils.ts
showErrorToast
called by 14
src/lib/handle-error.ts
formatDate
called by 8
src/lib/utils.ts
toTitleCase
called by 8
src/lib/utils.ts

Shape

Function 360
Interface 148

Languages

TypeScript100%

Modules by API surface

src/lib/utils.ts14 symbols
src/types/index.ts11 symbols
src/lib/actions/stripe.ts9 symbols
src/lib/queries/product.ts8 symbols
src/lib/actions/cart.ts8 symbols
src/components/page-header.tsx7 symbols
src/lib/actions/order.ts6 symbols
src/components/file-uploader.tsx6 symbols
src/lib/actions/product.ts5 symbols
src/components/ui/pagination.tsx5 symbols
src/app/sitemap.ts5 symbols
src/app/(lobby)/(content)/blog/[...slug]/page.tsx5 symbols

Dependencies from manifests, versioned

@clerk/nextjs5.2.3 · 1×
@clerk/themes2.1.10 · 1×
@clerk/types4.6.1 · 1×
@faker-js/faker8.4.1 · 1×
@hookform/resolvers3.9.0 · 1×
@loglib/tracker0.8.0 · 1×
@radix-ui/react-accordion1.2.0 · 1×
@radix-ui/react-alert-dialog1.1.1 · 1×
@radix-ui/react-aspect-ratio1.1.0 · 1×
@radix-ui/react-avatar1.1.0 · 1×
@radix-ui/react-checkbox1.1.1 · 1×

For agents

$ claude mcp add skateshop \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact