Skip to content

Commit 4966798

Browse files
dcramercodex
andcommitted
build(workspace): add jr-sentry consumer app workspace
Set up a pnpm workspace with an in-repo jr-sentry consumer project so we can validate package behavior in a production-like integration path. Use workspace linking for junior and document the local smoke workflow. Co-Authored-By: GPT-5 Codex <noreply@openai.com>
1 parent a264bd8 commit 4966798

13 files changed

Lines changed: 80 additions & 0 deletions

File tree

README.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,24 @@ This runs the app with files loaded from `data/`, `skills/`, and `plugins/` in t
5252

5353
Junior is available as an npm package and integrates as standard Next.js wrappers.
5454

55+
### Workspace consumer smoke app
56+
57+
This repo includes a local consumer app at `jr-sentry/` to validate package behavior before deployment.
58+
59+
From repo root:
60+
61+
```bash
62+
pnpm install
63+
pnpm --filter jr-sentry build
64+
```
65+
66+
If you change package code and want to refresh generated `dist/` before validating:
67+
68+
```bash
69+
pnpm build:pkg
70+
pnpm --filter jr-sentry build
71+
```
72+
5573
### Install into an existing Next.js app
5674

5775
1. Install dependencies:

jr-sentry/.env.example

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
SLACK_BOT_TOKEN=
2+
SLACK_SIGNING_SECRET=
3+
JUNIOR_BOT_NAME=
4+
AI_MODEL=
5+
AI_FAST_MODEL=
6+
REDIS_URL=
7+
NEXT_PUBLIC_SENTRY_DSN=
8+
SENTRY_ORG=
9+
SENTRY_PROJECT=
10+
SENTRY_AUTH_TOKEN=

jr-sentry/.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
node_modules/
2+
.next/
3+
.env
4+
.env.local
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
export { GET, POST } from "junior/handler";
2+
export const runtime = "nodejs";

jr-sentry/app/layout.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export { default } from "junior/app/layout";

jr-sentry/data/SOUL.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# jr-sentry
2+
3+
You are jr-sentry, a helpful assistant.

jr-sentry/instrumentation.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export { register, onRequestError } from "junior/instrumentation";

jr-sentry/next.config.mjs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
import { withJunior } from "junior/config";
2+
3+
export default withJunior();

jr-sentry/package.json

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
{
2+
"name": "jr-sentry",
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+
},
11+
"dependencies": {
12+
"@sentry/nextjs": "^10.0.0",
13+
"junior": "workspace:*",
14+
"next": "^16.0.0",
15+
"react": "^19.0.0",
16+
"react-dom": "^19.0.0"
17+
}
18+
}

jr-sentry/plugins/.gitkeep

Whitespace-only changes.

0 commit comments

Comments
 (0)