tech-product-landing
Skill21 starsChanged 7 months agoMITView on GitHub
Build production-grade landing pages for software/CLI tools, developer libraries, and technical products. Uses the "Maxsim-style" design system: dark theme, blue accent glows, framer-motion animations, geometric hero grid, marquee tech stack, tabbed docs, and timeline how-it-works sections. Trigger when user says "create a landing page for my software", "build a product site", "make a landing page like maxsim-flutter", "developer landing page", or "CLI tool website". Stack: Vite + React + TypeScript + Tailwind CSS v4 + Framer Motion + Lucide React.
- Installs packages
In this repository22 other files it gives its agents.
- 2d-pixel-assetSkill
- anthropic-skilljar-extractorSkill
- audio-to-midiSkill
- auto-researchSkill
- gemini-image-genSkill
- gemini-web-media-analysisSkill
- google-ai-studio-ttsSkill
- hermes-tweetSkill
- link-downloadSkill
- llama-cppSkill
- meta-muse-video-analysisSkill
- midi-synthSkill
- opencodeSkill
- seedanceSkill
- unreal-best-practicesSkill
- unreal-blueprint-codegenSkill
- unreal-gasSkill
- unreal-pcg-pythonSkill
- unreal-thirdpartySkill
- video-downloadSkill
- video-fetch-and-summarizeSkill
- video-summarizerSkill
The file
We split this skill into the rules it gives an agent
6 rules. About 0 are common, 0 are distinctive, and 6 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
6
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 29
Read and copy every file from assets/template/ to the new project, preserving directory structure:
- Very specific: line 75
Update --color-accent-light to a lighter shade
- Very specific: line 96
Import icons from lucide-react (strokeWidth={1.5} always)
- Very specific: line 111
Keep CodeBlock, DocHeading, DocText utilities — they're universal
- Very specific: line 112
Update TabId type and tabs array with your tab names
- Very specific: line 135
Update usages in Hero.tsx and Footer.tsx
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Tech Product Landing Page
This skill produces landing pages by copying the complete maxsim-flutter source from assets/template/
and adapting the content for the target product. The design, animations, and structure stay identical —
only the data arrays and product-specific strings change.
Step 1: Scaffold & Install
npm create vite@latest <project-name> -- --template react-ts
cd <project-name>
npm install motion lucide-react clsx tailwind-merge
npm install -D tailwindcss @tailwindcss/vite @types/nodeStep 2: Copy Template Files
Read and copy every file from assets/template/ to the new project, preserving directory structure:
assets/template/
├── index.html
├── vite.config.ts
├── tsconfig.json
├── vite-env.d.ts
└── src/
├── main.tsx
├── App.tsx
├── index.css
├── lib/utils.ts
└── components/sections/
├── Navbar.tsx
├── Hero.tsx
├── Features.tsx
├── HowItWorks.tsx
├── TechStack.tsx
├── Docs.tsx
└── Footer.tsxStep 3: Content Replacements
All // ADAPT: comments in the template mark the exact locations to change. Summary:
Global string replacements
| Find | Replace with |
maxsim-flutter | your product name |
maystudios/maxsim-flutter | your GitHub repo (org/repo) |
"maxsim-flutter" (npm package in vite.config.ts) | your npm package name |
__MAXSIM_VERSION__ | rename to __YOUR_PRODUCT_VERSION__ (3 files: vite-env.d.ts, Hero.tsx, Footer.tsx) |
index.html
<title>and<meta name="description">
vite.config.ts
fetchNpmVersion("maxsim-flutter")→ your npm package name- Or remove the fetch and use:
const version = "1.0.0"; - Rename
__MAXSIM_VERSION__define key
index.css
--color-accent: #3b82f6→ your brand color (blue=dev tools, green=SaaS, purple=AI)- Update
--color-accent-lightto a lighter shade
Navbar.tsx
navLinksarray: add/remove sections to match your page- Brand name in the
<a>element - GitHub URL (2 locations: desktop + mobile)
Hero.tsx
FLIP_WORDS— 4–5 power words for your product- Eyebrow label text (
"CLI Tool"→ your category) h1product name- Subtitle prefix (
"AI-Powered Flutter ") - Description paragraph
commandvariable inTerminalBlock(your install command)- GitHub
hrefin CTA buttons
Features.tsx
- Replace
featuresarray with 6 items:{ icon: IconName, title: "...", description: "..." } - Import icons from
lucide-react(strokeWidth={1.5}always)
HowItWorks.tsx
- Replace
stepsarray with 4 items (install → create → use → ship pattern):{ number: "01", title: "...", description: "...", code: "your-cli command" }
TechStack.tsx
- Replace
flutterStack/cliStackarrays with your actual tech (8–12 total items) - Rename the arrays and their category labels if needed
Docs.tsx
- Replace all tab content functions with your actual documentation
- Typical tab structure: Getting Started, Commands/API, Options/Modules, Config, Advanced Topic
- Keep
CodeBlock,DocHeading,DocTextutilities — they're universal - Update
TabIdtype andtabsarray with your tab names
Footer.tsx
- Product name, tagline, copyright string
EXTERNAL_LINKSarray: GitHub URL, npm URL (or replace with your links)
Design Tokens
Defined in src/index.css under @theme inline:
| Token | Default | Guidance |
--color-accent | #3b82f6 blue | Change per brand |
--color-accent-light | #60a5fa | Lighter accent shade |
| Everything else | zinc dark scale | Keep as-is |
Version Global (__MAXSIM_VERSION__)
The live site fetches the npm version at build time via vite.config.ts. For a new product:
- Change
fetchNpmVersion("maxsim-flutter")to your package name - Or hard-code:
const version = "1.0.0"; - Rename the define key from
__MAXSIM_VERSION__to something like__MY_TOOL_VERSION__ - Update
vite-env.d.tsdeclaration - Update usages in
Hero.tsxandFooter.tsx
Checklist
- All
maxsim-flutterstring references replaced - Version global renamed and configured
index.htmltitle and description updated- Accent color changed (if needed)
FLIP_WORDSreflect product value props- Terminal command shows real install/init command
- 6 features with relevant lucide icons
- 4 how-it-works steps with real commands
- Tech stack badges list actual dependencies
- Docs tabs contain real documentation
- GitHub and npm links are correct
- Footer copyright and tagline updated
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.

