npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

file-builder

v0.1.0

Published

A concatenation tool ripped from the insides of PrePros.

Downloads

51

Readme

node-file-builder

A file builder ripped from the insides of PrePros

Why?

Concatenate files with prepend and append directives embedded in the files as is possible in PrePros and CodeKit. This tool was made to serve the needs of grunt-codekit, but is published in the hopes that it meets the needs of other souls out there.

Getting started

var builder = require('file-builder')
            , fileOptions = {
                input: 'starting-point.js',
                customOutput: '../results/output.js'
            }
            , projectOptions = { path: '.' };

builder.javascript(fileOptions, projectOptions, callback);

Assuming we are working with the files in the test/fixtures directory you will end up with test/results/output.js

API notes

We are just working directly with the innards of Prepros, so if you want to know about all the different overrides you can look into the config module of PrePros.

Javascript

Appending

Use single line comments with @codekit-append or @prepros-append
Example: // @codekit-append 'myfile.js'

Prepending

See Appending - substitute keywords for @codekit-prepend, @prepros-prepend

API

javascript(fileOptions, projectOptions, callback)

  • fileOptions.input (compulsory) name of input file
  • fileOptions.config.customOutput Filename of specific outputfile
  • fileOptions.config.uglify
  • fileOptions.config.sourcemaps
  • fileOptions.config.mangle
  • projectOptions.path (compulsory) must be set to .
  • callback if the first argument is non-null, an error has occurred. Second argument is name of the input file

Ruby, SASS, ...

We are embedding the core of PrePros, so one could do a lot more, but the goal for the first version was to expose the javascript functionality. Feel free to push a PR.

Notes

There are some more newlines than what one might expect, but this is how Prepros does this, and so any issues with that should be filed in the Prepros project.

About

The actual file concatenation logic has been ripped from the insides of PrePros, so thanks to Subash Pratakh for releasing those parts under the MIT license.

Problems? Pull requests?

File an issue if there are problems. Pull requests are very welcome.