
After months of hard work, I'm finally launching my portfolio to show the world.
I've always believed that social profiles are more than enough and you don't really need a portfolio (in most cases). But then it's hard to show your story and personality without a separate portfolio.
I've done UX designing, technical writing, open source development, community management so it was getting hard for me to show everything using just one platform like GitHub, LinkedIn, X. That is the main reason I decided to work on my portfolio.
Today, I deployed it onanmolbaranwal.com! There are still a lot of things and features I wish to add (like PWA, UI improvements...), but I think it's good enough to show the world.
Please provide your feedback, it would mean a lot! 🙏
Be careful out there, there is also the light mode (yeah, I know)!!
In this blog, you will find my approach to building, which part was the hardest for me, the tech stack I used and the major takeaways from the project.
Which part was hardest for me?
Coding was tough for sure, at least for a few sections, but UI designing was tougher for me.
I wanted to create a wow factor and display all the necessary information in a way that's easy to understand. I struggled for a few months until I decided to ditch designing in AdobeXD and juststart building.
In the end, I kept building stuff (with a basic structure in mind) and the design process became a lot easier.
For some sections, I've taken inspiration from a few websites (mainly in terms of UX) but I've coded everything myself.
In terms of performance, it's good on desktop screens but there is a problem ofLargest Contentful Paint (LCP)
on mobile screens. I improved as much as I could and thought of releasing it. I will improve it after a couple of weeks.
Everything is optimized and automated.
I wanted a portfolio that required minimum effort to update and that was my approach to building this.
Let's take the example of the projects section.
I've created a system that fetches projects from GitHub and shows only the allowed ones, with an easy way to arrange their order.
Then, if I want to update a specific field (and leave the rest), I can do that as well.
For instance, if I want to change only the description of the project and leave the rest of the information that is fetched. I could just add that in a data and it will be automatically used, keeping the other fields as same.
Coding this section with the timeline, recommended icon and so many other things was really tough.
Almost all the other sections as well rely on just data so it's easy to update everything.
Tech Stack
Let's briefly talk about the tech stack I used:
Next.js v14
: as frontend framework (SEO-friendly)TypeScript
: as programming languageTailwind CSS
: for stylingFramer motion
: for animationForem v1 APIs
: for fetching blogsGitHub APIs
: for fetching projectsCursor free version
: as code editor (switched from VSCode)GitHub
: for storing source code (it's private)Vercel
: for deployment and live preview on every commit
I've also used different packages for different components:
embla-carousel
: for testimonialslucide icons
: for iconsreact-modern-drawer
: for sidebar in mobile screens
I created my own Icons component which made the work a lot easier with SVG files.
Fonts
I've usedOpen_Sans
,Manrope
from Google Fonts & a custom font for the heading of the links section.
Color
I'm a fan of dark modes, so I wanted to go with some dark tones as dominant ones.
I went along with Purple as a primary color. It represents loyalty so it suits me as a personality.
Sections in my portfolio
All the sections that I've added:
- Home page
- Hero
- Companies
- My Story
- Work Process
- Testimonials
- Contact
- Footer
- About
- Work experience
- Projects
- Blog
- Links
The most complex sections are Projects and Blogs.
I've used some open source components as well but it needed a lot of changes to get the final result I wanted. Most of the sections, I've done from scratch to keep the codebase clean.
In a few months, I'm also planning to add more sections likeachievements
andtech stack
.
Major Takeaways
Instead of trying to design a perfect page or obsessing over every small detail,just get started.
Focus on creating a basic structure or wireframe and then refine it as you go. The process becomes much easier once you take that first step.
I learned about a lot of things including:
- open graph image and metadata at a complex level
- optimization techniques especially about Largest Contentful Paint
and so much more while building this. You will too!
Here is the demo video that I've used on the socials.
For now, I will be taking a break and will focus more on technical writing.
I understand it's not perfect, but I've spent a lot of effort coding it.
I've always enjoyed building projects to show the world and this was really special for me. Thank you! 💜
Top comments(48)

- Email
- LocationPodgorica, Montenegro
- EducationBSc Information Technologies, University of Donja Gorica
- WorkSoftware Engineer @ Vega IT
- Joined
Great job! This website is very unique, and I love the choice of colors. The customized scrollbar is a fantastic touch - really well done! 🚀
Here are a few suggestions for improvement:
- The social media icons in the header (GitHub, X, LinkedIn) could be made easier to click; they feel a bit small or not very accessible. The same applies to the theme toggle icon.
- I would remove "Portfolio of" and leaving it as just "Anmol Baranwal" in the website title
- The trailing dot that follows the cursor feels a little slow. When hovering quickly, it can appear laggy
- The "Trusted by" section animation feels a bit too fast
I also have a few questions:
- What tool or technique did you use to create the beautiful horizontal divider?
- How did you implement the three statistic boxes (98+, 900k, 50+)?
- Is this project open-source?
You can check my new tool for analyzing dev.to postshere if you are interested. It is still in the draft phase.

- Email
- LocationIndia
- EducationComputer Science
- WorkTechnical Writer - open to opportunities
- Joined
Thank you for the detailed feedback, Nikola.
The social media icons in the header (GitHub, X, LinkedIn) could be made easier to click; they feel a bit small or not very accessible. The same applies to the theme toggle icon.
Yes, this was also flagged as an issue in PageSpeed Insights. I didn’t want them to be too big and distracting but I will adjust them as much as possible to make them more accessible.
I will work on other points as well.
What tool or technique did you use to create the beautiful horizontal divider?
It's not using a tool, simple css code. You can inspect it as well.
How did you implement the three statistic boxes (98+, 900k, 50+)?
Again, pretty much a component, each box has a different design. The icon on the back is SVG as background (with the position adjusted).
Is this project open-source?
I’ve decided not to make it open source for now since most people don't really follow the rules of license and moderating it as an individual is difficult. I might open source it later, but that won't happen for at least the next 2 or 3 months.
Thank you for checking it out. 💜

- Email
- LocationPodgorica, Montenegro
- EducationBSc Information Technologies, University of Donja Gorica
- WorkSoftware Engineer @ Vega IT
- Joined
You're welcome!

- Email
- LocationKathmandu, Nepal
- EducationBTech in Computer Science
- Pronounshe/him
- WorkSoftware Engineer
- Joined
Great job building this portfolio, Anmol. I really loved it. 👏
There's one small issue I noticed, the cursor is not working on Firefox-based browsers. I’m using Zen right now, and the custom cursor isn’t showing up. Everything else is flawless. 🔥

- Email
- LocationIndia
- EducationComputer Science
- WorkTechnical Writer - open to opportunities
- Joined
Thanks for checking it out, Shrijal! 🔥 Means a lot.
I only tested it on Chrome and Edge 😅, so I will look into the issue and fix it asap. Appreciate your feedback :)

