-
Notifications
You must be signed in to change notification settings - Fork 5.1k
Adding Convex tools extension #24263
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
Congratulations on your new Raycast extension! 🚀 Due to our current reduced availability, the initial review may take up to 10-15 business days. Once the PR is approved and merged, the extension will be available on our Store. |
0xdhrv
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
issue: duplicate subfolders for the extension convex
Can you review again, and remove the nested subfolders for the extension convex, and update the PR accordingly?
|
Hi 👋 Thanks for your contribution 💪 I have now tested your extension, and I have some feedback ready for you: I'm looking forward to testing this extension again 🔥 I converted this PR into a draft until it's ready for the review, please press the button Feel free to contact me here or at Slack if you have any questions. |
Greptile Summary
Important Files Changed
Confidence score: 3/5
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Additional Comments (9)
-
extensions/convex/convex/tsconfig.json, line 1-16 (link)logic: This tsconfig.json file appears to be duplicated in a nested convex directory. The main extension should have its TypeScript configuration at extensions/convex/tsconfig.json, not extensions/convex/convex/tsconfig.json. This nested structure could cause confusion and build issues. Is this nested directory structure intentional, or should this file be removed in favor of the main tsconfig.json at the extension root?
-
extensions/convex/src/browse-tables.tsx, line 377 (link)style: The
tableNameparameter is not used in this componentNote: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
-
extensions/convex/src/components/DeploymentSelector.tsx, line 5 (link)style: Remove unused imports
ActionandActionPanelNote: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
-
extensions/convex/src/components/DeploymentSelector.tsx, line 58-73 (link)logic: The onChange logic is flawed - it only checks deployments from the currently selected project, but users might want to select deployments from other projects. The loop through teams doesn't actually fetch different projects/deployments, making selection limited to the current context. How should the component handle deployment selection across different teams and projects?
-
extensions/convex/src/components/DeploymentSelector.tsx, line 62 (link)style: Variable
teamis declared but never used in the loopNote: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
-
extensions/convex/src/hooks/useConvexData.ts, line 44 (link)logic: Using
teamId ?? 0as fallback could cause issues ifteamId0 is valid. Consider using a different approach. Is teamId 0 a valid identifier in your system, or should this use a different sentinel value? -
extensions/convex/CHANGELOG.md, line 3 (link)syntax: Use
{PR_MERGE_DATE}placeholder instead of hardcoded dateContext Used: Rule from
dashboard- What: Changelog entries must use{PR_MERGE_DATE}placeholder in titles, be placed at the top of th... (source) -
extensions/convex/convex/README.md, line 3 (link)logic: This description doesn't match the actual features described in the PR body. Should describe the specific commands: Switch Project, Run Function, Browse Tables, and View Logs.
Is this the correct README file for the main extension, or is this a placeholder that needs to be updated with the proper description?
-
extensions/convex/src/switch-project.tsx, line 128 (link)logic: Context update may lose teamId when selecting project. Consider preserving existing context values. Should the teamId be preserved when updating the project context?
19 files reviewed, 9 comments
All set! Thanks! |
…text, update README
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Additional Comments (3)
-
extensions/convex/src/hooks/useConvexData.ts, line 205-222 (link)style: useEffect dependency includes fetchLogs which recreates on every parameter change, potentially causing excessive polling restarts. Should fetchLogs be wrapped in useRef or the effect dependencies be restructured to prevent polling interval resets on parameter changes?
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
-
extensions/convex/src/components/DeploymentSelector.tsx, line 58-70 (link)logic: Logic flaw prevents cross-team/project deployment selection. The onChange handler only searches within the current
deploymentsarray (filtered byselectedProjectId), meaning users cannot switch to deployments in different teams or projects. This breaks the core functionality of a deployment selector. Should this component support switching to deployments across different teams/projects, or is it intended only for deployments within the current project? -
extensions/convex/src/switch-project.tsx, line 137 (link)style: Only updates deploymentName in context - should preserve teamId and projectId for consistency with other handlers
Should the deployment selection preserve the current teamId and projectId values in the context?
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
10 files reviewed, 3 comments
Only took a little bit haha, all set! Thanks for checkin it out! |
Description
Convex Tools - A Raycast extension for interacting with your Convex backend directly from Raycast.
This extension provides quick access to essential Convex development workflows without leaving your keyboard:
Commands
Switch Convex Project - Navigate between your teams, projects, and deployments (dev/prod/preview)
Run Convex Function - Search and execute queries, mutations, and actions with argument input and formatted result display
Browse Convex Tables - View tables and documents with a detail panel showing formatted JSON and metadata
View Convex Logs - Stream real-time function execution logs with filtering, status indicators, and usage stats
Why I built this
I was building a Convex desktop application and found myself constantly alt-tabbing to the dashboard just to check logs and run seed functions. After doing this approximately 47 times too many, I decided to bring those features to Raycast. Tables got added because... well, I was already there.
Screencast
Youtube Video
First video might have been a bit blurry
Checklist
npm run buildand tested this distribution build in Raycastassetsfolder are used by the extension itselfREADMEare located outside the metadata folder if they were not generated with our metadata tool