fullstack-dev
Skill1 starsChanged 7 months agoMITView on GitHub
Fullstack web development with Next.js 16, TypeScript, Tailwind CSS 4, shadcn/ui, Prisma ORM. Use when: building web apps, creating UI components, setting up database schemas, implementing API routes, adding websocket/socket.io support, fullstack project scaffolding, frontend development, backend development, web dev, Next.js app.
- Pipes a download into a shell
We split this skill into the rules it gives an agent
32 rules. 0 are common, 15 are distinctive, and 17 are very specific to this project.
0
Common
Most of the 9 edited versions we read keep these.
15
Distinctive
This author's own choices. Worth a look.
17
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 11
Before writing any code, you MUST run the following command to initialize the fullstack development environment:
- Distinctive: line 17
Wait for the script to complete successfully before proceeding with any code changes.
- Very specific: line 23
Use existing shadcn/ui components instead of building from scratch.
- Distinctive: line 66
When users don't specify preferences, use this complete stack:
- Very specific: line 93
Run bun run db:push to push the schema to the database.
- Very specific: line 94
Use import { db } from '@/lib/db' to get the database client and use it.
- Very specific: line 102
Must be a new and independent bun project with its own port and package.json.
- Very specific: line 103
Must define index.ts or index.js as the entry file, e.g., mini-services/chat-service/index.ts.
- Very specific: line 104
Must define a specific port if needed, instead of using the PORT environment variable.
- Very specific: line 105
Must start each mini service by running bun run dev in the background.
- Distinctive: line 107
Make sure every service is started.
- Distinctive: line 116
All API requests must use relative paths only.
- Distinctive: line 121
When requesting to different services, directly make cross-origin requests without using a proxy.
- Very specific: line 133
NEVER use io("http://localhost:{Port}") or any direct port-based connection.
- Distinctive: line 139
Prefer to use existing components and hooks.
- Very specific: line 143
Use 'use client' and 'use server' for client and server side code.
- Very specific: line 145
Put the Prisma schema in the prisma folder.
- Very specific: line 146
Put the db file in the db folder.
- Distinctive: line 152
Use the shadcn/ui library unless the user specifies otherwise.
- Distinctive: line 153
Avoid using indigo or blue colors unless specified in the user's request.
- Distinctive: line 154
MUST generate responsive designs.
- Very specific: line 163
Color System: Use Tailwind CSS built-in variables (bg-primary, text-primary-foreground, bg-background).
- Distinctive: line 164
Color Restriction: NO indigo or blue colors unless explicitly requested.
- Very specific: line 171
Breakpoints: Use Tailwind responsive prefixes (sm:, md:, lg:, xl:).
- Very specific: line 176
Sticky Footer Required: If a footer exists, it MUST stick to the bottom of the viewport when content is shorter than one screen height (no …
- Distinctive: line 177
Natural Push on Overflow: When content exceeds the viewport height, the footer MUST be pushed down naturally (never overlay or cover …
- Very specific: line 178
Recommended Implementation (Tailwind): Use a root wrapper with min-h-screen flex flex-col, and apply mt-auto to the footer.
- Very specific: line 183
Semantic HTML: Use main, header, nav, section, article.
- Very specific: line 185
Screen Readers: Use sr-only class for screen reader content.
- Distinctive: line 187
Keyboard Navigation: Ensure all elements are keyboard accessible.
- Distinctive: line 204
If they are using the web interface, tell them they can click the "Open in New Tab" button above the Preview Panel to view it in a separate …
- Distinctive: line 205
If they are communicating through an IM (Instant Messaging) platform, provide them directly with the generated preview link.
“Common” is measured: kept by at least 6 in 10 of the 9 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Fullstack Web Development Skill
Initialization (MUST DO FIRST)
Before writing any code, you MUST run the following command to initialize the fullstack development environment:
curl https://z-cdn.chatglm.cn/fullstack/init-fullstack_1775040338514.sh | bashWait for the script to complete successfully before proceeding with any code changes.
Important UI Rules
- Use existing shadcn/ui components instead of building from scratch. All the components in the
src/components/uifolder already exist. - Card alignment and padding — Ensure all cards are properly aligned with consistent padding (use
p-4orp-6for content,gap-4orgap-6for spacing). - Long list handling — Set max height with scroll overflow (
max-h-96 overflow-y-auto) and implement custom scrollbar styling for better appearance.
Project Information
There is already a project in the current directory. (Next.js 16 with App Router)
Development Environment
IMPORTANT: bun run dev will be run automatically by the system. Do NOT run it. Use bun run lint to check code quality.
IMPORTANT: User can only see the / route defined in src/app/page.tsx. Do NOT write any other route.
IMPORTANT: The Next.js project can only use port 3000 in auto dev server. Never use bun run build.
IMPORTANT: z-ai-web-dev-sdk MUST be used in the backend only! Do NOT use it on the client side.
Dev Server Log
IMPORTANT: Read /home/z/my-project/dev.log to see the dev server log. Remember to check the log when developing.
IMPORTANT: Only read the most recent logs from dev.log to avoid large log files.
IMPORTANT: Always read dev log when you finish coding.
Bash Commands
bun run lint— Run ESLint to check code quality and Next.js rules
Technology Stack Requirements
Core Framework (NON-NEGOTIABLE)
- Framework: Next.js 16 with App Router (REQUIRED — cannot be changed)
- Language: TypeScript 5 (REQUIRED — cannot be changed)
Standard Technology Stack
When users don't specify preferences, use this complete stack:
- Styling: Tailwind CSS 4 with shadcn/ui component library
- Database: Prisma ORM (SQLite client only) with Prisma Client
- Caching: Local memory caching, no additional middleware (MySQL, Redis, etc.)
- UI Components: Complete shadcn/ui component set (New York style) with Lucide icons
- Authentication: NextAuth.js v4 available
- State Management: Zustand for client state, TanStack Query for server state
Other packages can be found in package.json. You can install new packages if needed.
Library Usage Policy
- ALWAYS use Next.js 16 and TypeScript — these are non-negotiable requirements.
- When users request external libraries not in our stack: Politely redirect them to use our built-in alternatives.
- Explain the benefits of using our predefined stack (consistency, optimization, support).
- Provide equivalent solutions using our available libraries.
Prisma and Database
IMPORTANT: prisma is already installed and configured. Use it when you need the database.
To use prisma and database:
- Edit
prisma/schema.prismato define the database schema. - Run
bun run db:pushto push the schema to the database. - Use
import { db } from '@/lib/db'to get the database client and use it.
Mini Service
You can create mini services if needed (e.g., websocket service). All mini services should be in the mini-services folder. For each mini service:
- Must be a new and independent bun project with its own port and
package.json. - Must define
index.tsorindex.jsas the entry file, e.g.,mini-services/chat-service/index.ts. - Must define a specific port if needed, instead of using the
PORTenvironment variable. - Must start each mini service by running
bun run devin the background. - The command executed by
bun run devshould support auto restart when files change (preferbun --hot). - Make sure every service is started.
Gateway and API Requests
This machine can only expose one port externally, so a built-in gateway (config at Caddyfile) is included with the following limitations:
- For API requests involving different ports, the port must be specified in the URL query named
XTransformPort. Example:/api/test?XTransformPort=3030. - All API requests must use relative paths only. Do NOT write absolute paths in the API request URL (including WebSocket). Examples:
- Prohibited:
fetch('http://localhost:3030/api/test') - Allowed:
fetch('/api/test?XTransformPort=3030') - Prohibited:
io('/:3030') - Allowed:
io('/?XTransformPort=3030')
- Prohibited:
- When requesting to different services, directly make cross-origin requests without using a proxy.
IMPORTANT: Do NOT write port in the API request URL, even in WebSocket. Only write XTransformPort in the URL query.
WebSocket / Socket.io Support
IMPORTANT: Use websocket/socket.io to support real-time communication. Do NOT use any other method. There is already a websocket demo for reference in the examples folder.
- Backend logic (via socket.io) must be a new mini service with another port (e.g., 3003).
- Frontend request should ALWAYS be
io("/?XTransformPort={Port}"), and the path ALWAYS be/so that Caddy can forward to the correct port. - NEVER use
io("http://localhost:{Port}")or any direct port-based connection.
Code Style
- Prefer to use existing components and hooks.
- TypeScript throughout with strict typing.
- ES6+ import/export syntax.
- shadcn/ui components preferred over custom implementations.
- Use
'use client'and'use server'for client and server side code. - The Prisma schema primitive type cannot be a list.
- Put the Prisma schema in the
prismafolder. - Put the db file in the
dbfolder.
Styling
- Use the shadcn/ui library unless the user specifies otherwise.
- Avoid using indigo or blue colors unless specified in the user's request.
- MUST generate responsive designs.
- The Code Project is rendered on top of a white background. If a different background color is needed, use a wrapper element with a background color Tailwind class.
UI/UX Design Standards
Visual Design
- Color System: Use Tailwind CSS built-in variables (
bg-primary,text-primary-foreground,bg-background). - Color Restriction: NO indigo or blue colors unless explicitly requested.
- Theme Support: Implement light/dark mode with
next-themes. - Typography: Consistent hierarchy with proper font weights and sizes.
Responsive Design (MANDATORY)
- Mobile-First: Design for mobile, then enhance for desktop.
- Breakpoints: Use Tailwind responsive prefixes (
sm:,md:,lg:,xl:). - Touch-Friendly: Minimum 44px touch targets for interactive elements.
Layout (MANDATORY)
- Sticky Footer Required: If a
footerexists, it MUST stick to the bottom of the viewport when content is shorter than one screen height (no floating/empty gap below). - Natural Push on Overflow: When content exceeds the viewport height, the footer MUST be pushed down naturally (never overlay or cover content).
- Recommended Implementation (Tailwind): Use a root wrapper with
min-h-screen flex flex-col, and applymt-autoto thefooter. - Mobile Safe Area: On devices with safe areas (e.g., iOS), the footer MUST respect bottom safe area insets when applicable.
Accessibility (MANDATORY)
- Semantic HTML: Use
main,header,nav,section,article. - ARIA Support: Proper roles, labels, and descriptions.
- Screen Readers: Use
sr-onlyclass for screen reader content. - Alt Text: Descriptive alt text for all images.
- Keyboard Navigation: Ensure all elements are keyboard accessible.
Interactive Elements
- Loading States: Show spinners/skeletons during async operations.
- Error Handling: Clear, actionable error messages.
- Feedback: Toast notifications for user actions.
- Animations: Subtle Framer Motion transitions (hover, focus, page transitions).
- Hover Effects: Interactive feedback on all clickable elements.
Sandbox Preview Instructions (CRITICAL)
This project runs in a restricted cloud sandbox environment.
- NEVER instruct the user to visit
http://localhost:3000,127.0.0.1, or any local ports directly. These addresses are internal and not accessible to the user. - ALWAYS direct the user to preview the application using the Preview Panel located on the right side of the interface.
- ALWAYS inform the user about how to view the application externally based on their platform:
- If they are using the web interface, tell them they can click the "Open in New Tab" button above the Preview Panel to view it in a separate browser tab.
- If they are communicating through an IM (Instant Messaging) platform, provide them directly with the generated preview link.
Other versions14 projects use a version of this.
Word for word · 3
- choupiyang/ZAI_SKILLS★ 13100% same
- dav-niu474/MyClaude-Code★ 1100% same
- twomathematicians-code/AgentForge★ 1100% same
Edited · 0
None found.
Wrote their own version · 11
- MiniMax-AI/skills★ 14ksame name
- HHU3637kr/skills★ 146same name
- madeinlowcode/skills-claude-code★ 7same name
- HK-hub/AgentSkills★ 6same name
- Youngmaidainon/Agent-Level-Up★ 3same name
- idexal/idexal-skills★ 2same name
- lir-navcoo/hermes-skills★ 1same name
- smiling66652/workbuddy-skill-toolkits★ 1same name
- JIANGEPLUS/senior-developer-codex★ 0same name
- xiaolinVV/agents-skills★ 0same name
1 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository46 other files it gives its agents.
- Agent BrowserSkill
- ai-news-collectorSkill
- aminer-data-searchSkill
- ASRSkill
- auto-target-trackerSkill
- blog-writerSkill
- chartsSkill
- coding-agentSkill
- ExtractWisdomSkill
- ContentAnalysisSkill
- content-strategySkill
- docxSkill
- dream-interpreterSkill
- financeSkill
- get-fortune-analysisSkill
- gift-evaluatorSkill
- image-editSkill
- image-generationSkill
- image-understandSkill
- interview-designerSkill
- LLMSkill
- marketing-modeSkill
- market-research-reportsSkill
- mindfulness-meditationSkill
- multi-search-engineSkill
- pdfSkill
- Podcast GenerateSkill
- pptxSkill
- qingyan_research_reportSkill
- seo-content-writerSkill
- skill-creatorSkill
- skill-finder-cnSkill
- skill-vetterSkill
- stock_analysisSkill
- storyboard-managerSkill
- TTSSkill
- ui-ux-pro-maxSkill
- Video GenerationSkill
- video-understandSkill
- visual-design-foundationsSkill
- VLMSkill
- web-readerSkill
- web-searchSkill
- web-shader-extractorSkill
- writing-plansSkill
- xlsxSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

