We are hardwired to create.
The urge to create is both the core and pinnacle of human nature. It is ironic then that the cerebral act of creating – divergent and convergent thinking – is mindlessly plodding, socially isolating, and more often than not, fruitless and unoriginal. Instead, our moments of true creative insight seem like gifts from above: they come unplanned, non-performative, and accompanied by sheer ecstasy (Eureka!).
Skip the writer’s block! Our inspiration comes from bridging the gap between the desire to create and the Product of creation. Creativity should be fun, and only comes when you’re having fun. PlayRight helps facilitate your creativity by connecting you to the right words to unblock your creative flow. Reimagine creativity where the AI does the novelty and you focus on the fun.
What does PlayRight do?
It's almost like magic! PlayRight uses GPT-3, a neural network that understands the internet better than you (Trained on 570GB of text from the Internet and can “understand” the task it is given).
Generate a prompt and it connects you to the collective voices of humanity to tell you what they think answers to the topic you input. This is a great way to overcome functional fixedness in your writing, but also is “crowdsourced” in a relevant way. Since PlayRight is powered by AI, the possibilities are endless and you can input prompts flexibly and modify them to see what happens.
Explore prompts by Genre to practice your writing skills. PlayRight can suggest prompts that make you want to write in any genre you want. If you get stuck, you can always consult the Generate prompt to come up with new ways of seeing the problem.
Key to PlayRight is preserving the state of play. Creative work can be mind-draining and isolating but seeing creations spontaneously made is FunFunFun! You can bounce your ideas off PlayRight, anytime and anywhere making the creative work easier. PlayRight is there to help you through the writing process and excite you with creative possibilities.
How we built it
As a team, our discussions on the topic led to the app as it presently is.
We created storyboards for the general user journey through the app, followed by creating a high-fidelity prototype of the app on Figma.
We then proceeded to use the Flutter framework with Dart to create the application interface. Due to the cross-platform programming capabilities of Flutter, the app runs on both iOS and Android devices. To promote code quality and reusability, BLoC design patterns were used to separate out business logic from the front end, especially in the authentication.
For the core idea-generation feature, we utilized OpenAI’s GPT-3 model API. The backend was done using AppWrite. We used AppWrite for User Authentication and for our user database. Saved prompts are uploaded onto the JSON REST/NoSQL server. While we initially used Docker to run our AppWrite instances locally, due to the intense memory usage by Flutter and Docker, we opted to use a DigitalOcean instance.
Challenges we ran into
Flutter does not provide native support for transparent buttons with shadow borders, and making the button blend in with the gradient background wouldn’t have been feasible. Hence we had to create our own RectClippers to deal with the situation.
The amount of attention to detail required to create a high-fidelity prototype is quite high, and that too in a time period as short as two days took a lot of effort. Certain design decisions had to be taken to allow for the completion of the app on time.
Working with JSON queries in Flutter is not very intuitive, and we ended up having to leave the Prompt Image Generation feature in the IceBox.
Working with a new API for the first time is always hard. AppWrite was no different. Setting it up for the first time with Docker put immense strain on the computers, so we had to shift to DigitalOcean for virtual instances. We also faced issues connecting to the hosted AppWrite instance from time to time, which caused delays in development.
We are currently going through finals week, and coordinating a Hackathon while at the same time preparing for finals was a difficult challenge we had to overcome to make this app a reality.
One way that this app is novel is that it does not try to create art in and of itself but to aid the human in creating art. It is meant for a widespread popular outreach, so intuition and useability are paramount. PlayRight is an AI assistant (presently/hopefully). Hence, a critical component moving forward is the prototype testing of this app, focused on fitting human user demands of the app rather than refining the AI to be more human-like.
Would plays made with AIs be meaningful? A lot of people have been debating this philosophically :P We think it is fair to say that artworks made in this fashion (on PlayRight) are uncontroversially human-made. However, we also think that with Art, the experience matters more than ontology: In creating the tool to create AI-assisted plays, we come closer to the possibility of a play existing that makes that question trivial – a play that is so good it cannot possibly be without artistic merit, regardless of human or AI (or AI-human) origin. This would change the question to “Why are AI plays meaningful?”.
*Would plays made with AIs be novel? * The final criticism we anticipate is that GPT-3 doesn't really generate something entirely novel (similar prompts generate similar solutions) and resembles something more like “Auto-tainment” or “Rando-tainment” where the creative product is exciting (by design) but misses the point (the meaning of the story). This is why the human interpreter/co-creator is a key and indispensable component of the software – they can modify prompts based on their taste. PlayRight is potentially a source of data to improve future machine-learning models. Still, even then, a human interpreter/judgment is critical to making the content incisive but not superficially so (relevant to the human experience).
Accomplishments that we're proud of
AI is a powerful tool to aid us in the creation of Art because it can reduce user effort and draw novel links. We think that this product can be rolled out in its present form to writers and will be incredibly useful as is. It makes writing a lot more fun! However, there is room to expand the features of the app to solve the social isolation problem. Whether this is a problem that is solved with features on the app (i.e. a networking feature) or is better addressed via community features (i.e. social events, write-athons) is a question for user research.
What we learned
On the technical side, we learnt: The power of AppWrite and how it streamlines authentication and database handling within one easy-to-use package. Front-end development on Flutter - using our own Clippers for making transparent boxes with shadows, multiple scrolling views, and reusable functional front-end programming. Using Docker and DigitalOcean for creating our personal backend servers on the go. High-fidelity Figma prototypes.
On the app and idea itself: We initially thought that apps should be feature-based. However, we realized that equally important is the market that the app taps on. Hence, we need to create a new experience for users to fulfil their needs. PlayRight is a starting point and is exciting enough of a technology to garner usage. But, for it to be successful it must fit the human psychology around art. Art is intrinsically a social experience and cannot be entirely done on the app platform. Hence, we should think of apps like PlayRight in terms of limitation and focus on the community that uses the app and what they need from AI – switch to community-based.
What's next for PlayRight
Images rather than text. GPT-3 is not the only tool that can help writers. An image may be more successful in spurring creative thought than a text. The next step for PlayRight would be to incorporate AI text-to-image capability to enhance the user experience (Check out the concept in project media, not implemented yet)
As this was a short Hackathon, we aimed to provide a Minimum Viable Product (MVP). We plan to keep working on it in the future to include prompt caching and pagination to give users a wider range of prompts at each goes with faster response times. We also plan to
User testing: we thought that a key user group we might target are those who are undergoing Art Therapy. One of the main obstacles that clients face in this context is that they find it challenging to produce Art and explore their ideas, but AI can help them with this in potentially satisfying ways. This may also enhance the therapist’s toolkit and enable them to explore art with their clients spontaneously. Other than the convenience and practicality for user testing (both sides win), this user group’s insight is relevant to the general population because Art about distress captures the human experience quite well, and is meant to communicate it to the world (a similar function to plays don’t you think?)
To quote George Bernard Shaw “We don't stop playing because we grow old, but we grow old because we stop playing”. PlayRight boosts the fun for budding playwrights by bridging the gap between the desire to create and the Product of creation. We hope that unlocking the potential of AI-assisted art for the general public enables more people to play better, create more, and live more alive.
Log in or sign up for Devpost to join the conversation.