31 Commits
Author SHA1 Message Date
Tautvydas Derzinskas 96300510b4 fix(i18n): require each locale's plural forms in i18n:check
Lithuanian lacked _few forms, so counts like 2 fell back to English.
Add them, fix _other wording for 10+, and update stale docs and comments.
2026-10-20 07:57:22 +02:00
Tautvydas Derzinskas 10451a9f11 feat(i18n): add a language by dropping in its locale file
Languages come from the locale files, named in themselves via Intl.DisplayNames, with missing keys falling back to English. The week start follows the locale, the Appearance picker switches to a Select past four languages, and docs/TRANSLATING.md plus an i18n:check script guide translators.
2026-10-20 07:25:46 +02:00
Tautvydas Derzinskas 233c794065 docs: add a setup page per provider and a comparison of all ten
Each provider gets its own page under docs/providers/ with a short description,
what it needs (sign-in, Thingport Grab, FlareSolverr) and its setup steps, with
the provider's icon as an accent. PROVIDER_SETUP.md becomes the overview, with a
dependency and feature table. MakerWorld, Printables and Thingiverse come first
everywhere.
2026-10-20 05:57:23 +02:00
Tautvydas Derzinskas f7dda0a211 feat: prioritize Thingport Grab in import guidance 2026-10-19 21:22:10 +02:00
Tautvydas Derzinskas 8f3fc3d6e6 feat: add bookmarklet import 2026-10-19 21:16:30 +02:00
Tautvydas Derzinskas a7a91902a0 feat: add MyMiniFactory as a provider
Import, collection import and synced collections from MyMiniFactory, alongside MakerWorld,
Printables and Thingiverse.

- Backend: API v2 client with an instance-wide API key for metadata, collections and
  authors; files from MyMiniFactory's own download links (free models need no login).
  Paid models, and free ones whose files are archives, download as the user from their
  MyMiniFactory library through their session (PHPSESSID), fetching the model files
  MyMiniFactory unpacked from each archive. Paid models are left out of collection
  listings and syncs.
- One migration: MyMiniFactory category ids, username and session columns, plus a data
  migration giving existing users' starter categories the new category ids. Category
  matching now prefers the most specific site category.
- Frontend: provider everywhere the others appear (badges, Configuration and
  Administration providers, sync Browse tab, user menu, link detection, System Health,
  category ids), shared instance-key form for Thingiverse and MyMiniFactory, en and lt.
- Thingport Grab: new provider sites are allowed once from the popup (optional
  all-sites access, content script registered at runtime), so adding one never makes
  the browser disable the extension; captures the signed-in MyMiniFactory username and
  session; paid-model notice.
- Docs, website, store assets and screenshots updated.
2026-10-18 18:19:43 +02:00
Tautvydas Derzinskas cc4107694a fix: rename Thingiverse Access Token to App Token to match what it provides 2026-10-17 20:27:58 +02:00
Tautvydas Derzinskas 358dfc1a03 feat: system notifications updates, Thingport grab in System health check, node 24+ (#52)
* feat: update system notifications

* feat: add Thingport grab to system health check

* ci: upgrade to Node.js 24 and centralize version management
2026-10-17 10:44:13 +02:00
Tautvydas Derzinskas f10bd133f2 docs: update docs and site (#50)
* docs: update docs and site

* docs: image theme adaptability
2026-10-17 05:59:03 +02:00
Tautvydas Derzinskas d0a167461f feat(logo): add seasonal logo to website with glob-based loading 2026-10-14 21:45:04 +02:00
Tautvydas Derzinskas 9334438a52 feat(sync): notify on enable, change defaults to daily and designer profiles 2026-10-12 04:08:24 +02:00
Tautvydas Derzinskas e24e797999 docs: add synced collections guide and showcase 2026-10-09 07:42:42 +02:00
Tautvydas Derzinskas ee359ef53a fix(site): add sitemap.xml alias for search engines
Search engines look for sitemap.xml by default, but @astrojs/sitemap
only generates sitemap-index.xml. Add a build hook to copy the index
file so search engines can find it.
2026-10-08 19:24:12 +02:00
Tautvydas Derzinskas 9df01d0ed5 docs: update docs, screenshots & site 2026-10-08 19:20:54 +02:00
Tautvydas Derzinskas 179ce389b6 docs: explain existing library import pathways 2026-10-03 19:34:41 +01:00
Tautvydas Derzinskas 58001edd40 docs: improve feature descriptions 2026-10-01 09:33:46 +02:00
Tautvydas Derzinskas 2380c566e5 feat(extension): add normalized download for MakerWorld 2026-09-30 19:33:31 +02:00
Tautvydas Derzinskas 3678ed18aa refactor: rename term sanitize to normalize 2026-09-30 18:57:06 +02:00
Tautvydas Derzinskas fafb58093a feat(web): generate favicon and manifest from SVG 2026-09-30 15:06:50 +02:00
Tautvydas Derzinskas 311736fc32 docs: update feature descriptions 2026-09-30 08:35:15 +02:00
Tautvydas Derzinskas dae33246aa chore: deal with formatting by adding prettier + reformat 2026-09-28 22:50:39 +02:00
Tautvydas Derzinskas e111dc27d7 chore: update licence and perform comment clean up 2026-09-28 22:34:47 +02:00
Tautvydas Derzinskas 950ba3f375 docs: update quick install docs 2026-09-28 16:37:17 +02:00
Tautvydas Derzinskas 39a322d07f docs: add quick install info 2026-09-28 16:25:23 +02:00
Tautvydas Derzinskas e6abdbf2e1 docs: update main url to new domain 2026-09-28 15:46:13 +02:00
Tautvydas Derzinskas a48b0fcdc4 refactor(web): update grab policy links 2026-09-27 10:01:52 +02:00
Tautvydas Derzinskas 72e7aeb884 docs(privacy): add privacy info 2026-09-27 09:56:50 +02:00
Tautvydas Derzinskas 80c79f624f refactor: major overhaul related to browser extension 2026-09-27 09:38:05 +02:00
Tautvydas Derzinskas 057fbf06d3 docs: update web og and wiki 2026-09-25 15:08:02 +02:00
Tautvydas Derzinskas e5eb3f9818 fix(web): add google verification tag 2026-09-23 23:55:12 +02:00
Tautvydas Derzinskas 4ceca6d6dc feat(web): add doc/intro web site 2026-09-23 23:28:26 +02:00