keathley / butler

An elixir powered robot
MIT License
25 stars 4 forks source link

Generate a new Butler #20

Closed keathley closed 9 years ago

keathley commented 9 years ago

Why

Users need to be able to generate their own versions of Butler

How

This change allows us to create new versions of Butler for users with the use of an archive application and mix task.

The mix task creates an empty application that loads Butler as a dependency. Users can then install plugins from hex or include their own plugins in the plugins directory. Users can also configure their own Butler from the separate configuration files we include. In the future I would like to avoid having to create a list of plugins, or automatically load plugins from the plugins directory. However, I'm not sure what the ideal interface looks like yet so for now we're just using the configuration.

bbrock25 commented 9 years ago

Very cool. Few questions:

1) what was your deciding factor for keeping this inside the main butler repo? 2) what is the actual command to run the generator?

Looks awesome, great work!

keathley commented 9 years ago

The deciding factor was "how does phoenix do it". I don't think that there is any reason we couldn't extract it into its own repo though.

The command to run the generator is mix butler.new BOT_NAME

keathley commented 9 years ago

@colinrymer should be fixed now.

colinrymer commented 9 years ago

LGTM