This is placeholder excerpt text. Replace it with a one- or two-sentence summary of the article — it appears on cards and as the page's meta description. Keep it under ~160 characters.
This is a placeholder article that exists only to demonstrate the layout and the available content blocks. Replace all of this with real content. To add a new article, copy this object in lib/resources.ts, give it a unique slug, and fill in the fields. The blocks below show every formatting option you can use.
This is a section heading
This is a standard paragraph block. Use these for the body of the article. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Add as many paragraph blocks as you need, in any order, interleaved with the other block types shown here.
- This is a bulleted list item.
- Lists are good for quick, scannable points.
- Add as many items as you like.
This is a callout block — use it to highlight a key takeaway or an important warning so it stands out from the surrounding text.
A numbered list example
- 1Set ordered: true on a list block to get numbered steps.
- 2Use these for step-by-step instructions.
- 3Replace this whole article before publishing.
Closing placeholder paragraph. Real articles are coming soon, written from interviews with our team — so they'll be authentic in voice and detail.
Related Service
Need help with roof inspections?

Sean O'Hare
Founder & CEO, Evolution RoofWorks
Evolution RoofWorks is a licensed, education-first roofing contractor (CCB # 251336) serving the Portland metro area.
