

Also from Kynth Studios


Also from Kynth Studios


Also from Kynth Studios
123456TRPC has some specific syntax to follow for both frontend/client and backend/api:781. Client Example:910const trpc = useTRPC();11const queryClient = useQueryClient();1213// A readonly query14const { data: tasks = [], isLoading, refetch } = useQuery(trpc.bullmq.listTasks.queryOptions({ limit: 50, offset: 0 }));1516// A mutation17const createMutation = useMutation({18...trpc.tenants.create.mutationOptions(),19onSuccess: () => {20queryClient.invalidateQueries({ queryKey: trpc.tenants.list.queryKey() });21}22});2324const createTenant = () => createMutation.mutate({ name: "New Tenant" });25262. Backend Example:2728 export const tenantsRouter = router({29 list: publicProcedure30 .output(z.array(TenantSchema))31 .query(async () => {32 return tenantsService.list();33 }),3435 create: publicProcedure36 .input(z.object({ name: z.string().min(1) }))37 .output(TenantSchema)38 .mutation(async ({ input }) => {39 const result = await tenantsService.create(input);40 if (!result) throw new Error('Failed to create tenant');41 return result;42 }),43 });44453. (optional) A service file, not TRPC-specific, but separates more complicated database/etc46 logic away from TRPC mechanics47
One repository carrying more than one format is the comparison this product exists for: does anyone actually write different content in each file, or is one a copy of the other?
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| markstev/mark-starter.cursor/rules/backend.mdc · 0 | Cursor rules | setuptesttypessecurity+3 | 86/100 | 14 days ago | |
| markstev/mark-starter.cursor/rules/db.mdc · 0 | Cursor rules | no sections | 44/100 | 14 days ago | |
| markstev/mark-starter.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+6 | 99/100 | 14 days ago | |
| markstev/mark-starter.cursor/rules/rls.mdc · 0 | Cursor rules | no sections | 24/100 | 14 days ago |
Same format, overlapping stack, ranked by quality.
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| hiromaily/go-crypto-wallet.cursor/rules/typescript.mdc · 126 | Cursor rules | setupbuildtestlint-format+6 | 100/100 | 14 days ago | |
| TechSquidTV/Hermes.cursor/rules/10-hermes-api.mdc · 46 | Cursor rules | testlint-formatstylearch+5 | 100/100 | 14 days ago | |
| dodgecfr/combatfilms-webapp.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 14 days ago | |
| deifos/clipmira-subtitles.cursor/rules/frontend.mdc · 1 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 14 days ago | |
| markstev/mark-starter.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+6 | 99/100 | 14 days ago | |
| Allymahmoud/case-intake-platform.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 14 days ago | |
| langflow-ai/langflow.cursor/rules/docs_development.mdc · 153k | Cursor rules | setupbuildtestlint-format+7 | 97/100 | 14 days ago | |
| TechSquidTV/Hermes.cursor/rules/20-hermes-api-tests.mdc · 46 | Cursor rules | teststyletesting-strategysecurity+3 | 97/100 | 14 days ago |
A badge carrying the measured quality of the strongest agent config file in this repository, out of 100. It reads from this index every time somebody loads your page, so it changes when the measurement changes and there is nothing to keep up to date. Free, no account, and the value is not something you or we can set by hand.
[](https://rulestack.kynth.studio/configs/markstev-mark-starter-cursor-rules-trpc)Would rather not hotlink us? Every badge is also served in shields.io’s endpoint schema, so shields renders the image and your readers never talk to our domain:
Published by Toolproof, the masthead over this index and eight others. The method behind the number is at toolproof.kynth.studio/methodology, and the whole thing is readable as JSON with no key at /api.