deprecated-packages / symplify

[DISCONTINUED] Check split packages in their own repositories :)
MIT License
621 stars 189 forks source link

[Statie] Explore social images #1326

Closed TomasVotruba closed 5 years ago

TomasVotruba commented 5 years ago

https://github.com/crazko/romanvesely.com/tree/master/src/SocialImages

Related

@crazko What does this exactly do? I think it might be useful for Statie core

crazko commented 5 years ago

It generates text in images from post titles - I use them as meta images for social sharing.

Run manually with https://github.com/crazko/romanvesely.com/blob/master/bin/social-images

screenshot 2019-01-11 at 08 43 21 screenshot 2019-01-11 at 08 46 49

... I can image it like some kind of plugin, not as a part of the core. Probably...

TomasVotruba commented 5 years ago

I see. So it creates images for all posts? I saw similar approach on Twitter, I though people do it manually :) this is better!


I used plugins before - since it was design taken from Scuplin -, but in 3 years there were only 2 made. Both by me :D and used on both of sites I maintained. Also they were pain to use - own container, own bin (as you linked), own autoloading etc. Nothing end user want to learn to publish a tweet.

Now they're part of core, much easier to use. And hard to confuse with skeleton - like your package was.

Again, with yes/no init feature this is all optional.

crazko commented 5 years ago

Yeah, for all posts. I was inspired by https://twitter.com/ThePracticalDev, but I don't know how do they do that.


Well, probably nobody was aware of the plugins possibility, neither was I until I saw it in your homepage source code :).

If it was pain to use, that's a problem, sure. But let's be inspired by https://www.gatsbyjs.org/ - they use plugins intensively.

Just be aware that not all users will use init option to set up a new page. Also, if all the functionality will be part of the core it may get very bulky in the future. But that's just my point of view.

I didn't get the skeleton note...

TomasVotruba commented 5 years ago

These 2 are exact problems of overcomplexity:

Well, probably nobody was aware of the plugins possibility, neither was I until I saw it in your homepage source code :).

I didn't get the skeleton note...

Check the link. Somebody copied your plugin assuming it's part of skeleton. The comlexity is too big. Gatsby is too big project, Statie has no such ambition and needs to be simpler than it is.

Good feature are useless if no one knows them :)

Just be aware that not all users will use init option to set up a new page.

Default way is the goal.

Also, if all the functionality will be part of the core it may get very bulky in the future.

I had same concert 2 years ago, but it didn't happen. The opposite direction - decopule everything to plugins - proven innefective and bulky. This is correction based on experience.


Yeah, for all posts. I was inspired by twitter.com/ThePracticalDev, but I don't know how do they do that.

I see. Where do you put those images after they're generated?

crazko commented 5 years ago

Check the link. Somebody copied your plugin assuming it's part of skeleton.

What to say, he probably didn't want to, or didn't have time to understand it. If the whole logic was separated in the plugin, it would be just another dependency in the composer.json. Better for me.

Good feature are useless if no one knows them :)

I had same concert 2 years ago, but it didn't happen. The opposite direction - decopule everything to plugins - proven innefective and bulky. This is correction based on experience.

I'll paraphrase it :) - good features are useless if they are not documented. I don't want to be mean, it's just my point of view.

But I don't have your experience...

I see. Where do you put those images after they're generated?

They are part of the repository. I generate an image before I publish a new post. Another good option would be to save them to the https://cloudinary.com/, especially when there are many posts on the site (like yours :)).

TomasVotruba commented 5 years ago

That's technical point of view, in reality people don't read manual unless they have to. I borrowed this experience from Steven Krug. Very good book about common sense usability.

How do you work with images then? I'd like to know the full life cycle from creating image to being never used again

crazko commented 5 years ago

Right, understood.


the workflow is:

For sure, it could check for already generated images, but since I don't have many posts it's not that crucial now.

TomasVotruba commented 5 years ago

I understand it's stored in the repository. I ask rather about where and how is the image used, seen, shared?

crazko commented 5 years ago

Ah, right. They are displayed thanks to meta tags:

https://github.com/crazko/romanvesely.com/blob/master/site/_layouts/post.latte#L6-L15

TomasVotruba commented 5 years ago

Great, that's what I wanted! So it's for sharing on social networks? Anything else?

crazko commented 5 years ago

Great :) yeah, twitter meta tags are for .. Twitter, og stands for Open Graph and is for Facebook.

Probably nothing else. Just to note that there are more tags, especially for open graph, but what I used is sufficient for correct behaviour while sharing.

TomasVotruba commented 5 years ago

Cool, all I needed to know :+1: Thanks for your patience.

I'm puting all that informatin to my brain subprocess now :thinking:

TomasVotruba commented 5 years ago

More inspiration from Sculpin: https://github.com/beryllium/icelus - btw, that's only Sculpin plugin ever made :D

crazko commented 5 years ago

Just a note here, I decided to separate the logic for image generation from my site repository into its own package. It's still WIP & code isn't any shiny, but will see :) https://github.com/crazko/post-social-image

TomasVotruba commented 5 years ago

Thanks for sharing! :+1: This will make integration easier

crazko commented 5 years ago

Finally it's out https://github.com/crazko/post-social-image. Please, have a look when you have time. Its functionality is limited, but meets my requirements.

TomasVotruba commented 5 years ago

I focus on Rector now, but thanks for sharing the package :+1:

I checked it briefly and I think we can close this issue, since your package is the solution.