devedmonton / DES-Website

The Dev Edmonton Society website! We empower Edmonton Developers!
https://devedmonton.com
MIT License
22 stars 52 forks source link

migrate website content to `@nuxt/content` #311

Closed arashsheyda closed 4 months ago

arashsheyda commented 5 months ago

right now the content of website is coded in the pages (getting data from store), I suggest that we use @nuxt/content, this will add support for MarkDown which will be more convenient to use and manage.

I would be happy to work on this if approved.

MandyMeindersma commented 5 months ago

ooooh! So I don't actually have that much nuxt experience :P I am a Java dev by day. So I will defer to your expertise.

Tagging a couple other in case they have opinions @dcampbelld @deejayjay @DerrykBoyd

If there is no reply in a couple days i say go for it!

DerrykBoyd commented 5 months ago

ooooh! So I don't actually have that much nuxt experience :P I am a Java dev by day. So I will defer to your expertise.

Tagging a couple other in case they have opinions @dcampbelld @deejayjay @DerrykBoyd

If there is no reply in a couple days i say go for it!

Sounds good to me 🙂

deejayjay commented 5 months ago

@arashsheyda: Is there any advantage to using @nuxt/content over adding these contents directly in the pages? I haven't played around with @nuxt/content at all, so I am not sure about the impact of this change on the existing style.

PS: I don't particularly like having the content inside the Pinia store either because it is static content.

arashsheyda commented 5 months ago

@deejayjay I think the benifts of it would be:

As for the impact on our existing style, @nuxt/content doesn't add any style to the project, but we have to add some css for markdwon tags (e.g. headings, p, a fontSize & color...) and as long as we use the same values as used before I don't think it would be a problem.

a preview of how it'll look:

Screenshot 2024-03-15 at 9 01 51 AM Screenshot 2024-03-15 at 9 12 39 AM
deejayjay commented 5 months ago

@arashsheyda: In that case, I like this. This makes the content more manageable for sure. Two more questions:

arashsheyda commented 5 months ago
  • What if want to add an HTML element that is not supported by MarkDown?

@deejayjay do you mean like if you wanted to use HTML code outside of MD format? we can use any HTML tag and vue components, an example would be:

Screenshot 2024-03-15 at 4 02 38 PM

you can find more info on https://content.nuxt.com/usage/markdown



  • Will this change affect the sites SEO adversely?

no @nuxt/content is super SEO friendly. as a matter of fact there is @nuxtjs/seo module which helps you with SEO (for sitemap, robots, generating dynamic OG images and more...) and I did install that and it looks this:

@nuxt/content devedmonton
Screenshot 2024-03-15 at 4 31 45 PM Screenshot 2024-03-15 at 4 32 58 PM
deejayjay commented 5 months ago

@arashsheyda: I like how simple the content looks, but I'm a bit concerned about the learning curve, especially if someone who is not very familiar with the Vue/Nuxt environment has to work in any of the pages. What do you think @MandyMeindersma ?

MandyMeindersma commented 5 months ago

Wow those SEO results are impressive.

I agree with the learning curve. Lately I have been using this repo to teach students how to contribute to open source. It gives them a relatively easy spot to learn, especially with a language and pattern they already know. But I mean if they know html, then they should know markdown...

I love this though and I want to learn more about it so maybe the students will feel the same?

@arashsheyda Do you want to push what you currently have (doesn;t need to be perfect or working - though it looks like you already have that)and then maybe I'll tag a couple students in the pr and see if they have any complaints?

I am leaning on just doing it though cause it seems very cool

deejayjay commented 5 months ago

I really love the idea of having students contribute. Let's do it!!!

arashsheyda commented 5 months ago

@MandyMeindersma it's great to hear students contributing to open source! Nuxt has so much potential & cool features.

maybe I can just list the usefull modules and ideas so others can contribute? I think that would be better 😄

MandyMeindersma commented 5 months ago

No it looks like the changes you have now would be a little daunting for a first time contributor :P I say push it!

If you have idea's for other easy issues though I would love to see those as issues. (Unless you want to do them too, honestly I am just happy with any contributions)

Thanks so much @arashsheyda

arashsheyda commented 5 months ago

@MandyMeindersma Okay then, I'll try to open a PR tomorrow.

No I would love to see others contribute to open source projects!