Skip to content
This is not the fallen star you are looking for... http://karlbright.org
CoffeeScript
Find file

README.md

Yvaine

This is not the fallen star you are looking for...

Yvaine originally started its life off as a bot specifically built for The Frontier Group but after a night of hacking I soon realised that it was probably better off out in the wild. A little bit like when zookeepers raise a baby monkey(other cute animals are available) and then they get on camera and cry about how they will miss them but its the best thing to do. This bot is a monkey and I was the zookeeper. I didn't cry though.


Why the name?

I love Neil Gaiman and I love Stardust. The novel is fantastic, the movie isn't bad either! I highly recommend you check it out if you haven't read/seen it already.

Yvaine is a fallen star, which Tristran vows to find and bring to Victoria Forester. It's all a little bit fantasy but I always thought it was a cool name none the less. I'm sure I could come up with some kind of connection between the two if I thought about it long enough but for now I just think it sounds nice.


Commands

Commands are anything that can be run by a user from the campfire room. They are incredibly easy to create(i hope) and offer a great deal of flexibility once you wrangle your head around regular expression and what exactly you want to capture.

Current commands

  • Talk Back To Me - A simple talkback command that looks for messages directed at Yvaine and echos them back. You can tell Yvaine that you either hate or love them and get the same kind of love and hate back. We're just one big happy family!

  • Pull Requests - Originally built as a demo to show how commands can interact with the parent Yvaine instance settings as well as tasks. This command will pull back a list of Pull Requests that are visible within a GitHub Feed.

Future commands

  • Hudson - A variety of commands that will control projects currently setup within a remote hudson installation. Originally built for use by The Frontier Group

Tasks

Tasks are the cron jobs of Yvaine. They allow you to schedule in actions to be performed at certain intervals. Whether is every 10 seconds, every hour, daily, weekly or even yearly.

Current tasks

  • Pull Requests - Goes hand in hand with the Pull Request command. This task is run every minute between 9:00AM and 5:00PM and checks for new pull requests within a Github feed. It reports back any new pull requests it can see and notifies everyone of it so users are able to review and comment. Originally built to tie into the process used at The Frontier Group, a good example of how this is used can be seen here

Future tasks

There are no tasks currently planned for implementation.


Tests

Currently there are no tests for Yvaine but I do plan to start writing these in the near future. To be honest, I had no idea that this bot would turn out as nice as it has. I'm a little bias though...


Contributing

Yvaine is still a work in progress and will rely heavily on people adopting it and creating their own new commands/tasks and support libraries.

I aim to keep the code as documented as possible and ask that you keep any code that you include within a pull request as documented as possible as well.

Please feel free to fork this project and create a pull request with any new features/bugs you may create.


License

Yvaine is Copyright © 2011 Karl Brightman. It is free software, and may be redistributed under the terms specified in the LICENSE file.

Something went wrong with that request. Please try again.