As computer science majors, we've had access to extremely helpful IDE's that allow us to find out in real time if we're making mistakes while coding. Programs like Intellij offer on the fly syntax highlighting as well as suggestions for what to change when something doesn't seem quite right. We thought it would be great if poets could have access to these same helpful abilities when crafting the next literary masterpiece.
What it does
Sublime Poet is a plugin for the Sublime Text editor. It allows you to choose a poem, from blank verse to limerick to haiku after which the plugin will proceed to give helpful messages and highlights. These hints include ensuring that a poem follows the proper rhyme scheme and making sure it follows the proper pattern of stressed/unstressed syllables (iambic pentameter, etc). If possible, hovering over the suspect section will yield a more detailed description of what's wrong, as well as suggestions on how to fix it.
How we built it
The base plugin is written in python, the main language supported for writing sublime plugins. In addition to this we also wrote a flask server running on amazon web services. This server was queried whenever rhyme schemes or stress patterns needed verification. Every time an error was found in the poem, we underlined the text and added html bodies that would show when hovered over.
Challenges we ran into
Accomplishments that we're proud of
In the end we created a fairly professional looking plugin that is indeed helpful in finding out errors for a given poem style.
What we learned
During this hackathon we learned the general workflow for creating a sublime plugin, how to employ multithreaded python programs, and the creation of RESTful api's to be used by our frontend.
What's next for Sublime Poet
Future work includes adding support for more poem styles as well as publishing the plugin to the public for everyone to use.