@payai/x402-next-starter 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/NOTICE +2 -0
- package/README.md +85 -0
- package/bin/create.js +87 -0
- package/package.json +39 -0
- package/template/.env-local +3 -0
- package/template/.prettierignore +8 -0
- package/template/.prettierrc +11 -0
- package/template/README.md +127 -0
- package/template/app/assets/x402_wordmark_dark.png +0 -0
- package/template/app/assets/x402_wordmark_dark.svg +4 -0
- package/template/app/assets/x402_wordmark_light.svg +1 -0
- package/template/app/favicon.ico +0 -0
- package/template/app/globals.css +33 -0
- package/template/app/layout.tsx +51 -0
- package/template/app/page.tsx +51 -0
- package/template/app/protected/page.tsx +16 -0
- package/template/eslint.config.js +73 -0
- package/template/middleware.ts +31 -0
- package/template/next.config.ts +17 -0
- package/template/package-lock.json +8726 -0
- package/template/package.json +42 -0
- package/template/postcss.config.mjs +8 -0
- package/template/public/apple-touch-icon.png +0 -0
- package/template/public/favicon-96x96.png +0 -0
- package/template/public/favicon.svg +3 -0
- package/template/public/site.webmanifest +21 -0
- package/template/public/web-app-manifest-192x192.png +0 -0
- package/template/public/web-app-manifest-512x512.png +0 -0
- package/template/public/x402-icon-blue.png +0 -0
- package/template/tailwind.config.ts +18 -0
- package/template/tsconfig.json +27 -0
- package/template/types/svg.d.ts +5 -0
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "next-example",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"private": true,
|
|
5
|
+
"type": "module",
|
|
6
|
+
"scripts": {
|
|
7
|
+
"dev": "next dev",
|
|
8
|
+
"build": "next build",
|
|
9
|
+
"start": "next start",
|
|
10
|
+
"format": "prettier -c .prettierrc --write \"**/*.{ts,js,cjs,json,md}\"",
|
|
11
|
+
"format:check": "prettier -c .prettierrc --check \"**/*.{ts,js,cjs,json,md}\"",
|
|
12
|
+
"lint": "eslint . --ext .ts --fix",
|
|
13
|
+
"lint:check": "eslint . --ext .ts"
|
|
14
|
+
},
|
|
15
|
+
"dependencies": {
|
|
16
|
+
"@heroicons/react": "^2.2.0",
|
|
17
|
+
"next": "^15.2.4",
|
|
18
|
+
"react": "^19.0.0",
|
|
19
|
+
"react-dom": "^19.0.0",
|
|
20
|
+
"viem": "^2.21.26",
|
|
21
|
+
"x402-next": "^0.6.5",
|
|
22
|
+
"@coinbase/x402": "workspace:*"
|
|
23
|
+
},
|
|
24
|
+
"devDependencies": {
|
|
25
|
+
"@svgr/webpack": "^8.1.0",
|
|
26
|
+
"@types/node": "^20",
|
|
27
|
+
"@types/react": "^19",
|
|
28
|
+
"@types/react-dom": "^19",
|
|
29
|
+
"@eslint/js": "^9.24.0",
|
|
30
|
+
"eslint": "^9.24.0",
|
|
31
|
+
"eslint-plugin-jsdoc": "^50.6.9",
|
|
32
|
+
"eslint-plugin-prettier": "^5.2.6",
|
|
33
|
+
"@typescript-eslint/eslint-plugin": "^8.29.1",
|
|
34
|
+
"@typescript-eslint/parser": "^8.29.1",
|
|
35
|
+
"eslint-plugin-import": "^2.31.0",
|
|
36
|
+
"prettier": "3.5.2",
|
|
37
|
+
"eslint-config-next": "15.1.7",
|
|
38
|
+
"postcss": "^8",
|
|
39
|
+
"tailwindcss": "^3.4.1",
|
|
40
|
+
"typescript": "^5"
|
|
41
|
+
}
|
|
42
|
+
}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.dev/svgjs" width="29" height="32" viewBox="0 0 29 32"><image width="29" height="32" xlink:href="data:image/png;base64,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"></image><style>@media (prefers-color-scheme: light) { :root { filter: none; } }
|
|
2
|
+
@media (prefers-color-scheme: dark) { :root { filter: contrast(0.9090909090909091) brightness(1.5); } }
|
|
3
|
+
</style></svg>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "x402.org",
|
|
3
|
+
"short_name": "x402",
|
|
4
|
+
"icons": [
|
|
5
|
+
{
|
|
6
|
+
"src": "/web-app-manifest-192x192.png",
|
|
7
|
+
"sizes": "192x192",
|
|
8
|
+
"type": "image/png",
|
|
9
|
+
"purpose": "maskable"
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
"src": "/web-app-manifest-512x512.png",
|
|
13
|
+
"sizes": "512x512",
|
|
14
|
+
"type": "image/png",
|
|
15
|
+
"purpose": "maskable"
|
|
16
|
+
}
|
|
17
|
+
],
|
|
18
|
+
"theme_color": "#ffffff",
|
|
19
|
+
"background_color": "#ffffff",
|
|
20
|
+
"display": "standalone"
|
|
21
|
+
}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Config } from "tailwindcss";
|
|
2
|
+
|
|
3
|
+
export default {
|
|
4
|
+
content: [
|
|
5
|
+
"./pages/**/*.{js,ts,jsx,tsx,mdx}",
|
|
6
|
+
"./components/**/*.{js,ts,jsx,tsx,mdx}",
|
|
7
|
+
"./app/**/*.{js,ts,jsx,tsx,mdx}",
|
|
8
|
+
],
|
|
9
|
+
theme: {
|
|
10
|
+
extend: {
|
|
11
|
+
colors: {
|
|
12
|
+
background: "var(--background)",
|
|
13
|
+
foreground: "var(--foreground)",
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
plugins: [],
|
|
18
|
+
} satisfies Config;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"target": "ES2022",
|
|
4
|
+
"lib": ["dom", "dom.iterable", "esnext"],
|
|
5
|
+
"allowJs": true,
|
|
6
|
+
"skipLibCheck": true,
|
|
7
|
+
"strict": false,
|
|
8
|
+
"noEmit": true,
|
|
9
|
+
"esModuleInterop": true,
|
|
10
|
+
"module": "esnext",
|
|
11
|
+
"moduleResolution": "bundler",
|
|
12
|
+
"resolveJsonModule": true,
|
|
13
|
+
"isolatedModules": true,
|
|
14
|
+
"jsx": "preserve",
|
|
15
|
+
"incremental": true,
|
|
16
|
+
"plugins": [
|
|
17
|
+
{
|
|
18
|
+
"name": "next"
|
|
19
|
+
}
|
|
20
|
+
],
|
|
21
|
+
"paths": {
|
|
22
|
+
"@/*": ["./*"]
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
"include": ["types/video.d.ts", "next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"],
|
|
26
|
+
"exclude": ["node_modules"]
|
|
27
|
+
}
|