1. A computer-implemented method for dynamically producing source code for a software application from a set of wireframe images, comprising: defining a plurality of shapes common to wireframe images in a library of models; defining a plurality of wireframe design rules in a knowledge base; receiving, from an end user's device, a set of wireframe images depicting the software application to be fabricated and a set of user-configured options; extracting the plurality of features contained in each wireframe image in the set; wherein extracting the plurality of features contained in each wireframe in the set, comprises: processing each wireframe image in the set of wireframe images through an edge detector to identify edges and form contours; computing a set of contour moments of the formed contours from each wireframe image in the set; matching the set of computed contour moments of each formed contour with those defined in the library of models to identify shape features; performing optical character recognition on each wireframe image in the set of wireframe images to identify text features; storing the identified features from each wireframe image in the set of wireframe images to a data store; formulating a collection of wireframe components from the plurality of extracted features; generating the source code for the software application from the collection of wireframe components; where in generating comprises: selecting a set of source templates based on the user-configured option that specifies the target platform; associating each wireframe component from the collection of wireframe components to its corresponding source template; producing source code using a template engine to process each source template associated with a wireframe component; and providing to the end user's device, an archive file containing the source code for the software application.