Skip to content

Boilerplate for small JavaScript utility library (like lodash) with TypeScript and Microbundle

License

Notifications You must be signed in to change notification settings

nsisodiya/my-ts-mathlib

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

my-ts-mathlib

This is a boilerplate for small JavaScript utility library (like lodash) with typescript and microbundle. example folder has various demo.

Tasks

Src

  • Basic Code in src folder

Publish

  • publish over npm
  • Type definition should be included in the project dist.
  • src, example and other folder should not be part of npm package.

UMD

  • UMD build with browser with direct script tag is working.

Browser env with Parcel + TypeScript

  • import { calRectangleArea } from 'my-ts-mathlib' should work.
  • import calRectangleArea from 'my-ts-mathlib/es/calRectangleArea' should work.
  • Vscode should show error if we send incorrect data to function.
  • npm run start should fail on providing incorrect type.
  • npm run build should fail on providing incorrect type.
  • calCircleArea should not be included in bundle

Browser env with CRA + TypeScript

  • import { calRectangleArea } from 'my-ts-mathlib' should work.
  • import calRectangleArea from 'my-ts-mathlib/es/calRectangleArea' should work.
  • Vscode should show error if we send incorrect data to function.
  • npm run start should fail on providing incorrect type.
  • npm run build should fail on providing incorrect type.
  • calCircleArea should not be included in bundle

ES Module

  • working demo for Script type="module"
  • import { calSquareArea } from './node_modules/my-ts-mathlib/dist/index.module.js'; should be working
  • import calSquareArea from './node_modules/my-ts-mathlib/dist/es/calSquareArea.js'; should be working

CommonJS - Node

  • var { calRectangleArea } = require('my-ts-mathlib') should work
  • var calRectangleArea = require('my-ts-mathlib/es/calRectangleArea') should work

Node - TypeScript

  • import { calRectangleArea } from 'my-ts-mathlib' should work.
  • import calRectangleArea from 'my-ts-mathlib/es/calRectangleArea' should work.
  • Vscode should show error if we send incorrect data to function.
  • npm run start should fail on providing incorrect type.

CodeSandbox Demo

  • use the package it in code-sandbox

CRA TypeScript App

  • package should work in CRA TypeScript App

Test Cases

  • 100% CodeCoverage
  • CircleCI build should run test cases.

Pull Request

  • When somebody generate pull request, pull request should show test results.

Documentation over gh-pages

  • Auto generate documentation like lodash.

About

Boilerplate for small JavaScript utility library (like lodash) with TypeScript and Microbundle

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published