3dfilamentprofiles.com Integration - Import filament data #7

Closed
opened 2026-01-15 01:20:43 +00:00 by tonym · 2 comments
Owner

Problem

Manually entering filament data is tedious. 3dfilamentprofiles.com has a community database with temperatures, densities, and more.

Solution

Integrate with 3dfilamentprofiles.com similar to existing SpoolmanDB integration.

Data Source

Data available at: https://github.com/jklewa/filament-profiles-data

Includes:

  • Filament profiles with temps, densities, colors
  • Brand information
  • Material types

Implementation

Similar pattern to spoolman/externaldb.py:

  • Fetch and cache filament profiles
  • Add import button in filament creation (like FilamentImportModal)
  • Auto-fill temps and density when material/vendor selected

Priority

Low - Future enhancement, do after core UX fixes

## Problem Manually entering filament data is tedious. 3dfilamentprofiles.com has a community database with temperatures, densities, and more. ## Solution Integrate with 3dfilamentprofiles.com similar to existing SpoolmanDB integration. ### Data Source Data available at: https://github.com/jklewa/filament-profiles-data Includes: - Filament profiles with temps, densities, colors - Brand information - Material types ### Implementation Similar pattern to `spoolman/externaldb.py`: - Fetch and cache filament profiles - Add import button in filament creation (like FilamentImportModal) - Auto-fill temps and density when material/vendor selected ## Priority Low - Future enhancement, do after core UX fixes
tonym closed this issue 2026-01-16 03:41:13 +00:00
tonym reopened this issue 2026-01-16 03:42:22 +00:00
Author
Owner

Partial Implementation Status:

Backend code exists in spoolman/externaldb.py and frontend tab in filament import modal, but we're only fetching sample-filaments.json which contains ~3 test filaments.

Problem: The jklewa/filament-profiles-data GitHub repo only provides sample data. The full dataset requires:

  1. Running their parser.py script against 3dfilamentprofiles.com
  2. Or directly querying their website API

Options to complete:

  1. Host our own copy of the full dataset (generated from their parser)
  2. Query 3dfilamentprofiles.com directly (may need to figure out their API)
  3. Leave as sample-only and document the limitation

See: https://github.com/jklewa/filament-profiles-data

**Partial Implementation Status:** Backend code exists in `spoolman/externaldb.py` and frontend tab in filament import modal, but we're only fetching `sample-filaments.json` which contains ~3 test filaments. **Problem:** The jklewa/filament-profiles-data GitHub repo only provides sample data. The full dataset requires: 1. Running their parser.py script against 3dfilamentprofiles.com 2. Or directly querying their website API **Options to complete:** 1. Host our own copy of the full dataset (generated from their parser) 2. Query 3dfilamentprofiles.com directly (may need to figure out their API) 3. Leave as sample-only and document the limitation See: https://github.com/jklewa/filament-profiles-data
Author
Owner

Resolution: Code Removed

Why removed:

  1. 3dfilamentprofiles.com has Vercel bot protection that returns 429 (rate limited) for all automated requests
  2. The jklewa/filament-profiles-data GitHub repo only provides sample-filaments.json with ~3 test filaments
  3. SpoolmanDB (which is working) already has 6,957 filaments from major brands including:
    • Polymaker (1,201), Formfutura (1,056), eSun (315), Bambu Lab (269), ELEGOO (97), Prusament (102), Sunlu (85), etc.

Code removed in commit:

  • spoolman/externaldb.py - Removed ExternalSource enum, Filament3DFP model, _transform_3dfp_to_external(), 3dfp sync code
  • client/src/utils/queryExternalDB.ts - Removed ExternalSource enum and source field
  • client/src/components/filamentImportModal.tsx - Removed source filter tabs

Closing as won't fix - SpoolmanDB is comprehensive enough for most users.

## Resolution: Code Removed **Why removed:** 1. 3dfilamentprofiles.com has Vercel bot protection that returns 429 (rate limited) for all automated requests 2. The jklewa/filament-profiles-data GitHub repo only provides `sample-filaments.json` with ~3 test filaments 3. SpoolmanDB (which is working) already has **6,957 filaments** from major brands including: - Polymaker (1,201), Formfutura (1,056), eSun (315), Bambu Lab (269), ELEGOO (97), Prusament (102), Sunlu (85), etc. **Code removed in commit:** - `spoolman/externaldb.py` - Removed `ExternalSource` enum, `Filament3DFP` model, `_transform_3dfp_to_external()`, 3dfp sync code - `client/src/utils/queryExternalDB.ts` - Removed `ExternalSource` enum and `source` field - `client/src/components/filamentImportModal.tsx` - Removed source filter tabs **Closing as won't fix** - SpoolmanDB is comprehensive enough for most users.
tonym closed this issue 2026-01-16 04:00:18 +00:00
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: tonym/spoolman2#7
No description provided.