ArtJoos component - WOPR Systems LLC
| public | ||
| src | ||
| .dockerignore | ||
| Dockerfile | ||
| next.config.js | ||
| package.json | ||
| postcss.config.js | ||
| README.md | ||
| tailwind.config.ts | ||
| tsconfig.json | ||
artjoos-storefront
Next.js 15 PWA storefront for ArtJoos marketplace.
WOPR Systems LLC product. AGPL-3.0.
Security
- CSP headers (no unsafe-eval, no unsafe-inline on scripts)
- HSTS preload (2-year max-age)
- Non-root Docker container
- No dangerouslySetInnerHTML anywhere
- DOMPurify for any user-generated content rendering
- Strict CORS (artjoos.wopr.systems origin only)
Stack
- Next.js 15 App Router + React 19 RC
- Tailwind CSS
- Authentik OIDC (via NextAuth v5)
- Saleor GraphQL (channel: artjoos)
- Stripe Elements (checkout)
Pages
- / - homepage, featured artists, new works
- /artists - directory, filter by medium/location
- /artist/[slug] - artist storefront
- /browse - all work, chronological + filters
- /work/[slug] - single product page with provenance verification
- /commissions - commission request flow
- /collection - buyer collection, wishlist
- /artist/apply - verification application
- /artist/dashboard - verified artist dashboard
- /editorial - staff picks, artist of the week
Legal
WOPR Systems LLC (Illinois LLC). Revenue split per WOPR standard: 60% Foundation / 20% ops / 10% infra / 10% OSS.