marcofugaro / urca

🌳 A Yeoman generator to author JavaScript and TypeScript libraries

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

🌳 Urca generator

A Yeoman generator to author JavaScript and TypeScript libraries.

npm


Getting started

Before we begin, make sure you have the Yeoman scaffolding toolset installed (yo), since it is part of the Yeoman tool set you might have installed it before. Use npm to globally install yo and the urca generator:

npm install --global yo generator-urca

(If you have permissions problems installing a package globally, you may use sudo npm install ...)

You are now ready to create your library!

How to use

The urca generator will help you create a JavaScript or TypeScript application in your working directory. To create your library project, navigate to a new project folder and then use yo to generate your application:

yo urca

The generator will ask you a few questions and will generate it for you.

Questions the generator will ask

  • app name
  • app description
  • app keywords
  • public or private repository
  • JavaScript or TypeScript
  • add or not React to demo page
  • GitHub username
  • GitHub email
  • first and last name
  • dependencies:

Directory structure

When the installation process is over, this is the file structure that will be generated:

.
β”œβ”€β”€ demo/              # demo page
β”‚   └── index.html
β”‚   └── index.j(t)s(x)
β”‚   └── style.css
β”œβ”€β”€ dist/              # distributable version of app built using Parcel
β”œβ”€β”€ node_modules/      # npm managed libraries
β”œβ”€β”€ src/               # project source code
β”‚   └── lib/           # folder for your library
β”‚      └── hello.j(t)s
β”‚   └── index.j(t)s    # app entry point
β”œβ”€β”€ .eslintrc.js
β”œβ”€β”€ .gitignore
β”œβ”€β”€ .prettierignore
β”œβ”€β”€ .prettierrc.js
β”œβ”€β”€ .yo-rc.json
β”œβ”€β”€ LICENSE
β”œβ”€β”€ package.json
β”œβ”€β”€ README.md
β”œβ”€β”€ (tsconfig.json)
β”œβ”€β”€ yarn.lock

Features

  • Prettier to format your code
  • Eslint to lint your code
  • Parcel to automagically compile ES6
  • TypeScript
  • React to simplify the demo page development
  • Git initialization
  • README
  • MIT license

Scripts

Once you have created the structure of your new app, these are the prompt commands you can run:

  • yarn start:demo: to preview and watch for demo page changes (http://localhost:1234)
  • yarn build: to build your webapp for production in /dist

Issues & contributing

This project is still in progress. Anyway, if you open an issue (or a PR), I will be happy :)

Todo

  • Jest because testing matters
  • React
    • to lib
    • to demo page

License

MIT Β© Ilaria Venturini

About

🌳 A Yeoman generator to author JavaScript and TypeScript libraries


Languages

Language:JavaScript 87.0%Language:TypeScript 6.7%Language:EJS 4.7%Language:CSS 1.6%