12 KiB
MakerStash - Complete Documentation Index
📚 Quick Navigation
Getting Started
- IMPLEMENTATION_GUIDE.md - Start here! Quick setup and configuration
- SUMMARY.md - High-level overview of all changes
Feature Documentation
- FEATURES_NEW.md - Detailed documentation for each feature (600+ lines)
- API_EXAMPLES.md - Curl examples for every API endpoint
Original Documentation
- README.md - Project overview and setup
- FEATURES_IMPLEMENTED.md - Previously implemented features
Branding
- BRANDING.md - Brand guidelines and color scheme
🎯 5 New Features Overview
1. 💰 Filament/Resin Cost Calculator
What it does: Estimates printing costs based on file size and material type
Key Files:
- Backend:
server/services/costCalculator.js - API:
GET /api/models/:id/cost,POST /api/models/batch/cost - Frontend: Cost calculator modal in
index.html
Learn More: See FEATURES_NEW.md or API_EXAMPLES.md
2. 🔍 Full-Text Search
What it does: Search across all metadata fields (name, description, creator, notes, source, license)
Key Files:
- Backend: Enhanced
server/routes/models.js- GET /api/models - Frontend: Search bar + license filter in sidebar
Learn More: See FEATURES_NEW.md or API_EXAMPLES.md
3. 📜 License Management
What it does: Track and filter models by license type (MIT, Creative Commons, GPL, Apache, CC0, etc.)
Key Files:
- Database: New
licensecolumn in models table - Backend: License field in upload/update endpoints
- Frontend: License filter in sidebar, license display in details
Learn More: See FEATURES_NEW.md or API_EXAMPLES.md
4. 🖨️ Bambu Printer Integration
What it does: Connect to Bambu Lab printers and monitor/control printing
Key Files:
- Backend:
server/services/bambuPrinterAPI.js,server/routes/printers.js - Database: New
printer_settingstable - Frontend: Printer settings modal
Learn More: See FEATURES_NEW.md or API_EXAMPLES.md
5. 🌙 Dark/Light Theme Toggle
What it does: Switch between light and dark themes with user preference persistence
Key Files:
- Backend: Theme preference in users table,
/api/auth/me/theme - Frontend:
client/theme.js, CSS variables instyles.css - Toggle button in navbar
Learn More: See FEATURES_NEW.md or API_EXAMPLES.md
📊 Implementation Statistics
| Category | Count | Details |
|---|---|---|
| New Endpoints | 14 | 3 cost, 9 printer, 2 theme |
| New Services | 2 | costCalculator.js, bambuPrinterAPI.js |
| New Routes | 1 | printers.js |
| DB Columns Added | 2 | license, theme |
| DB Tables Added | 1 | printer_settings |
| New Frontend Files | 2 | theme.js, features.js |
| Files Modified | 6 | database.js, index.js, routes, HTML, CSS |
| Documentation Pages | 6 | This guide + 5 others |
🚀 Quick Start
For Users
- Read IMPLEMENTATION_GUIDE.md - 5 minute overview
- Try each feature:
- Switch theme with moon icon
- Search models with full-text
- Filter by license type
- Add Bambu printer (if you have one)
- Calculate filament costs
For Developers
- Read SUMMARY.md - What was implemented
- Review API_EXAMPLES.md - See all endpoints
- Study FEATURES_NEW.md - Deep dive documentation
- Check code:
server/services/- Backend logicserver/routes/printers.js- Printer endpointsclient/theme.js- Frontend theme systemclient/features.js- Feature implementations
For Integrators
- Review API_EXAMPLES.md - Copy/paste API calls
- Check FEATURES_NEW.md - Detailed specs
- Set up local development:
npm install npm run dev - Test endpoints with provided curl examples
📖 Documentation by Topic
Installation & Setup
Configuration
API Reference
- API_EXAMPLES.md - All endpoints with examples
- FEATURES_NEW.md - Backend API - Detailed specs
Frontend Usage
- FEATURES_NEW.md - Frontend - Each feature's UI
- IMPLEMENTATION_GUIDE.md - Usage
Database Schema
- FEATURES_NEW.md - Database - Table definitions
- IMPLEMENTATION_GUIDE.md - Migrations
Troubleshooting
Examples
- API_EXAMPLES.md - 50+ curl examples
- FEATURES_NEW.md - Usage Examples
🎓 Learning Paths
Path 1: Just Want to Use It (30 minutes)
- Read: IMPLEMENTATION_GUIDE.md
- Try: Each feature in the UI
- Refer: Back to guide for troubleshooting
Path 2: Want to Integrate (1-2 hours)
- Read: API_EXAMPLES.md - See what's available
- Read: FEATURES_NEW.md - Understand specs
- Test: Curl examples against your instance
- Code: Build your integration
Path 3: Want to Understand Architecture (2-4 hours)
- Read: SUMMARY.md - Overview
- Read: FEATURES_NEW.md - Full details
- Study: Source code in
server/andclient/ - Review: Database schema changes
- Experiment: Modify and extend features
Path 4: Want to Extend (4+ hours)
- Complete Path 3 first
- Review code architecture in key files
- Study service implementations
- Plan your enhancement
- Follow existing patterns
- Test thoroughly
🔧 Common Tasks
Add a New Material Type
- Edit:
server/services/costCalculator.js - Add to
DEFAULT_COSTSobject - Restart server
- Update frontend dropdown in
index.htmlSee: FEATURES_NEW.md#material-costs
Change Theme Colors
- Edit:
client/theme.js-themesobject - Update CSS variable values
- Or edit:
client/styles.css-:rootsection See: FEATURES_NEW.md#css-variables
Add New License Type
- Edit:
client/index.html- License filter dropdown - Add option tag
- Will be searchable immediately See: FEATURES_NEW.md#implementation
Connect Another Printer Type
- Create: New service like
server/services/[printerType]API.js - Implement: Same interface as
bambuPrinterAPI.js - Register: New routes in
server/routes/printers.js - Add UI: Printer settings modal in
index.html
Modify Search Behavior
- Edit:
server/routes/models.js- GET / endpoint - Update query building logic
- Add/remove searchable fields
- Test with examples
📝 File Organization
manyfold-node/
├── Documentation (6 files)
│ ├── README.md ← Original project readme
│ ├── FEATURES_IMPLEMENTED.md ← Previous features
│ ├── FEATURES_NEW.md ← New features detailed docs
│ ├── IMPLEMENTATION_GUIDE.md ← Quick start guide
│ ├── API_EXAMPLES.md ← API reference examples
│ ├── SUMMARY.md ← Implementation summary
│ └── BRANDING.md ← Brand guidelines
│
├── Server (Backend)
│ ├── server/
│ │ ├── index.js ← MODIFIED: Added printers route
│ │ ├── database.js ← MODIFIED: Added columns/tables
│ │ ├── services/
│ │ │ ├── costCalculator.js ← NEW
│ │ │ ├── bambuPrinterAPI.js← NEW
│ │ │ └── thumbnailGenerator.js
│ │ ├── routes/
│ │ │ ├── auth.js ← MODIFIED: Added theme endpoint
│ │ │ ├── models.js ← MODIFIED: Added cost + search
│ │ │ ├── printers.js ← NEW
│ │ │ ├── collections.js
│ │ │ ├── tags.js
│ │ │ ├── bulk.js
│ │ │ ├── printQueue.js
│ │ │ ├── export.js
│ │ │ └── import.js
│ │ └── middleware/
│ │ └── auth.js
│ │
│ └── package.json
│
├── Client (Frontend)
│ └── client/
│ ├── index.html ← MODIFIED: Added modals, buttons
│ ├── styles.css ← MODIFIED: Added CSS variables, styles
│ ├── app.js ← Existing
│ ├── app-features.js ← Existing
│ ├── viewer3d.js ← Existing
│ ├── theme.js ← NEW
│ └── features.js ← NEW
│
└── Uploads
└── uploads/
├── files/ ← Model files
└── images/ ← Thumbnails
🧪 Testing Checklist
- Cost Calculator works with different materials
- Search finds models across all fields
- License filter works and shows licenses
- Can add Bambu printer (need token)
- Can switch theme and it persists
- Dark theme is readable
- Light theme is readable
- All existing features still work
- No console errors
- Database migrations ran successfully
📞 Need Help?
-
Something not working?
- Check IMPLEMENTATION_GUIDE.md - Troubleshooting
- Check FEATURES_NEW.md - Troubleshooting
- Check browser console (F12)
- Check server logs
-
Want to use an API?
- Go to API_EXAMPLES.md
- Find the endpoint
- Copy the curl example
- Customize for your use
-
Want to understand something?
- Check the index below for the right document
- Search within the document
- Review the code
- Check comments in source
-
Want to extend?
- Review FEATURES_NEW.md - Future Enhancements
- Follow existing code patterns
- Test thoroughly
- Update documentation
📚 Complete Document Index
| Document | Purpose | Length | Audience |
|---|---|---|---|
| README.md | Project overview | Medium | Everyone |
| IMPLEMENTATION_GUIDE.md | Quick start guide | Medium | Users & Developers |
| SUMMARY.md | What was implemented | Long | Project managers |
| FEATURES_NEW.md | Complete feature docs | Very Long (600+) | Developers |
| API_EXAMPLES.md | API reference | Long (500+) | Integrators |
| FEATURES_IMPLEMENTED.md | Previous features | Medium | Reference |
| BRANDING.md | Brand guidelines | Short | Designers |
✅ Verification Checklist
- All 5 features implemented
- All APIs working
- Database migrations created
- Frontend UI complete
- Documentation complete (6 docs)
- Code comments added
- Examples provided
- No breaking changes
- Error handling included
- Security verified
- Production ready
📈 Next Steps
- Read IMPLEMENTATION_GUIDE.md - 10 minutes
- Test each feature in the UI - 10 minutes
- Review API_EXAMPLES.md if integrating - 10 minutes
- Read FEATURES_NEW.md for deep dive - 30 minutes
- Explore the code - as needed
Status: ✅ Complete & Ready to Use!
Last Updated: January 12, 2026
Quick Links: