PHPackages                             flynetworks/google-closure - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. flynetworks/google-closure

ActiveTypo3-flow-package[Utility &amp; Helpers](/categories/utility)

flynetworks/google-closure
==========================

This package provides the google closure javascript library. Also a compile and deps command is available through the command line.

2.1.2(11y ago)11491LGPL-3.0+JavaScript

Since Apr 3Pushed 11y ago1 watchersCompare

[ Source](https://github.com/flynetworks/typo3-flow-google-closure)[ Packagist](https://packagist.org/packages/flynetworks/google-closure)[ RSS](/packages/flynetworks-google-closure/feed)WikiDiscussions master Synced 3d ago

READMEChangelogDependencies (1)Versions (8)Used By (0)

\##Google Closure Package for TYPO3 Flow

Installation
------------

[](#installation)

I recommend to install this package using composer.
Just require the [flynetworks/google-closure](https://packagist.org/packages/flynetworks/google-closure)package in your composer.json

```
"require": {
    "flynetworks/google-closure": "2.*"
}
```

Basic Configuration
-------------------

[](#basic-configuration)

After you have the package installed there is a new configuration file "GoogleClosure.yaml" available to you.
This file has basically the following structure:

```
UniqueIdentifier:
  compiler:
    options:

```

### Example

[](#example)

```
MyUniqueKey:
  compiler:
    options:
      id: 'my-project-id'
      externs:
        - 'resource://My.Package/Public/JavaScripts/Externs/SomeExterns.js'
      paths:
        - 'resource://My.Package/Public/JavaScripts/'
      moduleOutputPath: 'resource://My.Package/Public/JavaScripts/%s.min.js'
      moduleProductionUri: 'resource://My.Package/Public/JavaScripts/%s.min.js'
      modules:
        'Application':
          deps: []
          inputs:
            - 'resource://My.Package/Public/JavaScripts/Application.js'

```

Don't use a dot "." for the UniqueIdentifier! I recommend to use only alphanumeric characters.
Within the "options" property you can start to configure the compiler parameters.

#### Available compiler options:

[](#available-compiler-options)

This package is using the [plovr](http://plovr.com) build tool. A documentation about
the options you can use is located here:
In the list below all options are listed with their corresponding type.

  Option Type   id required string   inputs array\[string\]   paths array\[string\]   externs array\[string\]   customExternsOnly boolean   closureLibrary string   experimentalExcludeClosureLibrary boolean   mode RAW, WHITESPACE, SIMPLE, ADVANCED   level QUIET, DEFAULT, VERBOSE   inherits string   debug boolean   prettyPrint boolean   printInputDelimiter boolean   outputFile string   outputWrapper array\[string\]   outputCharset string   fingerprint boolean   modules object   moduleOutputPath string   moduleProductionUri string   moduleInfoPath string   globalScopeName string   define object   treatWarningsAsErrors boolean   exportTestFunctions boolean   nameSuffixesToStrip array\[string\]   typePrefixesToStrip array\[string\]   idGenerators array\[string\]   ambiguateProperties boolean   disambiguateProperties boolean   experimentalCompilerOptions object   customPasses object   soyFunctionPlugins array\[string\]   jsdocHtmlOutputPath string   variableMapInputFile string   variableMapOutputFile string   propertyMapInputFile string   propertyMapOutputFile string   testTemplate string   testExcludes array\[string\] Advanced Configuration
----------------------

[](#advanced-configuration)

There are some more configuration properties available to you. Just see the **example** below.

```
MyFancyConfiguration:
  embedMode: 'dependency' #Viewhelper renders the dependency version
  dependency:
    command: 'python %FLOW_PATH_PACKAGES%Application/My.Cool.Package/Resources/Public/closure/bin/build/depswriter.py'
    outputFileName: 'MyCustomDepsFileName.js'
  compiler:
    command: 'java -jar %FLOW_PATH_PACKAGES%Application/My.Cool.Package/Resources/Private/Bin/Plovr.jar build'

ChildConfiguration:
  embedMode: 'compiled' #Viewhelper renders the compiled version
  extends: 'MyFancyConfiguration'
  compiler:
   command: 'java -jar %FLOW_PATH_PACKAGES%Application/Super.Child.Package/Resources/Private/Bin/Plovr.jar build'

```

ViewHelper
----------

[](#viewhelper)

Also a ViewHelper "EmbedScriptViewHelper" is available through this package :)

```
{namespace gc=FlyNetworks\Google\Closure\ViewHelpers}

```

Commands
--------

[](#commands)

```
./flow closure:compile
./flow closure:dependency

```

###  Health Score

31

—

LowBetter than 68% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity13

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity68

Established project with proven stability

 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 ~19 days

Recently: every ~28 days

Total

7

Last Release

4308d ago

Major Versions

1.2.0 → 2.0.02014-04-10

### Community

Maintainers

![](https://www.gravatar.com/avatar/15f1e077c77395bc56ee5280a03d86317094f0829dae865606a371fdd05bd43e?d=identicon)[flynetworks](/maintainers/flynetworks)

---

Top Contributors

[![flynetworks](https://avatars.githubusercontent.com/u/384104?v=4)](https://github.com/flynetworks "flynetworks (5 commits)")

---

Tags

javascriptgoogleminifycompressclosurebinarycompilerminificationflowtypo3

### Embed Badge

![Health badge](/badges/flynetworks-google-closure/health.svg)

```
[![Health](https://phpackages.com/badges/flynetworks-google-closure/health.svg)](https://phpackages.com/packages/flynetworks-google-closure)
```

###  Alternatives

[matthiasmullie/minify

CSS &amp; JavaScript minifier, in PHP. Removes whitespace, strips comments, combines files (incl. @import statements and small assets in CSS files), and optimizes/shortens a few common programming patterns.

2.0k30.5M336](/packages/matthiasmullie-minify)[tholu/php-packer

A PHP version of Packer, JavaScript obfuscation library originally created by Dean Edwards

137441.2k5](/packages/tholu-php-packer)[stolz/assets

An ultra-simple-to-use assets management library

296519.2k8](/packages/stolz-assets)[mrclay/jsmin-php

Provides a modified port of Douglas Crockford's jsmin.c, which removes unnecessary whitespace from JavaScript files.

5312.9M27](/packages/mrclay-jsmin-php)[linkorb/jsmin-php

Unofficial package of jsmin-php

333.5M18](/packages/linkorb-jsmin-php)[sensiolabs/minify-bundle

Assets Minifier (CSS, JS) for Symfony &amp; Minify integration in Asset Mapper

5694.9k1](/packages/sensiolabs-minify-bundle)

PHPackages © 2026

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