create-claudius 1.8.0 → 1.8.2

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.
@@ -1,23 +1,23 @@
1
- {
2
- "name": "{{PROJECT_NAME}}",
3
- "private": true,
4
- "version": "0.0.0",
5
- "type": "module",
6
- "scripts": {
7
- "dev": "vite",
8
- "build": "tsc --noEmit && vite build",
9
- "preview": "vite preview"
10
- },
11
- "dependencies": {
12
- "claudius-chat-widget": "{{WIDGET_VERSION}}",
13
- "react": "^18.3.1",
14
- "react-dom": "^18.3.1"
15
- },
16
- "devDependencies": {
17
- "@types/react": "^18.3.0",
18
- "@types/react-dom": "^18.3.0",
19
- "@vitejs/plugin-react": "^4.3.0",
20
- "typescript": "^5.6.0",
21
- "vite": "^6.0.0"
22
- }
23
- }
1
+ {
2
+ "name": "{{PROJECT_NAME}}",
3
+ "private": true,
4
+ "version": "0.0.0",
5
+ "type": "module",
6
+ "scripts": {
7
+ "dev": "vite",
8
+ "build": "tsc --noEmit && vite build",
9
+ "preview": "vite preview"
10
+ },
11
+ "dependencies": {
12
+ "claudius-chat-widget": "{{WIDGET_VERSION}}",
13
+ "react": "^18.3.1",
14
+ "react-dom": "^18.3.1"
15
+ },
16
+ "devDependencies": {
17
+ "@types/react": "^18.3.0",
18
+ "@types/react-dom": "^18.3.0",
19
+ "@vitejs/plugin-react": "^4.3.0",
20
+ "typescript": "^5.6.0",
21
+ "vite": "^6.0.0"
22
+ }
23
+ }
@@ -1,31 +1,31 @@
1
- import { ChatWidget } from "claudius-chat-widget";
2
- import "claudius-chat-widget/style.css";
3
-
4
- const pageStyle: React.CSSProperties = {
5
- fontFamily: "system-ui, -apple-system, Segoe UI, Roboto, sans-serif",
6
- display: "grid",
7
- placeItems: "center",
8
- minHeight: "100vh",
9
- margin: 0,
10
- };
11
-
12
- export function App() {
13
- return (
14
- <main style={pageStyle}>
15
- <div style={{ maxWidth: "32rem", padding: "2rem", textAlign: "center" }}>
16
- <h1>{{PROJECT_NAME}}</h1>
17
- <p>
18
- Edit <code>src/App.tsx</code> and configure the widget via its props. The
19
- launcher is in the corner.
20
- </p>
21
- </div>
22
-
23
- <ChatWidget
24
- apiUrl="{{API_URL}}"
25
- title="{{PROJECT_NAME}}"
26
- theme="{{THEME}}"
27
- accentColor="{{ACCENT_COLOR}}"
28
- />
29
- </main>
30
- );
31
- }
1
+ import { ChatWidget } from "claudius-chat-widget";
2
+ import "claudius-chat-widget/style.css";
3
+
4
+ const pageStyle: React.CSSProperties = {
5
+ fontFamily: "system-ui, -apple-system, Segoe UI, Roboto, sans-serif",
6
+ display: "grid",
7
+ placeItems: "center",
8
+ minHeight: "100vh",
9
+ margin: 0,
10
+ };
11
+
12
+ export function App() {
13
+ return (
14
+ <main style={pageStyle}>
15
+ <div style={{ maxWidth: "32rem", padding: "2rem", textAlign: "center" }}>
16
+ <h1>{{PROJECT_NAME}}</h1>
17
+ <p>
18
+ Edit <code>src/App.tsx</code> and configure the widget via its props. The
19
+ launcher is in the corner.
20
+ </p>
21
+ </div>
22
+
23
+ <ChatWidget
24
+ apiUrl="{{API_URL}}"
25
+ title="{{PROJECT_NAME}}"
26
+ theme="{{THEME}}"
27
+ accentColor="{{ACCENT_COLOR}}"
28
+ />
29
+ </main>
30
+ );
31
+ }
@@ -1,9 +1,9 @@
1
- import React from "react";
2
- import { createRoot } from "react-dom/client";
3
- import { App } from "./App";
4
-
5
- createRoot(document.getElementById("root")!).render(
6
- <React.StrictMode>
7
- <App />
8
- </React.StrictMode>,
9
- );
1
+ import React from "react";
2
+ import { createRoot } from "react-dom/client";
3
+ import { App } from "./App";
4
+
5
+ createRoot(document.getElementById("root")!).render(
6
+ <React.StrictMode>
7
+ <App />
8
+ </React.StrictMode>,
9
+ );
@@ -1,17 +1,17 @@
1
- {
2
- "compilerOptions": {
3
- "target": "ES2022",
4
- "lib": ["ES2022", "DOM", "DOM.Iterable"],
5
- "module": "ESNext",
6
- "moduleResolution": "bundler",
7
- "jsx": "react-jsx",
8
- "strict": true,
9
- "skipLibCheck": true,
10
- "noEmit": true,
11
- "esModuleInterop": true,
12
- "resolveJsonModule": true,
13
- "isolatedModules": true,
14
- "useDefineForClassFields": true
15
- },
16
- "include": ["src", "vite.config.ts"]
17
- }
1
+ {
2
+ "compilerOptions": {
3
+ "target": "ES2022",
4
+ "lib": ["ES2022", "DOM", "DOM.Iterable"],
5
+ "module": "ESNext",
6
+ "moduleResolution": "bundler",
7
+ "jsx": "react-jsx",
8
+ "strict": true,
9
+ "skipLibCheck": true,
10
+ "noEmit": true,
11
+ "esModuleInterop": true,
12
+ "resolveJsonModule": true,
13
+ "isolatedModules": true,
14
+ "useDefineForClassFields": true
15
+ },
16
+ "include": ["src", "vite.config.ts"]
17
+ }
@@ -1,6 +1,6 @@
1
- import { defineConfig } from "vite";
2
- import react from "@vitejs/plugin-react";
3
-
4
- export default defineConfig({
5
- plugins: [react()],
6
- });
1
+ import { defineConfig } from "vite";
2
+ import react from "@vitejs/plugin-react";
3
+
4
+ export default defineConfig({
5
+ plugins: [react()],
6
+ });
@@ -1,19 +1,19 @@
1
- # {{PROJECT_NAME}}
2
-
3
- A static site with the [Claudius](https://claudius-docs.pages.dev) chat widget
4
- embedded via the CDN — no build step required for the widget itself.
5
-
6
- ```bash
7
- pnpm install
8
- pnpm dev
9
- ```
10
-
11
- The widget is configured in `index.html` via `window.ClaudiusConfig`:
12
-
13
- - `apiUrl` — your deployed Claudius worker (currently `{{API_URL}}`)
14
- - `theme` — `{{THEME}}`
15
- - `accentColor` — `{{ACCENT_COLOR}}`
16
-
17
- You need a running Claudius worker for the chat to respond. See the
18
- [worker setup guide](https://claudius-docs.pages.dev/deployment/worker/), or
19
- re-run the scaffolder with `--worker` to generate one.
1
+ # {{PROJECT_NAME}}
2
+
3
+ A static site with the [Claudius](https://claudius-docs.pages.dev) chat widget
4
+ embedded via the CDN — no build step required for the widget itself.
5
+
6
+ ```bash
7
+ pnpm install
8
+ pnpm dev
9
+ ```
10
+
11
+ The widget is configured in `index.html` via `window.ClaudiusConfig`:
12
+
13
+ - `apiUrl` — your deployed Claudius worker (currently `{{API_URL}}`)
14
+ - `theme` — `{{THEME}}`
15
+ - `accentColor` — `{{ACCENT_COLOR}}`
16
+
17
+ You need a running Claudius worker for the chat to respond. See the
18
+ [worker setup guide](https://claudius-docs.pages.dev/deployment/worker/), or
19
+ re-run the scaffolder with `--worker` to generate one.
@@ -1,4 +1,4 @@
1
- node_modules
2
- dist
3
- *.local
4
- .DS_Store
1
+ node_modules
2
+ dist
3
+ *.local
4
+ .DS_Store
@@ -1,60 +1,60 @@
1
- <!doctype html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8" />
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
- <title>{{PROJECT_NAME}}</title>
7
- <!-- Claudius widget styles (CDN, auto-updates within v1.x) -->
8
- <link
9
- rel="stylesheet"
10
- href="https://cdn.jsdelivr.net/gh/PMDevSolutions/Claudius@1/cdn/claudius.css"
11
- />
12
- <style>
13
- :root {
14
- font-family: system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
15
- line-height: 1.5;
16
- }
17
- body {
18
- margin: 0;
19
- min-height: 100vh;
20
- display: grid;
21
- place-items: center;
22
- background: #f8fafc;
23
- color: #0f172a;
24
- }
25
- main {
26
- max-width: 32rem;
27
- padding: 2rem;
28
- text-align: center;
29
- }
30
- code {
31
- background: #e2e8f0;
32
- padding: 0.15em 0.4em;
33
- border-radius: 0.3em;
34
- }
35
- </style>
36
- </head>
37
- <body>
38
- <main>
39
- <h1>{{PROJECT_NAME}}</h1>
40
- <p>
41
- Your Claudius chat widget is live in the corner. Configure it by editing
42
- <code>window.ClaudiusConfig</code> in <code>index.html</code>.
43
- </p>
44
- </main>
45
-
46
- <!-- Claudius Chat Widget -->
47
- <script>
48
- window.ClaudiusConfig = {
49
- apiUrl: "{{API_URL}}",
50
- title: "{{PROJECT_NAME}}",
51
- theme: "{{THEME}}",
52
- accentColor: "{{ACCENT_COLOR}}",
53
- };
54
- </script>
55
- <script
56
- src="https://cdn.jsdelivr.net/gh/PMDevSolutions/Claudius@1/cdn/claudius.iife.js"
57
- defer
58
- ></script>
59
- </body>
60
- </html>
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
+ <title>{{PROJECT_NAME}}</title>
7
+ <!-- Claudius widget styles (CDN, auto-updates within v1.x) -->
8
+ <link
9
+ rel="stylesheet"
10
+ href="https://cdn.jsdelivr.net/gh/PMDevSolutions/Claudius@1/cdn/claudius.css"
11
+ />
12
+ <style>
13
+ :root {
14
+ font-family: system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
15
+ line-height: 1.5;
16
+ }
17
+ body {
18
+ margin: 0;
19
+ min-height: 100vh;
20
+ display: grid;
21
+ place-items: center;
22
+ background: #f8fafc;
23
+ color: #0f172a;
24
+ }
25
+ main {
26
+ max-width: 32rem;
27
+ padding: 2rem;
28
+ text-align: center;
29
+ }
30
+ code {
31
+ background: #e2e8f0;
32
+ padding: 0.15em 0.4em;
33
+ border-radius: 0.3em;
34
+ }
35
+ </style>
36
+ </head>
37
+ <body>
38
+ <main>
39
+ <h1>{{PROJECT_NAME}}</h1>
40
+ <p>
41
+ Your Claudius chat widget is live in the corner. Configure it by editing
42
+ <code>window.ClaudiusConfig</code> in <code>index.html</code>.
43
+ </p>
44
+ </main>
45
+
46
+ <!-- Claudius Chat Widget -->
47
+ <script>
48
+ window.ClaudiusConfig = {
49
+ apiUrl: "{{API_URL}}",
50
+ title: "{{PROJECT_NAME}}",
51
+ theme: "{{THEME}}",
52
+ accentColor: "{{ACCENT_COLOR}}",
53
+ };
54
+ </script>
55
+ <script
56
+ src="https://cdn.jsdelivr.net/gh/PMDevSolutions/Claudius@1/cdn/claudius.iife.js"
57
+ defer
58
+ ></script>
59
+ </body>
60
+ </html>
@@ -1,14 +1,14 @@
1
- {
2
- "name": "{{PROJECT_NAME}}",
3
- "private": true,
4
- "version": "0.0.0",
5
- "type": "module",
6
- "scripts": {
7
- "dev": "vite",
8
- "build": "vite build",
9
- "preview": "vite preview"
10
- },
11
- "devDependencies": {
12
- "vite": "^6.0.0"
13
- }
14
- }
1
+ {
2
+ "name": "{{PROJECT_NAME}}",
3
+ "private": true,
4
+ "version": "0.0.0",
5
+ "type": "module",
6
+ "scripts": {
7
+ "dev": "vite",
8
+ "build": "vite build",
9
+ "preview": "vite preview"
10
+ },
11
+ "devDependencies": {
12
+ "vite": "^6.0.0"
13
+ }
14
+ }
@@ -1,3 +1,3 @@
1
- # Copy this file to .dev.vars and fill in your key for local development:
2
- # cp .dev.vars.example .dev.vars
3
- ANTHROPIC_API_KEY=
1
+ # Copy this file to .dev.vars and fill in your key for local development:
2
+ # cp .dev.vars.example .dev.vars
3
+ ANTHROPIC_API_KEY=
@@ -1,34 +1,34 @@
1
- # {{PROJECT_NAME}}-worker
2
-
3
- A minimal [Cloudflare Worker](https://workers.cloudflare.com) that keeps your
4
- Anthropic API key server-side and powers the Claudius widget. It exposes
5
- `POST /api/chat` and `GET /api/health`, with CORS and a small KV-backed rate limit.
6
-
7
- > This is a trimmed starter. For the full-featured worker (analytics, configurable
8
- > rate limits, richer error handling), see the
9
- > [Claudius worker](https://github.com/PMDevSolutions/Claudius/tree/main/worker).
10
-
11
- ## Local development
12
-
13
- ```bash
14
- pnpm install
15
- cp .dev.vars.example .dev.vars # then add your ANTHROPIC_API_KEY
16
- pnpm dev # http://localhost:8787
17
- ```
18
-
19
- ## Deploy
20
-
21
- ```bash
22
- # 1. Create the KV namespace and paste the id(s) into wrangler.toml
23
- npx wrangler kv namespace create RATE_LIMIT
24
-
25
- # 2. Store your API key as a secret
26
- npx wrangler secret put ANTHROPIC_API_KEY
27
-
28
- # 3. Deploy
29
- npx wrangler deploy
30
- ```
31
-
32
- After deploying, set `ALLOWED_ORIGIN` (in `wrangler.toml` or the Cloudflare
33
- dashboard) to your site's origin, and point the widget's `apiUrl` at the worker
34
- URL.
1
+ # {{PROJECT_NAME}}-worker
2
+
3
+ A minimal [Cloudflare Worker](https://workers.cloudflare.com) that keeps your
4
+ Anthropic API key server-side and powers the Claudius widget. It exposes
5
+ `POST /api/chat` and `GET /api/health`, with CORS and a small KV-backed rate limit.
6
+
7
+ > This is a trimmed starter. For the full-featured worker (analytics, configurable
8
+ > rate limits, richer error handling), see the
9
+ > [Claudius worker](https://github.com/PMDevSolutions/Claudius/tree/main/worker).
10
+
11
+ ## Local development
12
+
13
+ ```bash
14
+ pnpm install
15
+ cp .dev.vars.example .dev.vars # then add your ANTHROPIC_API_KEY
16
+ pnpm dev # http://localhost:8787
17
+ ```
18
+
19
+ ## Deploy
20
+
21
+ ```bash
22
+ # 1. Create the KV namespace and paste the id(s) into wrangler.toml
23
+ npx wrangler kv namespace create RATE_LIMIT
24
+
25
+ # 2. Store your API key as a secret
26
+ npx wrangler secret put ANTHROPIC_API_KEY
27
+
28
+ # 3. Deploy
29
+ npx wrangler deploy
30
+ ```
31
+
32
+ After deploying, set `ALLOWED_ORIGIN` (in `wrangler.toml` or the Cloudflare
33
+ dashboard) to your site's origin, and point the widget's `apiUrl` at the worker
34
+ URL.
@@ -1,5 +1,5 @@
1
- node_modules
2
- .wrangler
3
- dist
4
- .dev.vars
5
- .DS_Store
1
+ node_modules
2
+ .wrangler
3
+ dist
4
+ .dev.vars
5
+ .DS_Store
@@ -1,18 +1,18 @@
1
- {
2
- "name": "{{PROJECT_NAME}}-worker",
3
- "private": true,
4
- "version": "0.0.0",
5
- "scripts": {
6
- "dev": "wrangler dev",
7
- "deploy": "wrangler deploy"
8
- },
9
- "dependencies": {
10
- "@anthropic-ai/sdk": "^0.52.0",
11
- "hono": "^4.7.0"
12
- },
13
- "devDependencies": {
14
- "@cloudflare/workers-types": "^4.20240909.0",
15
- "typescript": "^5.6.0",
16
- "wrangler": "^4.6.0"
17
- }
18
- }
1
+ {
2
+ "name": "{{PROJECT_NAME}}-worker",
3
+ "private": true,
4
+ "version": "0.0.0",
5
+ "scripts": {
6
+ "dev": "wrangler dev",
7
+ "deploy": "wrangler deploy"
8
+ },
9
+ "dependencies": {
10
+ "@anthropic-ai/sdk": "^0.52.0",
11
+ "hono": "^4.7.0"
12
+ },
13
+ "devDependencies": {
14
+ "@cloudflare/workers-types": "^4.20240909.0",
15
+ "typescript": "^5.6.0",
16
+ "wrangler": "^4.6.0"
17
+ }
18
+ }