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_url     = http://cleverguy.github.com/Sample-Dist
    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.