smoovy
Synopsis
smoovy is a collection of small, useful and well tested js packages preventing copy & paste. The goal is to use as few dependencies as possible to guarantee a small final bundle. Also to keep the code clean, small and simple.
Main packages
Name | Version | Size |
---|---|---|
@smoovy/scroller | |
|
@smoovy/observer | |
|
@smoovy/parallax | |
|
@smoovy/tween | |
|
@smoovy/ticker | |
|
@smoovy/event | |
|
@smoovy/router | |
|
@smoovy/utils | |
Getting started
Choose a package you want to install. It's as easy as that:
npm install --save @smoovy/<package>
Roadmap 2021
-
📦 Create@smoovy/timeline
(timeline for tweens) -
📦 Create@smoovy/text-split
(easy text splitting) -
💡 Improve tween demos
Workflow
This is a simple monorepo consisting of some of the packages mentioned above.
Every command related to a package will be executed from the root directory via
scripty
Building a package
To ensure the best result, packages are created with rollup. The following formats are supported: cjs
, umd
and esm
.
npm run build:package <name>
Testing a package
Packages will be tested with jest
and puppeteer
. The sources files will be used for testing.
npm run test:package <name>
Some packages are still missing tests. These will be excluded from the code coverage completely.
Serving a package demo
The demo will be served and bundled with parcel
. Every demo must have a index.html
file.
The source files will be used for the demo.
npm run serve:package <name> [<demo>, default]
Linting a package
The TSLinter
is used for linting packages. Everything except the src
folder will be ignored.
npm run lint:package <name>
License
See the LICENSE file for license rights and limitations (MIT).