4 | | When considering to write a plugin for Deluge, one must first understand the basic design of Deluge. Deluge is split in two, the core and the user-interface of which there could be many. When writing your plugin you will be writing a Core portion and, perhaps, many different UI portions. This may sound complicated and at times it can be, but it is required to take advantage of Deluge's architecture. |
| 4 | When considering to write a plugin for Deluge, one must first understand the basic design of Deluge. Deluge is split in two, the core and the user-interface of which there could be many. When writing your plugin you will be writing a Core portion and, perhaps, many different UI portions. This may sound complicated and at times it can be, but once you get the hang of it, it becomes second-hand. |
| 5 | |
| 6 | === Skill Checklist === |
| 7 | |
| 8 | This is a list of recommended skills or knowledge that you may need to successfully write a plugin. This is by no means required, but can serve as a starting point if you're not sure what you need to know. It may also be a good idea to read [http://dev.deluge-torrent.org/wiki/Development/UiClient1.2 How To Write a Client] first, to give you some idea of how a UI would interact with the Core. |
| 9 | |
| 10 | * Python |
| 11 | * Twisted, specifically Deferreds |
| 12 | * GTK and possibly Glade |
| 13 | * Javascript for the WebUI portions |