Show HN: I built the most over-engineered Deal With It emoji generator

klimeryk | 662 points

This is 100% the kind of thing I was hoping for when daydreaming "what will the internet be like 20 years from now" growing up. Cool design, hilariously overpowered backend to do something basic (but do it so well), and 0 of the corporate feeling or ad apocalypse. Awesome stuff!

zamadatix | 16 hours ago

This made me smile :)

  if (looping.mode === "off") {
    // If you waited for a day, you deserve to see this workaround...
    // Since there is no way to not loop a gif using gifwrap,
    // let's just put a reeeeaaaaallly long delay after the last frame.
    return 8640000;
  }
kjaer | 13 hours ago

> Unfortunately, they were not impressed and ultimately did not offer me the job :(

Sorry to hear that. No recruiting process is perfect. They often get it wrong, as they clearly did here!

airstrike | 18 hours ago

Thank you Slack? For the confusing use of "emoji" instead "animated GIF" or sticker.

ChrisArchitect | 14 hours ago

hahah dude this is great idea. This is something very fun to play with. Maybe you can consider to add more memes related data on it.

donq1xote1 | 22 minutes ago

I'm a Google employee. After looking at this demo I can tell you're spiritually a Googler in ways I can't quite articulate.

asdfman123 | 15 hours ago

The company who didn't hire you will soon use your tool because they feel remorse for not hiring you, and now they have to "deal with it"

underlines | 16 hours ago

A rudimentary version of this used to be integrated into Giphy[1], but it seems to be broken now, meaning the market is wide open for this! ;)

[1]: https://giphy.medium.com/the-secret-giphy-slack-commands-9cb...

bewuethr | 16 hours ago

Thanks for sharing this. I love tiny projects like this, especially if they’re over engineered.

The job market is rough. I have no doubt you were considered, and they were interested, but everyone is giving their all right now. Someone likely submitted something even cooler, somehow.

steve_adams_86 | 17 hours ago

Nice job. Although I disagree with the adjective "over-engineered". I think it means using too much machinery to accomplish a simple task (bad), where here it seems to mean having lots of options (good).

ks2048 | 4 hours ago

it's useless thence I love it.

I lied, in fact I just used it to create a couple Slack emojis.

m2fkxy | 19 hours ago

This is useless, I can't make the glasses come from below, in addition to coming from above.

Also, glasses can only be black? We demand a color palette for glass colour.

EDIT: wait, I managed to make the glasses come from below

blob:https://emoji.build/50c07035-efb9-4341-9205-30adfd6b088e

I retract my indignation on the one half of my requests, but transfer it doubly so for the request of a colour palette

TZubiri | 18 hours ago

I got an error after clicking the "Deal with it" button.

    Graph successfully started running.

    Uncaught (in promise) Error: Unsupported MIME type: application/xml
        at Et.a (gif.worker-WYu6DU4i.js:23:56331)
        at Et.zt (gif.worker-WYu6DU4i.js:23:78271)
This might be caused by my workplace enforcing the Okta chrome plugin :(
jitl | 8 hours ago

Used in WhatsApp on iOS the last frame didn’t stay, it seems to stop instantly and/or loop back to too early. IIRC I used 20 frames, 250ms between frame and 2500ms for the last one. Seems to have a similar problem on Telegram.

Otherwise incredible. The customization options are much appreciated.

klabb3 | 18 hours ago

It's great. I wish you could paste an image URL too, that would be slick.

Oh, and it would be cool to have an option for the meme text to go under the image too, and to appear in the final frame of motion for the glasses. For now, I can DEAL WITH IT!

jihadjihad | 17 hours ago

Looks cool, but getting an error in Safari after clicking "Deal with it!".

Unhandled Promise Rejection: Error: Unsupported MIME type: application/xml

On this line:

Q = await getGlassesImages(p, D, O);

This is a 2020 M1, Safari 17.6.

WolfCop | 7 hours ago

Found a bug

If *after* generating a gif you change the gif size (bigger in my case) the new gif has the sunglasses appear in the same place. But if I change the size first and then generate everything work fine.

Hope I explained it right

ninju | 17 hours ago

Great way to promote yourself. Well done!

eezing | 18 hours ago

That's fantastic stuff!

Minor UX notes: - clicking the header doesn't navigate back to the "home" screen - singular page history (so the back button doesn't take you back to the previous page state)

