Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/workflows/publish-alpha.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@ jobs:
node-version: 22
cache: pnpm
registry-url: https://registry.npmjs.org
- name: Install npm with trusted publishing support
run: npm install --global npm@latest
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Verify alpha package
Expand Down
4 changes: 3 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@

## Unreleased

- No unreleased changes.
- Use QVAC CLI's `127.0.0.1:11434` endpoint in generated apps and documentation.
- Add npm discovery keywords and a benefit-oriented package description.
- Clarify that this is an independent community project.

## v0.1.0-alpha.2 - 2026-07-10

Expand Down
11 changes: 7 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
# create-qvac-app

Public QVAC developer tooling from localhost41.
Scaffold a Node.js TypeScript app that talks to a local QVAC server.

> Independent community project maintained by localhost41. Not affiliated with
> or endorsed by Tether or QVAC.

> **Alpha Release:** This package is currently in **alpha** (v0.1.0-alpha.1).
> Expect breaking changes. Feedback is welcome.
Expand All @@ -14,7 +17,7 @@ Public QVAC developer tooling from localhost41.
- A local QVAC HTTP server running before you run the generated app.

The `node-chat` template sends chat requests to
`http://localhost:8000/v1/chat/completions` by default. If your QVAC server
`http://127.0.0.1:11434/v1/chat/completions` by default. If your QVAC server
uses a different local URL, set `QVAC_BASE_URL` when running the app.

### Scaffold an app
Expand Down Expand Up @@ -73,7 +76,7 @@ the app uses.
For the default endpoint:

```bash
curl http://localhost:8000/v1/chat/completions
curl http://127.0.0.1:11434/v1/models
```

If the server is on another port or host, restart the app with `QVAC_BASE_URL`.
Expand Down Expand Up @@ -118,7 +121,7 @@ Available templates:

The generated app includes a README, `package.json`, TypeScript config, and
a basic chat example that calls the QVAC local HTTP server at
`http://localhost:8000/v1/chat/completions`.
`http://127.0.0.1:11434/v1/chat/completions`.

### Testing packaging

Expand Down
11 changes: 10 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,16 @@
{
"name": "@localhost41/create-qvac-app",
"version": "0.1.0-alpha.2",
"description": "QVAC developer tooling package: create-qvac-app",
"description": "Scaffold a Node.js TypeScript app for local QVAC inference",
"keywords": [
"qvac",
"create-app",
"project-template",
"scaffolding",
"local-ai",
"openai-compatible",
"typescript"
],
"license": "MIT",
"repository": {
"type": "git",
Expand Down
4 changes: 2 additions & 2 deletions src/cli.ts
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ pnpm install
pnpm dev
\`\`\`

The example sends a single chat request to \`http://localhost:8000/v1/chat/completions\`.
The example sends a single chat request to \`http://127.0.0.1:11434/v1/chat/completions\`.
Set \`QVAC_BASE_URL\` to use a different local endpoint.
`,
);
Expand Down Expand Up @@ -129,7 +129,7 @@ Set \`QVAC_BASE_URL\` to use a different local endpoint.
writeProjectFile(
projectRoot,
"src/index.ts",
`const baseUrl = process.env.QVAC_BASE_URL ?? "http://localhost:8000";
`const baseUrl = process.env.QVAC_BASE_URL ?? "http://127.0.0.1:11434";

function chatCompletionsUrl(rawBaseUrl: string): string {
const normalized = rawBaseUrl.replace(/\\/+$/, "");
Expand Down
2 changes: 1 addition & 1 deletion test/index.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ describe("create-qvac-app", () => {
expect(existsSync(join(appDirectory, "src/index.ts"))).toBe(true);

expect(readFileSync(join(appDirectory, "README.md"), "utf8")).toContain(
"http://localhost:8000/v1/chat/completions",
"http://127.0.0.1:11434/v1/chat/completions",
);
expect(readFileSync(join(appDirectory, "src/index.ts"), "utf8")).toContain(
"QVAC_BASE_URL",
Expand Down
Loading