{"id":34248181,"url":"https://github.com/razorglyon/cookie-cutter-designer","last_synced_at":"2026-05-06T00:06:39.654Z","repository":{"id":324445609,"uuid":"1097259060","full_name":"razorglyon/cookie-cutter-designer","owner":"razorglyon","description":"A modern web app for designing custom 3D-printable   cookie cutters and stamps","archived":false,"fork":false,"pushed_at":"2025-12-15T14:35:36.000Z","size":271,"stargazers_count":0,"open_issues_count":9,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-12-19T16:46:48.796Z","etag":null,"topics":["3d-printing","cookie-cutter","food-safe","maker","stl-export","svelte","threejs","typescript","web-app"],"latest_commit_sha":null,"homepage":"https://razorglyon.github.io/cookie-cutter-designer/","language":"Svelte","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/razorglyon.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-15T20:42:19.000Z","updated_at":"2025-11-16T09:48:38.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/razorglyon/cookie-cutter-designer","commit_stats":null,"previous_names":["razorglyon/cookie-cutter-designer"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/razorglyon/cookie-cutter-designer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/razorglyon%2Fcookie-cutter-designer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/razorglyon%2Fcookie-cutter-designer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/razorglyon%2Fcookie-cutter-designer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/razorglyon%2Fcookie-cutter-designer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/razorglyon","download_url":"https://codeload.github.com/razorglyon/cookie-cutter-designer/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/razorglyon%2Fcookie-cutter-designer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32672688,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-05T11:29:49.557Z","status":"ssl_error","status_checked_at":"2026-05-05T11:29:48.587Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3d-printing","cookie-cutter","food-safe","maker","stl-export","svelte","threejs","typescript","web-app"],"created_at":"2025-12-16T08:05:11.155Z","updated_at":"2026-05-06T00:06:39.638Z","avatar_url":"https://github.com/razorglyon.png","language":"Svelte","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Cookie Cutter Designer\n\n[![Deploy to GitHub Pages](https://github.com/razorglyon/cookie-cutter-designer/actions/workflows/deploy.yml/badge.svg)](https://github.com/razorglyon/cookie-cutter-designer/actions/workflows/deploy.yml)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Made with Svelte](https://img.shields.io/badge/Made%20with-Svelte-FF3E00?logo=svelte\u0026logoColor=white)](https://svelte.dev)\n[![TypeScript](https://img.shields.io/badge/TypeScript-007ACC?logo=typescript\u0026logoColor=white)](https://www.typescriptlang.org/)\n\nA web application for designing custom 3D-printable cookie cutters from vector images or raster graphics.\n\n**🔗 [Live Demo](https://razorglyon.github.io/cookie-cutter-designer/)**\n\n## Features\n\n### Core Features\n\n- **File Support**: Upload SVG, PNG, or JPG files\n- **Auto-Vectorization**: Automatically converts raster images to vector paths\n- **3D Preview**: Real-time 3D visualization with Three.js\n- **Customizable Parameters**:\n  - Wall thickness (0.8-2.0mm)\n  - Cutting height (8-25mm)\n  - Total height (15-40mm)\n  - Taper angle (0-15°)\n  - Scale adjustment\n- **Handle Styles**: Round, chamfered, rectangular, flat, or no handle\n- **Embossing/Stamping**: Optional raised or indented designs\n- **STL Export**: Download 3D-printable STL files (binary format)\n- **Printability Validation**: Real-time warnings and recommendations\n\n### 🤖 AI-Powered Features (Optional)\n\nPowered by **Gemini 2.5 Flash** with your free API key:\n\n- **Image Generation**: Create cookie cutter designs from text descriptions (NEW!)\n- **Smart Suggestions**: AI-powered design improvement recommendations\n- **SVG Analysis**: Get optimization recommendations for complex paths\n- **Design Variations**: Generate creative alternatives from descriptions\n\n**[📖 How to set up AI features](GEMINI_API_SETUP.md)**\n**[🔧 Technical Documentation](GEMINI_API_TECHNICAL.md)** (for developers)\n\n⚠️ **Security Note:** This app uses client-side API calls for simplicity. For production use, implement a backend proxy to protect your API key. See [technical docs](GEMINI_API_TECHNICAL.md#security-considerations) for details.\n\n## Technology Stack\n\n- **Frontend Framework**: Svelte 5 + TypeScript\n- **Build Tool**: Vite\n- **3D Rendering**: Three.js\n- **Image Vectorization**: imagetracer\n- **Package Manager**: pnpm\n\n## Getting Started\n\n### Prerequisites\n\n- Node.js 18+\n- pnpm (or npm/yarn)\n\n### Installation\n\n```bash\n# Install dependencies\npnpm install\n\n# Start development server\npnpm run dev\n\n# Build for production\npnpm run build\n\n# Preview production build\npnpm run preview\n```\n\nThe application will be available at `http://localhost:5173/`\n\n## Usage\n\n1. **Upload a Design**\n   - Drag and drop or click to browse\n   - Supported formats: SVG, PNG, JPG (max 10MB)\n   - Or try the test circle to get started\n\n2. **Adjust Parameters**\n   - Use the parameter panel to customize your cookie cutter\n   - See real-time 3D preview of changes\n   - Check warnings and recommendations for 3D printing\n\n3. **Export STL**\n   - Click \"Download STL File\" to export\n   - File will be in binary STL format (smaller file size)\n   - Ready for slicing and 3D printing!\n\n## 3D Printing Recommendations\n\n### Material\n- **PLA (Natural/Undyed)**: Best for cookie cutters\n- **PETG**: More durable, food-safe\n\n### Settings\n- **Layer Height**: 0.2mm (0.15mm for detailed stamps)\n- **Infill**: 20%\n- **Wall Lines**: 2-3 perimeters\n- **Orientation**: Print upside down (cutting edge facing up)\n- **Supports**: Generally not needed\n\n### Best Practices\n- Minimum wall thickness: 0.8mm (recommended 1.0mm)\n- Cutting height: 10-15mm for standard cookies\n- Taper angle: 5-10° for easy cookie removal\n- Hand wash only (no dishwasher)\n- Store in cool, dry place away from direct sunlight\n\n## Project Structure\n\n```\nsrc/\n├── lib/\n│   ├── components/\n│   │   ├── ui/\n│   │   │   ├── FileUpload.svelte\n│   │   │   ├── ParameterPanel.svelte\n│   │   │   └── PrintabilityInfo.svelte\n│   │   └── viewer/\n│   │       └── ThreeViewer.svelte\n│   ├── stores/\n│   │   └── cookieCutterStore.ts\n│   ├── types/\n│   │   └── CookieCutter.ts\n│   └── utils/\n│       ├── cookieCutterGenerator.ts\n│       ├── imageProcessor.ts\n│       └── stlExporter.ts\n├── App.svelte\n└── main.ts\n```\n\n## Future Enhancements\n\n- [ ] Advanced path editing tools\n- [ ] Multi-layer cutters\n- [ ] Custom text embossing\n- [ ] Path offsetting with Clipper.js for precise wall control\n- [ ] Web Workers for heavy computation\n- [ ] Cloud storage for user designs\n- [ ] Slicer profile export\n- [ ] Material cost estimation\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n## License\n\nMIT License - feel free to use this project for personal or commercial purposes.\n\n## Acknowledgments\n\n- Based on research into existing cookie cutter design tools\n- Inspired by CookieCAD, Cookie Design Lab, and BuildBee\n- Built with modern web technologies for optimal performance\n\n## Support\n\nFor issues or questions, please open an issue on GitHub.\n\n---\n\nMade with Svelte, Three.js, and passion for 3D printing!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frazorglyon%2Fcookie-cutter-designer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frazorglyon%2Fcookie-cutter-designer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frazorglyon%2Fcookie-cutter-designer/lists"}