karanchahal / DoodleMaster
- вторник, 20 ноября 2018 г. в 00:16:05
JavaScript
"Don't code your UI, Draw it !"
The Doodle Master seeks to turn your UI mockups into real code. Currently this repository just serves to demonstrate a Proof Of Concept of Artificially Intelligent Design Tools.
The demo supports the detection of 4 classes of UI components
One can view the different doodles that this software supports for classification in the classes
directory. Note that the classifier is slightly overfit towards the text view, training again with greater regularization can help solve this problem.
This type of tool can be useful in a big organisation which adheres to a consistent design guide and has several reusable components on variety of platforms such as mobile and the web. For example a button on the Airbnb website follows the same styling across all platforms. This tool can simultaneously generate the same UI for Android and the Web.
This demo uses a simple CNN for the classification of the doodles made. The software is able to localise the UI element through a combintion of geometric techniques and simple mouse/ finger position detection. Frameworks used are:
This demo was inspired by Airbnb's work on Sketching Interfaces. This demo was made while I was a frontend developer. I was inspired to make this as I saw a lot of developers spending time on coding the UI from the mockups, this time could be better spent in coding the functionality behing the UI. Doodle master seeks to build a painless and natural way of prototyping interfaces. This tool can be used by designers and developers alike to showcase ideas quickly in the form of real code.
This project uses Python3.
weights
folder.pip3 -r requirements.txt
python3 server.py
localhost:5000
to view the Doodle Master.output
folderThis is not a prodution worthy piece of software, it is only meant for demo purposes. Please don't hesistate to contact me for more details on this project. This project sparked an interesting discussion on HackerNews on the advantages and disadvantages of "Codeless UI", one can read more about in this thread