Paul Graham made a good point that programming is very much like painting. You start from scratch with some vague sense of orientation, and whatever you end up with after a few iterations might not resemble even remotely what was in your mind in the first place.
Great artists steal. We can try to reverse engineer teespring.com, at the time of writing, the site look like this:
After starting a fresh system with
npm start
you can generate some test data using
grunt populateTestData
This will generate an admin user with username set to admin
and
password set to password
. It will generate a sample tshirt as well.
If we want to upload a set of artworks and give them certain tags, we
can run a grunt task called uploadImages
. It takes two
parameters: path
and tags
. For example:
grunt uploadImages --path='../mootee_pics/dog/*' --tags='dog animal'
All roads lead to Rome, the question is which one is the shortest. We wanna use the coolest and most fun technology that does the job the quickest. Sometimes, taking a free ride is not a bad idea either.
There are a great deal of stuff that we can borrow from the Spree project, from business to architectural design to API design. See their documentation
Fabric provides higher level APIs for HTML5 canvas. There is a nice series of tutorial from the original author: Introduction to Fabric.js