Code Monkey home page Code Monkey logo

html-sketchapp Build Status npm version MIT license npm downloads

HTML to Sketch export solution.

html-sketchapp

What it can do?

html-sketchapp turns HTML nodes into Sketch layers or symbols. Additionally, it allows to export shared text styles and document colors.

Why?

The motivation behind this project was ability to easily share Front-End style guide with our Design team. Although similar project, react-sketchapp, already exists it does require you to:

  • use React,
  • build everything using generic components (<View>, <Text>, <Image>),
  • and keep your styles in JS.

We were unable to quickly work around these limitations, so we created html-sketchapp.

You can learn more about this project from:

Limitations

Comprehensive summary of what is, and what is not supported can be found here, but the TLDR is as follows:

  • pseudoelements are not supported,
  • some CSS properties (e.g. overflow) are not supported or not fully supported,
  • not all types of images are supported (animated gifs, webp),
  • resizing information is not generated,
  • all fonts have to be locally installed.

The good news is that all of those are fixable and that we welcome pull requests ❤️

How do I run it?

Install html-sketchapp

You can get stable version of html-sketchapp from NPM.

npm i @brainly/html-sketchapp

Create .asketch files

html2asketch is a library that you can use to create a script that extracts specific parts of your website and saves them as layers, shared text styles, document colors and symbols. Your script then can be run in a regular or a headless browser.

There is no one right way of using html2asketch, but you can start by checking out the "Usage Examples" section of the wiki or the two example projects that we provide:

  • html-sketchapp-example - minimal script that takes an URL and produces a page.asketch.json file
  • html-sketchapp-style-guide - script that takes parts of the Brainly style-guide and exports them as Sketch symbols, shared text styles and document colors. This script produces document.asketch.json and page.asketch.json.

If you are wondering what are, and why we need .asketch files, plese see our wiki.

Import .asketch files to Sketch

All .asketch.json files should be loaded to Sketch via the asketch2sketch.sketchplugin plugin.

Installing Sketch plugin

You can download ready to use Sketch plugin from the "Releases" section, or build it yourself from the sources:

npm i # install dependencies
npm run build # build the plugin

Projects using html-sketchapp

  • html-sketchapp-cli - "Quickly generate Sketch libraries from HTML documents and living style guides."
  • story2sketch - "Convert Storybook stories into Sketch symbols."
  • UIengine - "Workbench for UI-driven development."
  • Alva - "Alva is a radically new design tool that enables cross-functional teams to design digital products"
  • FAST-DNA - "A set of tooling, resources, and components used to accelerate building Web sites and applications."
  • HTML to Sketch - "You can draw a website in an open sketch window."

Standing on the shoulders of giants ❤️

This project uses huge bits and pieces from the fantastic react-sketchapp and wouldn't be possible without skpm and information from Sketch-Headers.

html-sketchapp's Projects

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.