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
dansasser

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
dansasser

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
dansasser

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
dansasser

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
dansasser

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
 
sulfikaralijun profile image
Sulfikar 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.