Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
ded2775
feat: comments plugin
olliethedev Mar 12, 2026
0f77db8
fix: various implementation issues
olliethedev Mar 13, 2026
8cc2e9d
build: update lock file
olliethedev Mar 13, 2026
9834da0
refactor: implement transaction handling for comment like toggling to…
olliethedev Mar 13, 2026
b752ec1
fix: ensure default status is "approved" for comments to prevent unau…
olliethedev Mar 13, 2026
8661202
fix: set default comment status to "approved" to prevent unauthorized…
olliethedev Mar 13, 2026
5669680
fix: require onBeforePost hook in comments plugin to enhance security…
olliethedev Mar 13, 2026
1da7113
docs: add comments feature description to README
olliethedev Mar 13, 2026
b08774f
chore: update stack package version
olliethedev Mar 13, 2026
1979b37
fix: update comments plugin to derive authorId from session in onBefo…
olliethedev Mar 13, 2026
2802886
fix: enhance comment list key computation for optimistic updates by n…
olliethedev Mar 13, 2026
42233ca
chore: update shadcn registry [skip ci]
github-actions[bot] Mar 13, 2026
2dfbbe3
feat: add loading skeleton components for post navigation and recent …
olliethedev Mar 13, 2026
b42141a
fix: update onBeforeList hook documentation and implementation to cla…
olliethedev Mar 13, 2026
13fee34
chore: update registry
olliethedev Mar 13, 2026
cb5abf5
feat: import loading skeleton components for improved post page rende…
olliethedev Mar 13, 2026
a4a2acd
chore: update shadcn registry [skip ci]
github-actions[bot] Mar 13, 2026
3cc343e
feat: add replyCount to comments for tracking approved replies and en…
olliethedev Mar 13, 2026
1a5992e
feat: add comments section to blog posts in layout components for enh…
olliethedev Mar 13, 2026
02f7bd4
fix: enhance access control in onBeforeList hook to restrict non-appr…
olliethedev Mar 13, 2026
2069c1e
feat: add PATCH method support and currentUserId prop to layout compo…
olliethedev Mar 13, 2026
83784b4
feat: add PATCH method support to request handlers for improved API f…
olliethedev Mar 13, 2026
27e3f91
feat: install shadcn CLI locally to prevent npx cache issues and ensu…
olliethedev Mar 13, 2026
e37affb
feat: enhance optimistic comment handling in usePostComment hook to m…
olliethedev Mar 13, 2026
e879dad
fix: specify shadcn CLI version in test-registry script to ensure con…
olliethedev Mar 13, 2026
acce3aa
chore: update shadcn registry [skip ci]
github-actions[bot] Mar 13, 2026
574b0ed
fix: resolve issues with comment posting and retrieval by ensuring PO…
olliethedev Mar 13, 2026
3b9919f
chore: update shadcn registry [skip ci]
github-actions[bot] Mar 13, 2026
2e70ab5
feat: implement tests for visibility of own pending comments and repl…
olliethedev Mar 13, 2026
fdd0295
feat: enhance comment retrieval logic, reply count, and page layout
olliethedev Mar 13, 2026
a167ffd
chore: update shadcn registry [skip ci]
github-actions[bot] Mar 13, 2026
5c093ec
feat: add My Comments page functionality with author-specific comment…
olliethedev Mar 13, 2026
75b8433
fix: update promise handling in useResolvedCurrentUserId to ensure pr…
olliethedev Mar 13, 2026
d6ed28e
feat: add user-specific comment handling and resource links in layout…
olliethedev Mar 13, 2026
1c93827
fix: update resourceLinks example in comments plugin documentation fo…
olliethedev Mar 13, 2026
d3cabd9
feat: add author-specific access control for comment listing to enhan…
olliethedev Mar 13, 2026
a4a5a48
chore: update shadcn registry [skip ci]
github-actions[bot] Mar 13, 2026
b752994
feat: enhance comment handling by adding spam and approval status ind…
olliethedev Mar 13, 2026
dfb9f92
feat: add localization support for comments plugin, enhancing UI text…
olliethedev Mar 13, 2026
069d9f3
fix: handle null parentId in comments queries to ensure proper query …
olliethedev Mar 13, 2026
a6335af
feat: implement infinite scrolling for comments with pagination suppo…
olliethedev Mar 13, 2026
b29134b
feat: implement load more comments functionality with pagination supp…
olliethedev Mar 14, 2026
889076a
chore: update shadcn registry [skip ci]
github-actions[bot] Mar 14, 2026
219234f
feat: add onBeforeEdit hook for comment editing to enforce ownership …
olliethedev Mar 14, 2026
bfd236e
feat: add resolveCurrentUserId hook to comments plugin for secure use…
olliethedev Mar 14, 2026
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
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ Enable the features you need and keep building your product.
| **OpenAPI** | Auto-generated API documentation with interactive Scalar UI |
| **Route Docs** | Auto-generated client route documentation with interactive navigation |
| **Better Auth UI** | Beautiful shadcn/ui authentication components for better-auth |
| **Comments** | Commenting system with moderation, likes, and nested replies |

Each plugin ships **frontend + backend together**:
routes, APIs, database models, React components, SSR, and SEO — already wired.
Expand Down
6 changes: 6 additions & 0 deletions docs/content/docs/cli.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -124,3 +124,9 @@ Because the CLI executes your config file to extract the `dbSchema`, there are a
```bash
SOME_VAR=value npx @btst/cli generate --config=lib/stack.ts --orm=prisma --output=schema.prisma
```

or using dotenv-cli:

```bash
npx dotenv-cli -e .env.local -- npx @btst/cli generate --orm drizzle --config lib/stack.ts --output db/btst-schema.ts
```
4 changes: 4 additions & 0 deletions docs/content/docs/installation.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -354,6 +354,7 @@ In order to use BTST, your application must meet the following requirements:
export const GET = handler
export const POST = handler
export const PUT = handler
export const PATCH = handler
export const DELETE = handler
```
</Tab>
Expand Down Expand Up @@ -390,6 +391,9 @@ In order to use BTST, your application must meet the following requirements:
PUT: async ({ request }) => {
return handler(request)
},
PATCH: async ({ request }) => {
return handler(request)
},
DELETE: async ({ request }) => {
return handler(request)
},
Expand Down
1 change: 1 addition & 0 deletions docs/content/docs/meta.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
"plugins/form-builder",
"plugins/ui-builder",
"plugins/kanban",
"plugins/comments",
"plugins/open-api",
"plugins/route-docs",
"plugins/better-auth-ui",
Expand Down
26 changes: 26 additions & 0 deletions docs/content/docs/plugins/blog.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -509,6 +509,32 @@ overrides={{
}}
```

**Slot overrides:**

| Override | Type | Description |
|----------|------|-------------|
| `postBottomSlot` | `(post: SerializedPost) => ReactNode` | Render additional content below each blog post — use to embed a `CommentThread` |

```tsx
import { CommentThread } from "@btst/stack/plugins/comments/client/components"

overrides={{
blog: {
// ...
postBottomSlot: (post) => (
<CommentThread
resourceId={post.slug}
resourceType="blog-post"
apiBaseURL={baseURL}
apiBasePath="/api/data"
currentUserId={session?.user?.id}
loginHref="/login"
/>
),
}
}}
```

## React Data Hooks and Types
You can import the hooks from `"@btst/stack/plugins/blog/client/hooks"` to use in your components.

Expand Down
Loading
Loading