NAME
duckpan - Command line tool for using the DuckPAN of DuckDuckGo
VERSION
version 1016
SYNOPSIS
duckpan [-I=<path>] [-v|--verbose] <command> [<args>]
Commands include:
check Check if you fulfill all requirements for the development environment
env Add, remove or retrieve values from DuckPAN's Env.ini
help View more detailed help information
installdeps Install all Perl dependencies
new Generate new Instant Answer skeleton
publisher Start local web server for DuckDuckGo-Publisher static websites
query Test Instant Answer triggers on command line
reinstall Reinstalls installed, pinned, or most recent DuckPAN and DDG Perl modules
latest Like reintall but ignores installed versions
roadrunner Same as installdeps, but skips tests (dangerous!)
server Start local web server to test Instant Answer display
update Installs newest DuckPAN packages
upgrade Installs newest DuckPAN and DDG packages
Use 'duckpan help' or 'man duckpan' for more details.
DESCRIPTION
DuckPAN is an application built to aid DuckDuckHack contributors with Instant Answer development. It is mainly used by contributors to test Instant Answer triggers and preview their visual design and output.
NAME
DuckPAN - The DuckDuckHack Developer Tool
INSTALLATION
Please see https://github.com/duckduckgo/p5-app-duckpan#installing-duckpan for DuckPAN installation instructions
COMMANDS
Help
duckpan
ORduckpan help
ORman duckpan
-
Shows you the DuckPAN help page which briefly describes DuckPAN and its features.
FOR INSTANT ANSWER DEVELOPERS
duckpan check
-
Checks if you fulfill all requirements for the development environment. This will run automatically during a duckpan release.
duckpan query
[package_name ...]-
Test Goodie and Spice triggers interactively on the command line. For each query, the Instant Answers triggered will be displayed. This tool should be used to ensure your Instant Answer triggers correctly.
[package_name ...]: Loads only the specified Spice or Goodie Instant Answers.
Examples: duckpan query Npm duckpan query Twitter IsItUp
duckpan server
[--port <number>] [package_name ...]-
Starts a local web server, which emulates the DuckDuckGo production environment. Allows for live testing of Goodie and Spice Instant Answers. This tool should be used to ensure your Instant Answer displays correctly. For Spice Instant Answers, this is especially important to verify API calls are successful and no JavaScript errors exist.
-p, --port <number>: Forces DuckPAN server to run on the specified port (default port is 5000)
[package_name ...]: Loads only the specified Spice or Goodie Instant Answers.
Examples: duckpan server Movie duckpan server IDN Sort Morse
duckpan new
[package name]-
Generates all necessary files for a new Spice or Goodie Instant Answer (depending on the current repo). DuckPAN will prompt you for a package name and generate the required files. If the name is already in use, DuckPAN will let you know and no files will be created.
duckpan test
-
Tests your release, by running the tests in the t/ directory using Dzil (if a dist.ini exists) or prove. This will run automatically during a duckpan release.
duckpan installdeps
-
Attempt to install dependencies for the distribution in your current directory using cpanm.
duckpan roadrunner
-
Same as installdeps, but without testing them. Meep meep!
duckpan publisher
-
Starts a local web server which displays static websites created with DuckDuckGo-Publisher.
duckpan update
-
Update DuckPAN to the latest version.
duckpan upgrade
-
Upgrade DuckPAN and DDG to the latest versions.
FOR DUCKPAN DEVELOPERS
duckpan reinstall
-
Force installation of DuckPAN and DDG modules using the installed, pinned, or latest versions, in that order.
duckpan latest
-
Like reinstall except it ignores any installed version.
duckpan -I [filepath ...]
-
Loads the specified external library. This should be used to test changes made to App::DuckPAN and DDG. Example: loading modified DuckPAN modules
duckpan -I../p5-app-duckpan/lib server
.
ENVIRONMENT VARIABLES
duckpan env
-
View env commands and shows command usage.
duckpan env help
-
View env commands and shows command usage.
duckpan env set
<name> <value>-
Add an environment variable that DuckPAN will remember. This is specifically useful for Spice API keys. Variables are stored in ~/.duckpan/config/env.ini
duckpan env get
<name>-
Retrieve the matching key for a given env variable.
duckpan env rm
<name>-
Remove an environment variable from DuckPAN.
duckpan env list
-
Lists all the env variables currently stored in ~/.duckpan/config/env.ini.
SEE ALSO
- https://github.com/duckduckgo/p5-app-duckpan
- https://github.com/duckduckgo
- https://duckduckgo.com
- https://duck.co
- http://duckpan.org
CONTRIBUTION
To contribute to DuckPAN, please visit https://github.com/duckduckgo/p5-app-duckpan. We also welcome and encourage contributions from our community. Please visit http://duckduckhack.com/ to contribute new Instant Answers, or visit https://duck.co/ideas to share your ideas and Instant Answer source suggestions.
SUPPORT
- Slack
-
We invite you to join us on Slack for any queries and lively discussion.
- Repository
- Issue Tracker
AUTHOR
DuckDuckGo <open@duckduckgo.com>, Zach Thompson <zach@duckduckgo.com>, Zaahir Moolla <moollaza@duckduckgo.com>, Torsten Raudssus <torsten@raudss.us> https://raudss.us/
COPYRIGHT AND LICENSE
This software is Copyright (c) 2013 by DuckDuckGo, Inc. https://duckduckgo.com/.
This is free software, licensed under:
The Apache License, Version 2.0, January 2004