- LocationBuenos Aires, Argentina
- EducationNUCBA
- Joined
Hi, if you 're fine with the feedback:
- Don't touch scroll.
- Don't touch the cursor.

- Email
- LocationIndia
- EducationComputer Science
- WorkTechnical Writer - open to opportunities
- Joined
Okay, I will try to adjust that. I’m aware that it’s hard to do for all browsers so that makes sense.

- LocationToronto, Ontario, Canada
- EducationDurham College
- PronounsHungry / Hungrier / Starving
- WorkFounder, Full Stack Developer and Creative Engineer
- Joined
Well done. The performance remains stable while still engaging and well suited for the audience you are delivering to. I agree with your statement "Just get started" - So true. Get the minimum requirements there so potential clients, customers and employers will see something - usually a good idea to have minimum of resume and an about section. Then focus on the big release while time permits. Great work Anmol!

- Email
- LocationIndia
- EducationComputer Science
- WorkTechnical Writer - open to opportunities
- Joined
Means a lot, Jeffrey! 💜
I wasted several months just trying to design perfect things, only to realize that later. There is an about section and will also add askills/tech stack
section later on. As for the resume, I haven’t updated it in a few months so I kinda avoided it, but I will think about it.
Thank you for the advice. Appreciate it.

- LocationKolkata, West-Bengal, India
- EducationMaulana Abul Kalam Azad University of Technology
- PronounsHe/Him
- WorkFull Stack Developer at Mahiruho Consulting Services.
- Joined
I really enjoyed reading your blog about your portfolio, and I must say, your live portfolio looks amazing! The beautiful UI work you’ve done honestly made me rethink my own design choices.
Coincidentally, I'm working on a similar idea—building a portfolio that started with a fun, number-based game. My plan is to gradually integrate more related games, blogs, and eventually my portfolio as well. I'm excited to see that the tech stack I’ve chosen aligns closely with what you’ve mentioned in your blog.
Now that I’ve come across your work, I’ll definitely be following your journey, and I hope to share my own experiences soon through a blog post.
If you have a moment, I'd love for you to check out the experimental version of my project:Live Demo. I’d greatly appreciate any feedback or suggestions you might have!

- LocationKolkata, West-Bengal, India
- EducationMaulana Abul Kalam Azad University of Technology
- PronounsHe/Him
- WorkFull Stack Developer at Mahiruho Consulting Services.
- Joined
Desperately looking for a feedback, please checkout my comment also. This will boost my confidence.

- Email
- LocationIndia
- EducationComputer Science
- WorkTechnical Writer - open to opportunities
- Joined
Thanks Dilpreet! 💜

- Email
- LocationIndia
- EducationB.Tech in Computer Science & Engineering
- PronounsHe/Him
- WorkFull Stack Developer
- Joined
Looking Awesome Anmol🔥

- Email
- LocationIndia
- EducationComputer Science
- WorkTechnical Writer - open to opportunities
- Joined
Thanks for checking this out, Kiran! Means a lot.

Great job mate, it requires lot of work to get a design like yours.
You and almost all programmers love the black theme.
Maybe in the future you consider adding different themes, for that i suggest using scss.
Keep with the good work.

- Email
- LocationIndia
- EducationComputer Science
- WorkTechnical Writer - open to opportunities
- Joined
Thanks Jose! 🔥 Almost every programmer loves dark mode haha. That’s why I put more effort into that theme (compared to light mode). I don’t think we need to add more themes, but I will definitely use scss if I ever consider it.

- Email
- LocationIndia
- EducationComputer Science
- WorkTechnical Writer - open to opportunities
- Joined
Thanks for checking it out Divya. 🙌 Means a lot.

Looks nice 👏.
Can you some insights on Largest Contentful Paint optimization,
It check your site onpagespeed.web.dev/ and got below result i am not sure if pagespeed give different result each time.
PageSpeed Insights Result

- Email
- LocationIndia
- EducationComputer Science
- WorkTechnical Writer - open to opportunities
- Joined
Thanks for the feedback, Prince.
I’ve been optimizing it for the last two days, but the LCP issue on mobile screens is caused by the paragraph. I tried fixing it, but nothing really worked. And yeah, it was giving different results each time.. I checked it multiple times.
I even said this in the post as well, there are performance issues and I will work on it in a couple of weeks.
Still, thank you for taking the time to check it out.
For further actions, you may consider blocking this person and/orreporting abuse