Combined it made it not intuitive for me how to "get rid" of the selection I'd created (I eventually figured it out, but the previous two points were what I intuitively tried first)

teqsun | 18 hours ago

This is actually really neat. I like the configurability. Is there an option to change glasses size that I missed? I think that's the only thing I noticed I couldn't do when playing around with it.

* Found it, there is a small indicator in bottom right of glasses that allows dragging out to resize. Thanks all!

silisili | 16 hours ago

I like it... faved for future fuckery. Can you add background photo rotation or shades rotation?

pelagicAustral | 19 hours ago
[deleted]
| 13 hours ago

Infinite spinner for me: Stuck at "Loading AI models for face detection..." forever. I'd want to fix that before sharing it with recruiters as an example project.

Desktop Safari 18.0.1 (18619.1.26.111.11, 18619)

ryandrake | 17 hours ago

awesome tool :) thank you for making and sharing it!

https://s11.gifyu.com/images/SB5XB.gif

chiefrubberduck | 17 hours ago

My god this is so bad, I love it.

(bad in a taste way, not in the engineering way)

yapyap | 17 hours ago

Really nice, can't believe any good place would turn this down. You should be relieved, in a way.

intelVISA | 12 hours ago

I love over-built projects. Do not worry about the job offer, the current market is posting job offers that do not exist.

think_build | 14 hours ago

Nice work klimeryk!

rralian | 4 hours ago

This is great! I always joke with my girlfriend about people in billboards or whatever needing deal with it glasses and will likely use this regularly haha Thank you!

chankstein38 | 18 hours ago

Oh man, this is amazing, I love it. Well done.

stavros | 16 hours ago

Thank you for sharing this. Many laughs were had!

The company you were applying to sure missed out!

cabidaher | 12 hours ago

Cool, thanks! It desperately needs the copping feature for the original image, so I don't need other tools.

dsalaj | 17 hours ago

Please please please add a blunt/joint option. I think my favorite ever use of this meme was in Colossal (2016).

morkalork | 18 hours ago

It seems some memes just stick forever :)

Aardwolf | 18 hours ago

Thank you OP. I needed this.

i_am_a_squirrel | 14 hours ago

This could be a reCAPTCHA test, to train the models to better detect eye position and face angle.

llampx | 18 hours ago

Hell yeah, this is great. I made a similar, but much worse, thing a while back

https://jammaloo.com/DealWithIt/

It uses face-api.js to find the face, and then move the sunglasses over it. It's about a 5 meg model, so it's pretty slow to load. You can customize with a URL, or drag and drop an image on. Resizing the browser also moves the glasses around.

Very happy to see someone take the idea way way way further!

jammaloo | 17 hours ago

this is great. feature request: DEAL WITH IT caption and relative options

agos | 18 hours ago

I love the UI! Definitely gonna inspire from it for a future project

joshdavham | 17 hours ago

Love it. I'll definitely be using this!

vladde | 18 hours ago

Very clean, it just works!

navigate8310 | 15 hours ago

I adore it. I would love the ability to add frame delay (and maybe start/end position/rotation tweening?!) to each layer of glasses.

devmor | 18 hours ago

Great job, thanks for sharing.

Just noticed what company you did leave and I have even more respect for you.

Someone get this guy a job please.

b212 | 8 hours ago

:‑O

blacksqr | 13 hours ago

Thank you for this. Changed my life for the better.

howmayiannoyyou | 14 hours ago

yet the back button...

tonymet | 12 hours ago

Now this is amazing, well done.

fHr | 16 hours ago

Thanks I hate it. Seriously tho, I've already used this twice at work today.

jhickok | 16 hours ago

[dead]

cannibalXxx | 12 hours ago

[flagged]

whiteandmale | 17 hours ago