* NumbersRole: Despite the role being case insensitive, the number_style_regex isn't! Adding failing test * NumbersRole: Fixing indentation * Conversions: Adding tests around implicit case insensitivity in current implementation * Conversions: Moved all case insensitive behaviour into the handle query so it's explicit rather than relying on query_lc to do the work for us * Conversions: Adding symbol definitions for case sensitive handling * Conversions: Fixing markup * Conversions: UTF8 with BOM on ratios and adding symbol as a trigger * Conversions: Symbol is now used (case sensitive) to match for factors * Conversions: The test 'BTU to KwH' should fail (this isn't a unit), however it was causing a division by zero as get_matches wasn't finding a match and this condition wasn't handled correctly * Conversions: Typo! KwH shouldn't trigger * Conversions: Tests involving symbols now need to be correct according to SI * Conversions: Tests around "oz" that should be interpreted as fl oz if the answer should unambiguously be a volume * Conversions: Will handle ambiguity around oz for more units * Conversions: Uncommenting tests around digital storage units and fixing them so they're actually correct |
||
---|---|---|
.github | ||
lib/DDG | ||
share/goodie | ||
t | ||
template | ||
.gitignore | ||
.travis.yml | ||
CONTRIBUTING.md | ||
LICENSE | ||
README.md | ||
dist.ini |
README.md
Welcome to DuckDuckHack!
We're a community of open source developers from around the world, contributing code to improve the DuckDuckGo search engine.
How to contribute
- Create new Goodie Instant Answers, and improve existing ones
- Note: Goodies are written in Perl (back-end) and JavaScript (front-end). They can also typically use CSS, and Handlebars Templates.
- Visit DuckDuckHack to learn more about how you can help!
What are Goodie Instant Answers?
Goodies do not retrieve data from a third party API. Goodies provide their results entirely through server-side code. They may use a static data file stored on DuckDuckGo's server, but they do not call external resources.
Example: JavaScript Minifier Goodie
Resources
- Join the DuckDuckHack Slack channel to ask questions
- Join the DuckDuckHack Forum to discuss project planning and Instant Answer metrics
- Read the Goodie documentation for technical help
- View the list of all live Goodie Instant Answers to see more examples