Skip to content
⚡A zero-config bundler for JavaScript applications.
Branch: master
Clone or download
egoist chore(release): publish
 - poi@12.6.5
Latest commit 48a9e14 Apr 17, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
core chore(release): publish Apr 16, 2019
create-poi-app chore(release): publish Jan 9, 2019
other-packages chore(release): publish Jan 11, 2019
plugins chore(release): publish Apr 8, 2019
tasks feat: support --plugin flag Dec 7, 2018
test/kitchensink feat(karma): simplify CLI usage Jan 9, 2019
.editorconfig init Nov 28, 2018
.gitattributes init Nov 28, 2018
.prettierrc init Nov 28, 2018
LICENSE init Nov 28, 2018 docs: add link to examples Dec 19, 2018
circle.yml test: fix node version in circleci Mar 12, 2019
lerna.json chore: configure lerna in ci Dec 19, 2018
yarn.lock Revert "docs(astroturf): tweaks for #551" Apr 3, 2019

npm version build status npm downloads poi twitter

Poi is a bundler built on the top of webpack, trying to make developing and bundling apps with webpack as easy as possible.

The Poi project is supported by our Backers and funded through Patreon.


  • 📦 Out of box support for JS, CSS, File assets and more.
  • ⚛ Framework-agnostic but also support JSX, Vue and more with no configs.
  • 🔌 Great extensibility.
  • 🐙 Fit most web apps, npm libs.
  • 🚨 Great development experience.

Quick Overview

Before we get started, ensure that you have installed Node.js (>=8) and Yarn (or npm) on your machine.

Get Started Immediately

yarn global add create-poi-app
create-poi-app my-app

cd my-app
npm run dev

Then open http://localhost:4000 to see your app.
When you’re ready to deploy to production, create a minified bundle with npm run build.

Get Started Manually

Inside an empty project, run yarn init or npm init to create a package.json and install Poi:

yarn init
yarn add poi --dev

Now all you need is to create an entry file, like if you're building a website, just create an index.js:

const el = document.createElement('div')
el.textContent = 'Hello Poi!'


Now if you run:

yarn poi --serve

You will get a URL like http://localhost:4000 which you can open to preview the app.

Next let's start adding some dependencies like a CSS file style.module.css:

.title {
  color: pink;
import styles from './style.module.css'

const el = document.createElement('div')
el.className = styles.title
el.textContent = 'Hello Poi!'


Save it and the browser will automatically reload to apply the changes!



You can improve it by sending pull requests to this repository.

Check out this repository for more examples.


All feedback and suggestions are welcome!


Poi v12 won't exist without the inspirations from following projects:

  • Webpack
  • Parcel 2
  • Poi itself
  • Vue CLI 3
  • Create React App



You can’t perform that action at this time.