The Open Filament Database, facilitated by SimplyPrint.
The beautiful thing about the database is that it's open source so anyone can contribute, whether you're a hobbyist, print farm or brand.
The steps to contribute to the database are simple but may get technical at times depending on how you want to do it, don't worry if you don't all understand terms, we'll guide you through it.
- Create a GitHub account
- Create a copy of the database (called "forking" this repository)
- Install a few small applications (Git, Python, Node.js)
- Download your copy of the database (called "cloning" it).
- Use either our simple web editor or use the manual method
- Check if your data has errors
- Upload your data and make what's called a pull request
If you don’t have one already, create a free GitHub account.
Click the Fork button in the top right of this page, a guide is available here if needed
If you don't have have Git, Python and Nodejs/NPM installed follow this guide.
Download the database using either this guide or by just using the command below, with YOUR_USERNAME
replaced ofc!
git clone https://github.com/YOUR_USERNAME/open-filament-database.git
cd open-filament-database
Either use the web editor by simply running these commands or following the guide, if you want to do it manually you can use this one
cd webui
npm install
npm run dev
and access it in your browser at http://localhost:5173
Once you've finished modifying the database you can use these commands or this guide to make sure your data is correct, fix any errors that pop up
python data_validator.py --folder-names # Validates folder names.
python data_validator.py --json-files # Validates json files.
python data_validator.py --store-ids # Validates store ids.
Start by running this command to add all your changes up
git add .
Then run this command but replace COMMIT_MESSAGE
with a title of what you did, e.g. "Added filament A to brand B"
git commit -m "COMMIT_MESSAGE"
When that's done you can run this command to upload your stuff
git push -u origin main
Afterwards you can make a pull request using this guide