chore: provision README.md [WCL auto]
This commit is contained in:
parent
d93b5e678f
commit
0b5f37b56f
1 changed files with 20 additions and 82 deletions
102
README.md
102
README.md
|
|
@ -1,94 +1,32 @@
|
|||
# NoShop
|
||||
# NotShop Bundle
|
||||
|
||||
**Open-source headless commerce for Replit.** Fork it, configure secrets, and have a production-ready store running in minutes.
|
||||
**The first WCL-licensed release bundle.**
|
||||
|
||||
Live demo: [naturologie.com](https://naturologie.com)
|
||||
Repo: [git.wellspr.ing/WellBuilder/notshop-bundle](https://git.wellspr.ing/WellBuilder/notshop-bundle)
|
||||
NotShop is the "not on Amazon" local business directory — a component of the WellSpr.ing
|
||||
civic platform that surfaces small, local, non-extractive businesses in a community.
|
||||
|
||||
---
|
||||
## License
|
||||
|
||||
## Features
|
||||
Licensed under WCL-1.1. See https://wellspr.ing/license/wcl-1.1
|
||||
Node registry: https://git.wellspr.ing/WellBuilder/wcl-nodes
|
||||
|
||||
- **Full storefront** — product grid, product detail, cart drawer, checkout
|
||||
- **Authorize.net** — primary payment gateway via Accept.js (PCI-compliant tokenized nonces)
|
||||
- **Stripe** — optional secondary gateway (env-var toggle)
|
||||
- **Magic-link auth** — passwordless customer sign-in via Resend email
|
||||
- **Account dashboard** — order history with tracking
|
||||
- **Discount codes** — percentage or fixed, usage limits, expiry
|
||||
- **Admin panel** — orders, products, customers, discounts with full CRUD
|
||||
- **PostgreSQL + Drizzle ORM** — type-safe schema, one-command migrations
|
||||
- **React 18 + Vite** — instant HMR in dev, single bundle in production
|
||||
- **TypeScript** — end-to-end type safety
|
||||
## What this bundle includes
|
||||
|
||||
---
|
||||
This repository is the canonical bundle for the NotShop release. It includes:
|
||||
|
||||
## Quick start on Replit
|
||||
- NotShop directory component spec
|
||||
- WCL-1.1 license text (see `LICENSE.md`)
|
||||
- Deployment notes
|
||||
|
||||
1. Fork this repo on [git.wellspr.ing](https://git.wellspr.ing/WellBuilder/notshop-bundle)
|
||||
2. Import the fork into Replit (Import from Git)
|
||||
3. Add [required secrets](#required-secrets) in **Replit → Secrets**
|
||||
4. Run the dev workflow — it auto-runs `npm run dev`
|
||||
5. Push your schema: `npm run db:push`
|
||||
6. Seed first admin: `npm run db:seed`
|
||||
7. Visit `/admin` and log in
|
||||
## Live instance
|
||||
|
||||
---
|
||||
NotShop is live at https://notshop.org
|
||||
NotGit sovereign stack cookbook: https://notgit.org
|
||||
|
||||
## Required secrets
|
||||
## Sovereign deployment
|
||||
|
||||
| Secret | Description |
|
||||
|--------|-------------|
|
||||
| `DATABASE_URL` | PostgreSQL connection string |
|
||||
| `SESSION_SECRET` | Long random string for session signing |
|
||||
| `AUTHORIZE_NET_API_LOGIN_ID` | Authorize.net API login ID |
|
||||
| `AUTHORIZE_NET_TRANSACTION_KEY` | Authorize.net transaction key |
|
||||
| `AUTHORIZE_NET_PUBLIC_CLIENT_KEY` | Authorize.net public client key (Accept.js) |
|
||||
| `AUTHORIZE_NET_SANDBOX` | `true` for sandbox, `false` for live |
|
||||
| `RESEND_API_KEY` | [Resend](https://resend.com) API key for magic-link emails |
|
||||
| `STORE_NAME` | Display name of your store |
|
||||
| `STORE_EMAIL_FROM` | From-address for transactional emails |
|
||||
To deploy your own NotShop node:
|
||||
|
||||
## Optional secrets (Stripe)
|
||||
|
||||
| Secret | Description |
|
||||
|--------|-------------|
|
||||
| `STRIPE_SECRET_KEY` | Stripe secret key — enables Stripe at checkout |
|
||||
| `STRIPE_PUBLISHABLE_KEY` | Stripe publishable key (exposed to frontend) |
|
||||
|
||||
> When `STRIPE_SECRET_KEY` is set, customers see a "Stripe" payment option alongside the Authorize.net card form.
|
||||
|
||||
---
|
||||
|
||||
## Project structure
|
||||
|
||||
```
|
||||
notshop-bundle/
|
||||
├── client/src/
|
||||
│ ├── pages/ # Storefront pages (shop, product, cart, checkout, account)
|
||||
│ ├── pages/admin/ # Admin panel (dashboard, orders, products, customers, discounts)
|
||||
│ ├── components/layout/ # Header, Footer, CartDrawer
|
||||
│ ├── hooks/ # use-cart, use-toast
|
||||
│ ├── lib/ # queryClient + apiRequest
|
||||
│ └── index.css # Tailwind + CSS variables (customize theme here)
|
||||
├── server/
|
||||
│ ├── routes.ts # All API endpoints
|
||||
│ ├── db.ts # Drizzle + pg pool
|
||||
│ ├── auth.ts # Magic-link auth
|
||||
│ ├── payments/
|
||||
│ │ ├── authorizenet.ts # Accept.js nonce charge, vault, refund
|
||||
│ │ └── stripe.ts # Stripe payment intent
|
||||
│ └── email.ts # Resend email helpers
|
||||
├── shared/
|
||||
│ └── schema.ts # Drizzle schema (single source of truth)
|
||||
├── scripts/
|
||||
│ └── seed-admin.ts # Create first admin user
|
||||
├── .env.example # Copy to .env and fill in values
|
||||
└── CONFIGURE.md # Customization guide
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Contributing
|
||||
|
||||
Submit PRs to [WellBuilder/notshop-bundle](https://git.wellspr.ing/WellBuilder/notshop-bundle).
|
||||
License: MIT
|
||||
1. Follow the NotGit sovereign stack cookbook at https://notgit.org
|
||||
2. License your deployment under WCL-1.1
|
||||
3. Register your node at https://git.wellspr.ing/WellBuilder/wcl-nodes
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue