# egoist/poi

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/egoist-poi).**

5,175 stars · 254 forks · JavaScript · MIT · archived

## Links

- GitHub: https://github.com/egoist/poi
- Homepage: https://poi.js.org
- awesome-repositories: https://awesome-repositories.com/repository/egoist-poi.md

## Description

Poi is an extensible, zero-configuration module bundler and asset compiler for modern frontend development. It functions as a build system that transforms JavaScript, JSX, and CSS into browser-compatible files and combines them into single packages for web delivery.

The tool is built around a plugin architecture that allows for custom extensions to the build pipeline and the addition of specialized asset processing logic. It employs a convention-based mapping system to automate build settings and target outputs without the need for manual configuration files.

The project covers a broad range of bundling capabilities, including frontend framework compilation, automatic asset resolution, and the processing of static files. It utilizes abstract syntax tree transformations to enable programmatic modification and framework-specific compilation of source code.

## Tags

### Web Development

- [JavaScript Bundlers](https://awesome-repositories.com/f/web-development/javascript-bundlers.md) — Compiles, transpiles, and packages JavaScript modules and assets into a single file for web deployment.
- [Frontend Asset Compilation](https://awesome-repositories.com/f/web-development/frontend-asset-compilation.md) — Transforms modern JavaScript, JSX, and CSS into browser-ready JavaScript and CSS files.
- [Frontend Framework Transpilation](https://awesome-repositories.com/f/web-development/frontend-frameworks/multi-framework-compilation/frontend-framework-transpilation.md) — Transforms JSX and Vue syntax into standard JavaScript to enable modern framework development. ([source](https://github.com/egoist/poi/blob/master/README.md))

### Development Tools & Productivity

- [Build Pipeline Customizers](https://awesome-repositories.com/f/development-tools-productivity/build-pipeline-customizers.md) — Provides interfaces for modifying the build pipeline via specialized plugins to support unique asset types.
- [Build Pipeline Plugins](https://awesome-repositories.com/f/development-tools-productivity/build-pipeline-plugins.md) — Provides a modular hook system that allows custom extensions to intercept and transform assets during the build lifecycle.
- [Asset Bundlers](https://awesome-repositories.com/f/development-tools-productivity/build-tooling/build-orchestration-logic/build-orchestration-configuration/build-automation-systems/build-tools/module-bundlers/asset-bundlers.md) — Functions as an asset bundler that selectively compiles and packages modules to minimize final project payload size.
- [Asset Bundling](https://awesome-repositories.com/f/development-tools-productivity/build-tooling/build-performance-optimization/build-optimization-tools/bundle-optimizers/asset-bundling.md) — Bundles various asset types and frameworks into optimized production packages using automatic configurations. ([source](https://github.com/egoist/poi/blob/master/lerna.json))
- [Zero-Config Tooling](https://awesome-repositories.com/f/development-tools-productivity/development-workflow-configurations/zero-config-tooling.md) — Uses a predefined set of project structure rules to determine build settings and target outputs without manual configuration files.
- [Zero-Configuration Build Tools](https://awesome-repositories.com/f/development-tools-productivity/zero-configuration-build-tools.md) — Implements a build system that automates the bundling process without requiring manual configuration files.
- [Build-Time Asset Processing](https://awesome-repositories.com/f/development-tools-productivity/build-time-asset-processing.md) — Processes JavaScript, CSS, and static files into final production assets during the build phase. ([source](https://github.com/egoist/poi/blob/master/README.md))

### DevOps & Infrastructure

- [Build System Extensibility](https://awesome-repositories.com/f/devops-infrastructure/release-automation/plugin-extensibility/plugin-extensible-runtimes/build-system-extensibility.md) — Offers a plugin system to integrate custom extensions that modify the build process or add support for new asset types. ([source](https://github.com/egoist/poi/blob/master/README.md))

### Programming Languages & Runtimes

- [JavaScript Module Bundlers](https://awesome-repositories.com/f/programming-languages-runtimes/javascript-module-bundlers.md) — Resolves and combines multiple JavaScript files and assets into a single package for web browser execution.
- [JavaScript Transpilation](https://awesome-repositories.com/f/programming-languages-runtimes/language-features-paradigms/javascript-language-features/transpilers/javascript-transpilation.md) — Converts JSX and modern JavaScript syntax into browser-compatible versions for wide compatibility.

### Software Engineering & Architecture

- [Asset Dependency Resolution](https://awesome-repositories.com/f/software-engineering-architecture/dependency-graph-resolution/concurrent-dependency-resolution/asset-dependency-resolution.md) — Automatically identifies and bundles static files and dependencies by scanning imports without manual path configuration.
- [Syntax Tree Transformers](https://awesome-repositories.com/f/software-engineering-architecture/trees/syntax-tree-construction/syntax-tree-transformers.md) — Implements syntax tree transformations to enable programmatic modification and framework-specific compilation of source code.

### Part of an Awesome List

- [Web Frameworks](https://awesome-repositories.com/f/awesome-lists/devtools/web-frameworks.md) — Provides support for the zero-config web bundler.
