contributing.md 2.3 KB

Contributing

Kalliope needs the community to improve its Core features and to create new Neurons, STTs, TTSs. Let's join us ! Here is the Todo list if you are looking for some ideas.

Core

The community can contribute to the Core of Kalliope by providing some new features.

How to contribute

  1. Fork it!
  2. Checkout the dev branch git checkout dev
  3. Create your feature branch: git checkout -b my-new-feature
  4. Commit your changes: git commit -am 'Add some feature'
  5. Push to the branch: git push origin my-new-feature
  6. Submit a pull request in the dev branch

Community module (Neuron, STT, TTS)

Kalliope comes with a community installation command. Your can create a module in you own git repo that will be available to all Kalliope users.

See the dedicated documentation depending on the type of module you want to code.

Constraints

  1. Respect PEP 257 -- Docstring conventions. For each class or method add a description with summary, input parameter, returned parameter, type of parameter

    def my_method(my_parameter):
        """
        Description of he method
        :param my_parameter: description of he parameter
        :type my_parameter: str
        """
    
  2. Respect PEP 8 -- Style Guide for Python Code We recommend the usage of an IDE like Pycharm

Limitations
  1. The management of incoming variable from the signal order when they are numbers or float are not efficient.
    • Because of the differences between the STTs outputs: some are returning word some numbers (two != 2).
    • Because of the i18n, we are not able to know if a variable should be interpreted in english, french, spanish, etc ... ("two" != "deux" != "dos")

Share it

We are maintening a list of all the Neurons available from the community, let us know you've developed your own by opening an issue with the link of your neuron or send a pull request to update the neuron list directly.