Inspiration
I participate in NaNoWriMo (National Novel Writing Month) each November in which I spend my free time writing my own novel. When having to choose the best software, many go with well-known suites such as Microsoft Office, Google Docs, or Scrivener. Google Docs is free, but it's mostly online. You'll have to work offline in places with no Internet connectivity and hope that you don't accidentally exit the tab. Microsoft Office isn't free, and is linear in nature, just like Google Docs. You write page to page, from start to finish. However, stories don't work that way. You may have a simple scene in mind, or a character profile you'd like to develop - maybe just a quick idea or two. Perhaps you have a chapter that belongs later in the story. While you can try to move multiple documents into various folders, it usually ends up as a mess and a hassle to organize. Scrivener is amazing in how it lets you develop stories, but is commercial software. Younger writers can't afford to buy expensive specialized software and new writers don't have much reason to either. It's also sometimes overwhelming for first-time writers to get used to the interface and overall functionality of the suite.
I developed StoryHub so that younger writers can easily adjust to starting their first story. You shouldn't be discouraged from writing because the software is too expensive or overwhelming. StoryHub will be free (open-source) to use and will continue to improve to suit the needs of writers. However, it shouldn't be limited to just stories. You can use it to take notes in class or manage other types of texts beyond stories. StoryHub's primary objective may be to assist writers in crafting stories, but its capabilities go far beyond that.
What it does
StoryHub enables the user to write their stories within the desktop application and back them up to GitHub. It organizes the author's stories for them, so they don't have to. Authors can focus on their stories alone and leave the rest to StoryHub. Since HackRPI is a 24-hour hackathon, StoryHub focuses on GitHub alone as a solution. I want to expand beyond GitHub so that writers can save their work in various online options (or download it directly in a compressed format). I also want to create a separate, simple layout that can be switched to for younger writers to easily use.
How I built it
I used Electron, which lets you build cross-platform desktop applications with web technologies. It's made by GitHub and is an amazing means of translating what would otherwise be web application work to multiple devices. I used npm to manage all of the necessary packages to build StoryHub and the rest of the application is no different than a web application (i.e. it uses HTML, CSS, and JavaScript).
Challenges I ran into
The GitHub API was difficult to work with at first due to some authentication issues, but afterwards, it's just writing functions for the types of requests you need to make. They get more complex as you attempt to move more data around simultaneously.
Accomplishments that I'm proud of
I was able to build a desktop application that works and looks like any other package on my laptop (running Linux).
What I learned
Package distribution can be tough. You need to ensure all of the strict requirements for the OS are upheld for the package you're releasing. There's also tons of limits for how much you can request from a service such as GitHub. In cases where those limits are reached, there needs to be a way to temporarily go around to other services as a backup, while remaining in sync.
I love Electron - the overall concept is really cool. You can take something off the web and put it right on your desktop. You no longer need to go to "somedomain.com" to get things done. Everything runs off your computer, yet behaves as if you were on a web application. It's easy to release on multiple platforms as well - with one line in the terminal, you have the program file for Windows, OSX, and Linux.
What's next for StoryHub
Work with NaNoWriMo.
- I want to promote the desktop application when it is more mature in the development process to NaNoWriMo and its participants. It'll be a great way of getting feedback from writers of all backgrounds and experiences.
Move away from just GitHub.
- I want to add Google Drive, Dropbox, direct download capability, and so on. These online services are just a means to backup your precious work. Not all writers have technical background, so it should be as simple as possible to write and save without leaving the desktop application.
Redesign the interface.
- I had less than 24 hours to work on StoryHub, and it should definitely be more immersive. It's the kind of application that should be run in full screen mode and not look just like a bunch of forms.
Add in safety measures.
- Examples include saving your work upon any exit from the application (whether it was intentional or not).

Log in or sign up for Devpost to join the conversation.