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

sofy

v1.0.7

Published

Extended Javascript Bundler

Downloads

18

Readme

⚙️Installation

The preferred way to install this extension is through Composer.

To install Sofy, simply:

$ npm install sofy --save-dev

🚀 Usage

Step 1

Simply run the below cmd from your project root

$ sofy --create

This will create sofy.js file in your project root which looks like below

const files  = {};
const config = {};

module.exports = {
	files: files,
	config: config,
};

Step 2

Customize sofy.js based on your needs

Sample Config File

module.exports = {
	files: {
		// Single Compile Options
		'dir/your-file-source': {
			dist: 'path-to-save',
			rename: 'custom-file-name',
			bable: {
			// Your Custom Config For **Babel** 
			// Or Set True to use deafult config provided by Easy Gulp Tasker Plugin.
			// If not pass a custom string and use that string in the config array to build your own common config.
			},
			watch:['file1','file2','file3'] // enter the files that are needed to be watched to trigger the above actions.
		},

		// Multiple Compile Options
		'dir2/your-file-source': [
			{
				dist: 'path-to-save',
				rename: 'custom-file-name',
				bable: true
			},
			{
				dist: 'path-to-save',
				rename: 'custom-file-name',
				bable: true,
				uglify: true
			}
		]
	},

	config: {
		// Here you can write your custom config
		bable_custom_config1: {
			presets: [ '@babel/env' ],
		}
	},
};

Step 3

Run any of the below cmd to use this plugin

The below cmd will compile all the files are listed in the sofy.js

$ sofy --compile

The below cmd will trigger gulp.watch function to keep track of files changes and compiles the given file.

$ sofy --watch

Below cmd will create a basic Sofy Config File

$ sofy --create sofy ./

Below CMD will create a basic RollUP Config File

$ sofy --create rollup ./

Below CMD will create a basic .babelrc Config File

$ sofy --create bable ./

Below CMD will create a basic babeljs Config File

$ sofy --create babeljs ./

Below CMD will create a basic package.json Config File

$ sofy --create npm ./

Below CMD Will create all config files in the given location

$ sofy --create all ./

Builtin Tasks

Blow is a list of task / config options for each file object.

General

  • dist:'file-save-path' | Location On Where To Save The File.
  • rename:'custom-file-name' | Custom File Name To Save Compiled File
  • watch:['file1','file2','file3'] | An Array of files to keep an eye for change to trigger its tasks / provide a single file name / set it to true
  • concat:true | Please Refer To Gulp Concat
  • combine_files:true | Please Refer To Gulp Combine Files

SCSS / CSS

  • scss:true | Converts SCSS Into CSS
  • minify:true | Minify Source.
  • autoprefixer:true | Autoprefix All CSS Properties.

Javascript

  • webpack:true | Run's Webpack To Compile / Bundle a file
  • bable:true | Run's Babel To Convert EM6 => EM6
  • uglify:true | Minify JS Soure Code

📝 Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Checkout CHANGELOG.md

🤝 Contributing

If you would like to help, please take a look at the list of issues.

💰 Sponsor

I fell in love with open-source in 2013 and there has been no looking back since! You can read more about me here. If you, or your company, use any of my projects or like what I’m doing, kindly consider backing me. I'm in this for the long run.

  • ☕ How about we get to know each other over coffee? Buy me a cup for just $9.99
  • ☕️☕️ How about buying me just 2 cups of coffee each month? You can do that for as little as $9.99
  • 🔰 We love bettering open-source projects. Support 1-hour of open-source maintenance for $24.99 one-time?
  • 🚀 Love open-source tools? Me too! How about supporting one hour of open-source development for just $49.99 one-time ?

📜 License & Conduct

📣 Feedback

  • ⭐ This repository if this project helped you! :wink:
  • Create An 🔧 Issue if you need help / found a bug

Connect & Say 👋