PHPackages                             jacerider/neo\_build - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. jacerider/neo\_build

ActiveDrupal-module

jacerider/neo\_build
====================

Build tools including Vite and Tailwind integration.

1.0.49(2mo ago)05422proprietaryPHP

Since Aug 28Pushed 2mo ago1 watchersCompare

[ Source](https://github.com/jacerider/neo_build)[ Packagist](https://packagist.org/packages/jacerider/neo_build)[ Docs](https://github.com/jacerider/neo_build)[ RSS](/packages/jacerider-neo-build/feed)WikiDiscussions develop Synced 1mo ago

READMEChangelogDependencies (1)Versions (51)Used By (2)

CONTENTS OF THIS FILE
---------------------

[](#contents-of-this-file)

- Introduction
- Requirements
- Installation
- Usage
- Build for DEV
- Build for PROD
- Build Groups
- Configuration

INTRODUCTION
------------

[](#introduction)

[Vite](https://vitejs.dev) integration for Drupal asset libraries.

REQUIREMENTS
------------

[](#requirements)

This module requires no modules outside of Drupal core.

It's designed to work with [Vite](https://vitejs.dev) 3 or newer and [Tailwind](https://tailwindcss.com/) and [Typescript](https://www.typescriptlang.org/).

INSTALLATION
------------

[](#installation)

Install as you would normally install a contributed Drupal module. Visit  for further information.

Add to .gitignore:

```
# Neo
/neo.json
/neo.tsconfig.json

```

This module was built to be used with DDEV for local development. Add the following to .ddev/config.yaml:

```
web_extra_exposed_ports:
  - name: vite
    container_port: 5173
    http_port: 5172
    https_port: 5173

```

USAGE
-----

[](#usage)

- Enable the module.
- Run `drush neo-install` from site root.
- Run `npm install` from site root.
- In the `.libraries.yml`, for the library you would like to use assets build by Neo, add property `neo: true` and when defining assets provide their paths to entry points used in neo instead of paths to build assets. For example:

```
library-name:
+  neo: true
   js:
-    dist/script.js: {}
+    src/script.ts: {}
   css:
     component:
-      dist/style.css: {}
+      src/css/style.css: {}
   dependencies:
     - core/drupalSettings
```

- The module will dynamically rewrite assets paths to dist and include their dependencies defined in manifest.json.

BUILD FOR DEV
-------------

[](#build-for-dev)

To use hot module reload during development, run:

```
npm start
```

The server will run in non-HTTPS mode to avoid XSS issues. If the server is accessible on the localhost under default port (5173) the module will automatically start using it instead of dist assets from manifest.json as soon as you clear the cache (library definitions are cached by default).

BUILD FOR PROD
--------------

[](#build-for-prod)

To compile js and css for all scopes (only 'contrib' group), run:

```
npm run deploy
```

BUILD SCOPES
------------

[](#build-scopes)

In `.libraries.yml` there is also an option to set the build scope. The scope impacts Tailwind so that aggregated classes are only built for the build of this scope when calling `@tailwind base;` within a CSS or SCSS file. For example:

```
library-name:
  neo: {scope: 'front'}
  js:
    src/script.ts: {}
  css:
    component:
      src/css/style.css: {}
    dependencies:
      - core/drupalSettings
```

A theme should define their supported scopes in their info.yml.

```
neo: { scope: front }
```

or

```
neo: {
  scope:
    - front
    - back
}
```

If a scope is not defined, theme will act on all scopes.

COMPONENTS
----------

[](#components)

You can register new Tailwind components by defining them in your theme/module info file. For example:

```
neo:
  scope: back
  components:
    .container:
      '@apply mt-6 first:mt-0 rounded-sm border': {}
    .card:
      backgroundColor: colors.white
      borderRadius: borderRadius.lg
      padding: spacing.6
      boxShadow: boxShadow.xl
```

THEME
-----

[](#theme)

You can extend the Tailwind base configuration by defining the settings in your theme/module info file. For example:

```
theme:
  extend:
    colors:
      current: 'currentColor'
```

###  Health Score

43

—

FairBetter than 91% of packages

Maintenance82

Actively maintained with recent releases

Popularity17

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~10 days

Recently: every ~34 days

Total

50

Last Release

89d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/097ea6514c7dff8bd82162fe88411080a14444a73f86c15ab22eefe28a33059d?d=identicon)[jacerider](/maintainers/jacerider)

---

Top Contributors

[![jacerider](https://avatars.githubusercontent.com/u/638651?v=4)](https://github.com/jacerider "jacerider (84 commits)")

### Embed Badge

![Health badge](/badges/jacerider-neo-build/health.svg)

```
[![Health](https://phpackages.com/badges/jacerider-neo-build/health.svg)](https://phpackages.com/packages/jacerider-neo-build)
```

###  Alternatives

[drupal/core-recommended

Locked core dependencies; require this project INSTEAD OF drupal/core.

6939.5M342](/packages/drupal-core-recommended)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
