Inspiration

Ever wanted to personalize your devices to show your personality but don't have the dozens of hours to spend photoediting to capture your personality? Or do you perhaps want to guarantee a wallpaper that nobody else could've possible downloaded from online? Using Pursonify Us you can generate statistically charged AI images that capture your individuality by analyzing your playlists

What it does

"Personify" means to bring something inanimate to life, Pursonify does exactly that by taking those boring lifeless wallpapers and bringing them to life. Pursonify first lists your most relevant playlist, upon picking a relevant playlist, it analyses several features such as loudness, energy, danceabliity, tempo, liveness playlist name, description and many more to gauge a sense of mood, setting and subject to generate device specific wallpapers for mobile and desktop.

How we built it

I used the spotify API to first parse all the data. To grab user authentication I used the inbuilt api authentication wrapper inside of flask. After that, I carefully show the user the playlists and upon a picked playlist I show a brief analysis. To generate the wallpaper I use the dalle 2 api to generate an image with a 1:1 aspect ratio. After that, image processing is done to generate it into a wallpaper worthy work of art. I then hosted the flask app on a custom domain from go daddy to make it accessible. (Although unfortunately, a developer spotify API only allows the developer to use the finished product)

Challenges we ran into

Spotify would rate limit me during development which slowed me down. Flask is also very bad session management, even when signing on two different devices, it would log in both devices with the same account.

Accomplishments that we're proud of

Making a product that actually works, although not perfectly; it is able to get quite far and generate some genuinely fascinating images. When I showed my product to my friends, some of them admited that they would genuinely use the generated wallpaper from the product.

What we learned

Enforcing proper use experience and UI on a project can exponentially increase the development complexity and limited me into certain "best practices" which restricted the leeway I had for the backend functionalit to work.

What's next for pursonify us

Traning my own stable diffusion model. The current API has many restrictions, stable diffusion can be trained on my own data set which would hyper specify the model for my specific usecase. Although I did find a good stable diffusion template, training just 5 images took 20 minutes. Between testing and then conveting it to an API with google cloud was an insurmountable task in this time limit.

Show your pursonality!

Built With

Share this project:

Updates