To add a new module, follow these steps:
- Fork the repo
- Create a new branch (
git checkout -b my-new-feature
) - Add a new file in
modules/src/
folder (defineprocess
function) - Add some tests in
modules/tests/
folder - Add the module name in
src/__init__.py
- Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a Pull Request
Kindly note that your tests may fail initially as I'll have to configure wit.ai to handle these new types of queries. Just include some sample queries in your PR's description for the initial training.
To fix a bug or enhance an existing module, follow these steps:
- Fork the repo
- Create a new branch (
git checkout -b improve-feature
) - Make the appropriate changes in the required file in
modules/src/
folder - Add / Edit tests in
modules/tests/
folder to reflect the changes made (run them locally withpy.test
) - Commit your changes (
git commit -am 'Improve feature'
) - Push to the branch (
git push origin improve-feature
) - Create a Pull Request
If you find a bug (the bot couldn't handle the query and / or gave irrelevant results), kindly open an issue here by including your search query and the expected result.
If you'd like to request a new functionality, feel free to do so by opening an issue here including some sample queries and their corresponding results.
If you're working on something, let us know by creating an issue, or commenting on an existing one. Win-win for everyone!
Keep the code as simple as possible. No need of obfuscation / code golf.
If you have to explain your code, you're doing it wrong!
Apart from these, contributions directly to the framework are also welcome!
You can use the following commits for reference: coin, lyrics, news, xkcd, etc.
P.S. If you've come this far, you might as well contribute. Looking for a place to start? Take a look at some of the low-hanging fruits!