DEV Community

Cover image for I Built an Astro Portfolio Blog Theme So You Can Setup Your Personal Website in 10 Minutes πŸš€πŸ”₯
Syakir
Syakir

Posted on β€’ Originally published at devaradise.com

I Built an Astro Portfolio Blog Theme So You Can Setup Your Personal Website in 10 Minutes πŸš€πŸ”₯

Hey there πŸ‘‹, Syakir here!

If you read my previous article about make money from coding, I encourage you to setup a portfolio or blog website to showcase your work.

In the past couple days, i have been building an simple, minimal portfolio / blog template for you so you can quckly deploy your personal website.

This template is Devolio.

Star Devolio on Github ⭐

Devolio built on top of Astro.js and Tailwind CSS as a Static website.

Devolio features

  • βœ… Minimal styling (make it your own!)
  • βœ… 100/100 Lighthouse performance
  • βœ… SEO-friendly with canonical URLs and OpenGraph data
  • βœ… Sitemap support
  • βœ… RSS Feed support
  • βœ… Markdown & MDX support
  • βœ… Dark Mode
  • βœ… Responsive
  • βœ… Post tags
  • βœ… Projects
  • βœ… Table of content
  • βœ… Comment box with Giscus app
  • βœ… Google tag / analytics integration

Devolio desktop lighthoust performance

Devolio mobile lighthoust performance

Setup your personal website with Devolio

You can deploy it to Netlify, Vercel or Cloudflare pages with just a few clicks.

Deploy to Netlify
Deploy with Vercel
Deploy to cloudflare

I personally deploy all my websites to Cloudflare pages because their free tier doesnt have bandwith limitation and allow commercial project.

After you clone and deploy it to any hosting provider you choose, dont forget to:

1. Change the theme content

Change the logo, picture post and project list. I use my own data for default content.

2. Setup environment variables



SITE='http://localhost:4321' # your site domain

# Google tag manager / analytics setting (optional)
PUBLIC_GTAG_MEASUREMENT_ID='' # Google tag measurement ID 'G-MXXXXXXX'

# Github token setting to call github repository API with higher limit
GITHUB_PERSONAL_ACCESS_TOKEN='' # Github Personal access token 'ghp_xxxxxxxxxxxxxxxxxxxxxxxxxx'

# Blog post comment setting (optional)
GISCUS_REPO='' # giscus.app repo 'devaradise/xxxxxxxx'
GISCUS_REPO_ID='' # giscus.app repo id 'R_xxxxxxx'
GISCUS_CATEGORY='' # giscus.app category 'Comments'
GISCUS_CATEGORY_ID='' # giscus.app category id 'DIC_xxxxxxxxxxx'

Enter fullscreen mode Exit fullscreen mode



  1. Start writing and building

Blogging with static website is simple. All your contents are stored in /src/content/blog/. You just need to copy or follow the existing content format to write a new post.

When you're finished, commit your changes and push it to your repository. Vercel, Netlify or Cloudflare will deploy your changes automatically.

4. Setup your domain name (optional)

To make your website more professional, consider to buy a domain name at namecheap started from $5.98 per year and point it to your website. Vercel, Netlify or Cloudflare have a feature where you can set a custom domain for your blog project.

I will receive a commission at no additional cost to you if you buy a domain from the link above. It will support me to keep producing high quality contents and templates in this website :)


If you find this template useful, please give it a star on Github, or share it so more people can make use of it :D
Thank you!

Happy coding!

Top comments (18)

Collapse
Β 
dansasser profile image
Daniel T Sasser II β€’

I LOVE ASTRO
Astro is now my framework of choice. I am also creating templates for use but still a bit behind where yours is.
I could see Astro becoming the framework of choice in the near future.

Collapse
Β 
syakirurahman profile image
Syakir β€’ β€’ Edited

Yes!! Astro FTW.
I also thinking the same.
Now, its the best static site generator. I will believe its SSR feature will be a contender for next.js in the near future

Collapse
Β 
dansasser profile image
Daniel T Sasser II β€’

I have replaced all my PHP with their SSR using express.js. I'm working on converting a site right now.

Thread Thread
Β 
syakirurahman profile image
Syakir β€’

with express.js?
how does it work?
You can just use Astro SSR right?

Thread Thread
Β 
dansasser profile image
Daniel T Sasser II β€’

Astro SSR has to have some sort of middleware such as node or netlify to handle the request. It's in the SSR docs. I use a server.js entry point and that has Astro route handlers in it. I also use separate middlewares in the /src/middleware folder to handle auth and verifications.

Thread Thread
Β 
syakirurahman profile image
Syakir β€’

How do you come up with this. Can you share any tutorial or codes related to this aproach?

Thread Thread
Β 
dansasser profile image
Daniel T Sasser II β€’

here's the link to my new article about my ssr template
dev.to/dansasser/supercharge-your-...

Thread Thread
Β 
syakirurahman profile image
Syakir β€’

thanks, i'll look into it later

Collapse
Β 
dansasser profile image
Daniel T Sasser II β€’

Also, love the pokemon game. I've also been working on some Pokemon stuff as well.

Thread Thread
Β 
syakirurahman profile image
Syakir β€’ β€’ Edited

The pokemon project is actually my old project for a technical interview :D

Collapse
Β 
chandra_pantachhetri profile image
Chandra Panta Chhetri β€’

Thank you for the template. Template looks clean and simple.

I've been hearing a lot of good things about Astro in terms of static site generation. I've used Gatsby before which is good but it has horrible mobile LightHouse scores. The desktop scores are really good.

For Astro, I've done LightHouse tests on multiple sites and it has very high scores on both mobile & desktop...I wonder why Gatsby lacks in that. Have you used Gatsby before?

Also Cloudflare Pages is awesome, I don't know how I didn't know about it before. It's great for hosting front-end projects, maybe even full stack if you use Workers.

Collapse
Β 
syakirurahman profile image
Syakir β€’

I havent use Gatsby before.. but its probably how it handle the javascript overhead. A lot of factors involved though.

Collapse
Β 
kc900201 profile image
KC β€’

Thanks a lot for this. Will be very useful for my portfolio building. I looked through some posts and found an existing site called Devencyclopedia.dev that uses ASTRO as well.

I'm a react developer that uses mostly Next.js in work, but I'm looking forward to this in personal development

Collapse
Β 
syakirurahman profile image
Syakir β€’

You're welcome! Good luck!

Collapse
Β 
alijun_dev profile image
Alijun β€’

Info linkedin bang😁

Collapse
Β 
syakirurahman profile image
Syakir β€’

/in/syakirurahman bro 😁

Collapse
Β 
shimr0d profile image
shimr0d β€’

Thanks that very generous to share ;)

Collapse
Β 
syakirurahman profile image
Syakir β€’

You're welcome. i hope you find it helpful :)

Some comments may only be visible to logged-in visitors. Sign in to view all comments.