npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

vue-styleguide-generator

v0.9.18

Published

Styleguide generator for your Vue.js components

Downloads

704

Readme

Vue js components styleguide generator 📚

dependencies status

Initially started after reading this vue.js feature request. Now only basic proof of concept is available which can load folder with .vue files, parse it and extract basic props of it.

Target is to have some tool with at least some of the React version capabilities.

Idea is to have what vue-play does but in automated way - with one task run, plus READMEs, etc.

Generate single html file containing all components listed with details and search out from your .vue project files.

Update: Now as from 0.9.11 also your .js files referenced from .vue files are supported

Questions & bugs

  • General questions please ping me on twitter @legkoletat.
  • Bugs and inconsistencies please create an issue . Please concider to adding more information on what is the codebase you're running the generator against, what errors (with code, if applicable) you got. To keep issues list clean and relevant issues with no feedback/details/activity will be closed within 3 days.

1. Examples

Running on large components collections

Output UI demo

resulting output

2. Setup

  1. npm install vue-styleguide-generator --save-dev

  2. add to you package.json in script section - for example like this "build-components": "node ./node_modules/vue-styleguide-generator/" and then run npm run build-components from the root folder of the project.

🏃 You can also manually (or using Gulp/Grunt) run node ./node_modules/vue-styleguide-generator/

3. Usage

✅ Works only for Vue 2.x projects.

CLI options

| Name | Type | Description | Default | | ---: | ---- | ------ |------------ | | --src | String|Source dir, will be recursively scanned|src| | --dest | String|Destination output dir, file index.html will be placed there| components-preview| | --exclude| RegExp|File mask to exclude certain type of files|/^./| | --locale|String|Output locale language|en| | --verbose| String|Output all details while processing| false| | --all| String|Do not ignore any components| false| | --o| String|Open browser preview after generating| false|

E.g.: node ./node_modules/vue-styleguide-generator/ --src components --dest preview will read components from PROJECT_ROOT/components folder and provide a html page into PROJECT_ROOT/preview folder

To see all parser error run with DEBUG: DEBUG=app node ./node_modules/vue-styleguide-generator/

How the components are iterated

If you want to see more information about the component - add a .md file in the same directory. While retrieving the files the following assumptions are made:

  • if there are files with the same name in one folder (e.g. /scr/partials/TabBar.vue and /scr/partials/TabBar.md) it's assumed to be one component;
  • if there are only two files in the folder and one is .vue and another is .md (e.g. /scr/TabBar/codez.vue and /scr/partials/readers.md) it's assumed to be one component;
  • If there are >1 .vue files in the folder and .md file that does not have the same name as one of the .vue files - this .md file is ignored
  • Components with no props, no computed and no methods defined are considered to be a simple wrappers and not outputed

Found a bug or have a proposal - please create an issue or tweet me @legkoletat!

Todos

  • syntax highlighting
  • core: add tests
  • align parsing and display with vue-js-component-style-guide
  • core: move the demo-page to use Vue so that components can be generated from its declaration
  • ui: output extra component parameters (computable, data)
  • various use cases testing, added vuikit and Keen-UI links

Contributions are welcome 👍!

Especially on following:

Bugs and problems

  • window object may not be patched fully so some component's code execution may fail

  • 'vue-template-compiler' must be the same as the version of 'vue' you're using in your codebase. Now set to 2.1.10. may have to manually put to other version that's used in your project.'

License

MIT