NAME
    WWW::xkcd - Synchronous and asynchronous interfaces to xkcd comics

VERSION
    version 0.001

SYNOPSIS
        use WWW::xkcd;
        my $xkcd  = WWW::xkcd->new;
        my $comic = $xkcd->fetch; # provides latest data
        say "Today's comic is titled: ", $comic->{'title'};

        # or in async mode
        $xkcd->fetch( sub {
            my $comic = shift;
            say "Today's comic is titled: ", $comic->{'title'};
        } );

DESCRIPTION
    This module allows you to access xkcd comics (<http://www.xkcd.com/>)
    using the official API in synchronous mode (what people are used to) or
    in asynchronous mode.

    The asynchronous mode requires you have AnyEvent and AnyEvent::HTTP
    available. However, since it's just *supported* and not *crucial*, it is
    not declared as a prerequisite.

    Currently it retrieves the metadata of each comic, but it will probalby
    also fetch the actual comic in the next release.

    This module still hasn't materialized so some things might change, but
    probably not a lot, if at all.

METHODS
  new
    Create a new WWW::xkcd object.

        # 'file' will probably be renamed
        my $xkcd = WWW::xkcd->new(
            base_url => 'http://www.xkcd.com',
            file     => 'info.0.json',
        );

  fetch
    Fetch the metadata of the comic. This method will probably be renamed,
    stay tuned.

        # fetching the latest
        my $comic = $xkcd->fetch;

        # fetching a specific one
        my $comic = $xkcd->fetch(20);

        # using callbacks for async mode
        $xkcd->fetch( sub { my $comic = shift; ... } );

        # using callbacks for a specific one
        $xkcd->fetch( 20, sub { my $comic = shift; ... } );

DEPENDENCIES
    *   Try::Tiny

    *   HTTP::Tiny

    *   JSON

    *   Carp

AUTHOR
    Sawyer X <xsawyerx@cpan.org>

COPYRIGHT AND LICENSE
    This software is copyright (c) 2012 by Sawyer X.

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

