HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
fabricjs
fabric.js
TypeScript2020–2024
fabricjs / fabric.js

fabric.js

Javascript Canvas Library, SVG-to-Canvas (& canvas-to-SVG) Parser

4Distinct people
4Mentions
0Explicit recommenders
31.6KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Javascript Canvas Library, SVG-to-Canvas (& canvas-to-SVG) Parser

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 3:56:07 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year4 dated mentions

Observed mentions: 2020-03-20 20:57:02 UTC to 2024-07-06 06:46:14 UTC.

0122020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments20202021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments20222023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2024

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC101
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC000
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC101
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC000
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC202

What Hacker News says

4 sources
I have the Brother P-Touch CUBE PT-P300BT and “pwned” it (not really) some time ago. Using this code as a starting point [1], I set it up with a FastAPI backend serving an HTML+JS frontend on a Raspberry Pi Zero 2 W. I connect to it using a browser, design the label, and it prints via Bluetooth. One of the first options I added to the interface is the “no feed” checkbox, which I use when I know I’ll print more than one label in sequence before cutting. My idea is to add another endpoint to the API so that using Whisper or Siri, I can say, “Print Eggs and today’s date” or “Print Coffee in medium size.” I use something similar with an Alfred workflow, but voice commands would be nice in the kitchen. I hate when someone talks about a project I’m interested in but doesn’t share any code. However, the entire thing is so ugly that I’ll never pe
Read the rest
rmit any other human being to see it. I’ll incorporate a Dead Man’s switch to delete everything or burn the Raspberry Pi, if needed. Anyway, it’s all very simple once you realize that Fabric.js [2] handles 80% of the interface and functionalities on the frontend. Probably with Aider [3] and Claude Sonnet 3.5, you can make it during breakfast (or 7 years: I’m a dev, so I’m VERY bad at time estimations). [1] https://gist.github.com/vsigler/98eafaf8cdf2374669e590328164... [2] https://github.com/fabricjs/fabric.js/ [3] https://github.com/paul-gauthier/aider
In Pwning a Brother labelmaker, for fun and interop
I had to chuckle as I read the post. I, too, suffer from occasional bouts of jealousy when I see "competitor" JS canvas libraries get some sunshine and appreciation in various venues for features that I think (in my own very opinionated opinion, of course) my library does better[1]. But this state of affairs is, as other commenters have pointed out, entirely my fault. For a library or product to gain traction in the target market, it needs three things: easy access, awareness of its existence, and good support. For a library like mine, this boils down to the following: + Easy access - it's my responsibility to make the library easy for other developers to find (GitHub, website), add to their projects (npm/yarn, compatibility with bundlers, etc), use in their code (well documented API, TS support, etc), and cause them minimal problems with
Read the rest
in the wider project (plays nicely with frameworks, doesn't destroy page efficiency, doesn't break the toolchain, etc). This is the work I enjoy and spend a lot of non-dev time doing. + Awareness of its existence - which is marketing. Either I have to spend a lot of time telling people about my library and (more importantly) telling them how my library solves their problems. Or I have to find "champions" - people who use, and like using, the library so much that they will go out and promote it for me. Or I can spend money on getting proper marketing help, adverts, etc ... which is not going to happen. + Good support - beyond documentation, I need to be willing to either spend time helping people resolve issues and misunderstandings they have with the library, or I need to build a community of people happy to help me do that work. Sadly I am not the sort of person who enjoys the high level of social engagement that's needed to build that community. So, yeah ... it is my fault that the competitors get the glory. But then again they deserve their place in the sunshine because they've done the work I've not been willing to engage with. As for the occasional bouts of jealousy? They remind me that I'm still human, that I still care. Which is a Good Thing! [1] I keep track of what the competitors are up to mainly by following their repos on GitHub. Most of the issues people raise seem to be about TypeScript errors and breaking updates. But sometimes I'll see someone ask for a feature they want added to a library, and I'll find myself thinking: "my library does that already!" and I'll get a little shiver of jealousy. Like this request for a "Transformation box for texts" made in the Fabric.js repo - https://github.com/fabricjs/fabric.js/issues/8195
In My Lack of Attention

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.