From Code to Community: Sponsoring The Perl and Raku Conference 2025 Learn more

NAME

Dist::Zilla::Plugin::JSAN - a plugin for Dist::Zilla for building JSAN distributions

VERSION

version 0.06

SYNOPSIS

In dist.ini:

name = Sample-Dist
abstract = Some clever yet compact description
author = Clever Guy #1
author = Clever Guy #2
license = LGPL_3_0
copyright_holder = Clever Guy
;=========================================================================
; version provider
[Git::NextVersion]
first_version = 0.0.1
;=========================================================================
; include the link to git repo and web page
[GithubMeta]
;=========================================================================
; choose/generate files to include
[GatherDir]
[PruneCruft]
[License]
;=========================================================================
; JSAN-specific configuration
[JSAN] ; generate docs
docs_markup = mmd ; default
css_url = http://joose.it/markdown.css ; default
[JSAN::StaticDir]
static_dir = static ; default
[JSAN::PkgVersion]
[JSAN::ReadmeFromMD] ; should be after docs generation
[JSAN::InstallInstructions] ; add INSTALL file, describing the installation process
[JSAN::Bundle] ; after docs generation to avoid docs for bundles
;=========================================================================
; `npm` configuration - package.json generation
[JSAN::NPM]
main = lib/Task/Sample/Dist/Core
dependency = joose >= 3.14.0
;=========================================================================
; before release
[Git::Check]
[CheckChangesHasContent]
[ConfirmRelease]
;=========================================================================
; release
[JSAN::NPM::Publish] ; publish in `npm`
sudo = 1
;=========================================================================
; after release
[Git::Commit / Commit_Dirty_Files]
[Git::Tag]
[NextRelease]
format = %-9v %{yyyy-MM-dd HH:mm}d
[Git::Commit / Commit_Changes]
[Git::Push]
push_to = origin
[JSAN::GitHubDocs] ; after all commits to have clean workspace
[Twitter]
tweet = Released {{ '{{$DIST}}-{{$VERSION}} {{$URL}}' }}
hash_tags = #nodejs #npm

DESCRIPTION

This is a plugin for distribution-management tool Dist::Zilla. It greatly simplifies the release process, allowing you to focus on the code itself.

PLUGINS

Any usual Dist::Zilla plugins can be used. In the SYNOPSIS above we've used Dist::Zilla::Plugin::Git::Check and Dist::Zilla::Plugin::CheckChangesHasContent. Additionally several JSAN-specific plugins were added:

Dist::Zilla::Plugin::JSAN::Bundle - concatenate individual source files into bundles, based on information from Components.JS file

Dist::Zilla::Plugin::JSAN::StaticDir - moves the content of the static directory to the distribution folder

Dist::Zilla::Plugin::JSAN::GitHubDocs - updates the `gh-pages` branch with the documentation after each release

Dist::Zilla::Plugin::JSAN::NPM - generate `package.json` file for your distribution

Dist::Zilla::Plugin::JSAN::NPM::Publish - publish your distribution in `npm`

Dist::Zilla::Plugin::JSAN::PkgVersion - embed version number in the source files

Dist::Zilla::Plugin::JSAN::ReadmeFromMD - copies a main documentation file to the distribution root as README.md

Dist::Zilla::Plugin::JSAN::InstallInstructions - generates INSTALL file in the root of distribution with installation instructions

STARTING A NEW DISTRIBUTION

This plugin allows you to easily start a new JSAN distribution. Read Dist::Zilla::Plugin::JSAN::Minter to know how.

AUTHOR

Nickolay Platonov, <nplatonov at cpan.org>

BUGS

Please report any bugs or feature requests to http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Dist-Zilla-Plugin-JSAN or http://github.com/SamuraiJack/Dist-Zilla-Plugin-JSAN/issues. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SOURCES

This module is stored in an open repository at the following address:

http://github.com/SamuraiJack/Dist-Zilla-Plugin-JSAN

COPYRIGHT & LICENSE

Copyright 2010 Nickolay Platonov, all rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

AUTHOR

Nickolay Platonov <nplatonov@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2011 by Nickolay Platonov.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.