I was talking with my dad one day about how I had bought a tablet so that I could practice drawing. At the time, it seemed like a great idea... The only problem was that I started to have trouble coming up with good, unique drawing ideas after only one week.
That's when the idea hit me! Make an Alexa skill that would give me random drawing prompts! This would provide me with an awesome way to improve my drawing skills while also giving me a new project to tackle. Also, the #AmazonAlexaLifeHacksChallenge was going on, which just gave me another reason to try and tackle this problem!
What it does
When opened on an Alexa Enabled device, Drawspiration will give the invoker a randomly generated sentence that will hopefully give them some inspiration for a drawing!
How I built it
Drawspiration currently functions on Amazon Alexa enabled devices. The back-end that powers it is written in Typescript, compiled and packaged with Gulp, and hosted with AWS Lambda. The service that provides randomized ideas is written in C# and is also hosted with AWS Lambda. I used Visual Studio Code as my editor for this project.
Challenges I ran into
- I switched how my AWS API Gateway was declared, which temporarily broke some JSON serialization that was necessary for the Drawspiration skill to run.
Accomplishments that I'm proud of
- Converting my entire Alexa backend to Typescript!
- Creating a lambda function that delivers randomized drawing inspirations! (not "infinite" quite yet)
What I learned
- How to create an AWS Lambda function with Typescript
- How to create an AWS Lambda function in C#
- How to persist session information for Alexa users
What's next for Drawspiration
- Adding a website and mobile application so that people can get drawing inspiration anywhere!