this post was submitted on 22 May 2025
29 points (93.9% liked)
Programming
20321 readers
444 users here now
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities !webdev@programming.dev
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Thank you for your answer!
Yes I've considered using Hugo data sources, but handling all events in one single data file is not really a good way to manage data because Hugo can't programmatically generate content pages from a single data file sadly.. Also again, even if I make a script able to do this, I don't think you can modify content when already created without handling single posts individually.
I could generate a "list of events" but not individual pages from it and not an RSS feed for posts which I would need for newsletters etc..
The thing with CSV is that I kinda lost track of where the actual updated data is, so I'm keeping that updated too, yeah I know I'm a mess.
All the stuff cited is needed for one single job essentially: contacts, newsletter, events.. Which is gathering self published and externally published events and sending them to a list of chosen emails + some integration with social medias.
I'm not a webdev and I thought I could solve this much more easily, but I think doing this correctly would involve using at least an headless CMS + something that is able to grab data from external APIs + some JS framework for building the frontend.
Or relying on a ready full CMS like Ghost or WordPress + theme and hosting on a VPS, which honestly is what I'm leaning towards..
I want to avoid JS if possible as I had terrible coding experiences with it, I know some Rust but webdev in rust is not really a good option from what I've learned.
What do you think?
Makes me wonder if the main content source would not be better separately, from which you generate the other stuff - e.g. Hugo Markdown page source.
I'm still not sure I grasp the fundamental structure of your data and desired workflows.
Hugo being simple Markdown files for content, if they can not be used as the source of truth, maybe that can be elsewhere, maybe even in Markdown, and you copy to Hugo? Then you'd be less restricted in your form of data and doing other things with separate tooling like sync to other services.
If you already invested into Hugo theming I'd also be hesitant about switching to a CMS/hosted solution. Especially since I suspect there's no ready solutions for your integrations? I assume you'd have to do the integrations yourself. If that's the case, my intuition says to better be independent of a CMS (with unknown efforts or how long it will remain useful). Once you're in a CMS env as a primary source it owns the data and exporting won't be as easy as if you have the primary source separately in a simpler, independent manner.
You say you have contacts, newsletter, events. You said you have Hugo (yaml), Thunderbird, Google Contacts, CSV.
Is it a matter of synchronizing contacts between them? Or more? Sending the newsletters?
I think essentially I would like to achieve something like this
I'd guess trying anything is fine if you keep a prototype and experimental mindset. You could try a CMS that looks interesting or viable. Maybe that helps getting a better idea of viability with specific products or approaches?
Personally, I'd try/experiment with what I laid out in my last comment - have data files (maybe json or markdown files) and generate and push and pull data from and to that. But that may be because of existing experience and expertise. Not necessarily the best approach for others.
Using a CMS means more integration, which has upsides and downsides.