fix: build + build command change

This commit is contained in:
sauravdhakal12
2025-12-29 21:36:37 +05:45
parent c940743fd8
commit 1c47537b54
32 changed files with 82 additions and 82 deletions

View File

@@ -20,7 +20,7 @@ jobs:
extended: true extended: true
- name: Build site - name: Build site
run: hugo --minify run: hugo build --minify
- name: Deploy via rsync - name: Deploy via rsync
uses: appleboy/scp-action@v0.1.7 uses: appleboy/scp-action@v0.1.7

View File

@@ -1,2 +1,2 @@
<!doctype html><html lang=en dir=auto data-theme=dark><head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>404 Page not found | Saurav Dhakal</title><meta name=keywords content><meta name=description content="A personal blog"><meta name=author content="saurav"><link rel=canonical href=http://localhost:1313/404.html><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link rel=icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate hreflang=en href=http://localhost:1313/404.html><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="http://localhost:1313/404.html"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="404 Page not found"><meta property="og:description" content="A personal blog"><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="404 Page not found"><meta name=twitter:description content="A personal blog"></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=http://localhost:1313/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=http://localhost:1313/posts/ title=posts><span>posts</span></a></li><li><a href=http://localhost:1313/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><div class=not-found>404</div></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg> <!doctype html><html lang=en dir=auto data-theme=dark><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>404 Page not found | Saurav Dhakal</title><meta name=keywords content><meta name=description content="A personal blog"><meta name=author content="saurav"><link rel=canonical href=https://sauravdhakal.com.np/404.html><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link rel=icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate hreflang=en href=https://sauravdhakal.com.np/404.html><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="https://sauravdhakal.com.np/404.html"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="404 Page not found"><meta property="og:description" content="A personal blog"><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="404 Page not found"><meta name=twitter:description content="A personal blog"></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://sauravdhakal.com.np/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=https://sauravdhakal.com.np/posts/ title=posts><span>posts</span></a></li><li><a href=https://sauravdhakal.com.np/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><div class=not-found>404</div></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html> </a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html>

View File

@@ -1,3 +1,3 @@
<!doctype html><html lang=en dir=auto data-theme=dark><head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Backend Development | Saurav Dhakal</title><meta name=keywords content><meta name=description content="A personal blog"><meta name=author content="saurav"><link rel=canonical href=http://localhost:1313/categories/backend-development/><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link rel=icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=http://localhost:1313/categories/backend-development/index.xml title=rss><link rel=alternate hreflang=en href=http://localhost:1313/categories/backend-development/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="http://localhost:1313/categories/backend-development/"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="Backend Development"><meta property="og:description" content="A personal blog"><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Backend Development"><meta name=twitter:description content="A personal blog"></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=http://localhost:1313/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=http://localhost:1313/posts/ title=posts><span>posts</span></a></li><li><a href=http://localhost:1313/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=http://localhost:1313/>Home</a>&nbsp;»&nbsp;<a href=http://localhost:1313/categories/>Categories</a></div><h1>Backend Development <!doctype html><html lang=en dir=auto data-theme=dark><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Backend Development | Saurav Dhakal</title><meta name=keywords content><meta name=description content="A personal blog"><meta name=author content="saurav"><link rel=canonical href=https://sauravdhakal.com.np/categories/backend-development/><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link rel=icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://sauravdhakal.com.np/categories/backend-development/index.xml title=rss><link rel=alternate hreflang=en href=https://sauravdhakal.com.np/categories/backend-development/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="https://sauravdhakal.com.np/categories/backend-development/"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="Backend Development"><meta property="og:description" content="A personal blog"><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Backend Development"><meta name=twitter:description content="A personal blog"></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://sauravdhakal.com.np/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=https://sauravdhakal.com.np/posts/ title=posts><span>posts</span></a></li><li><a href=https://sauravdhakal.com.np/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=https://sauravdhakal.com.np/>Home</a>&nbsp;»&nbsp;<a href=https://sauravdhakal.com.np/categories/>Categories</a></div><h1>Backend Development
<a href=/categories/backend-development/index.xml title=RSS aria-label=RSS><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" height="23"><path d="M4 11a9 9 0 019 9"/><path d="M4 4a16 16 0 0116 16"/><circle cx="5" cy="19" r="1"/></svg></a></h1></header><article class="post-entry tag-entry"><header class=entry-header><h2 class=entry-hint-parent>Understanding Separation of Concerns (SoC) in NestJS</h2></header><div class=entry-content><p>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</p></div><footer class=entry-footer><span title='2025-08-19 00:00:00 +0000 UTC'>August 19, 2025</span>&nbsp;·&nbsp;<span>1 min</span>&nbsp;·&nbsp;<span>78 words</span>&nbsp;·&nbsp;<span>Saurav Dhakal</span></footer><a class=entry-link aria-label="post link to Understanding Separation of Concerns (SoC) in NestJS" href=http://localhost:1313/posts/demo/></a></article></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg> <a href=/categories/backend-development/index.xml title=RSS aria-label=RSS><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" height="23"><path d="M4 11a9 9 0 019 9"/><path d="M4 4a16 16 0 0116 16"/><circle cx="5" cy="19" r="1"/></svg></a></h1></header><article class="post-entry tag-entry"><header class=entry-header><h2 class=entry-hint-parent>Understanding Separation of Concerns (SoC) in NestJS</h2></header><div class=entry-content><p>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</p></div><footer class=entry-footer><span title='2025-08-19 00:00:00 +0000 UTC'>August 19, 2025</span>&nbsp;·&nbsp;<span>1 min</span>&nbsp;·&nbsp;<span>78 words</span>&nbsp;·&nbsp;<span>Saurav Dhakal</span></footer><a class=entry-link aria-label="post link to Understanding Separation of Concerns (SoC) in NestJS" href=https://sauravdhakal.com.np/posts/demo/></a></article></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html> </a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html>

View File

@@ -2,18 +2,18 @@
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"> <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel> <channel>
<title>Backend Development on Saurav Dhakal</title> <title>Backend Development on Saurav Dhakal</title>
<link>http://localhost:1313/categories/backend-development/</link> <link>https://sauravdhakal.com.np/categories/backend-development/</link>
<description>Recent content in Backend Development on Saurav Dhakal</description> <description>Recent content in Backend Development on Saurav Dhakal</description>
<generator>Hugo -- 0.152.2</generator> <generator>Hugo -- 0.152.2</generator>
<language>en-us</language> <language>en-us</language>
<copyright>SauravDhakal</copyright> <copyright>SauravDhakal</copyright>
<lastBuildDate>Tue, 19 Aug 2025 00:00:00 +0000</lastBuildDate> <lastBuildDate>Tue, 19 Aug 2025 00:00:00 +0000</lastBuildDate>
<atom:link href="http://localhost:1313/categories/backend-development/index.xml" rel="self" type="application/rss+xml" /> <atom:link href="https://sauravdhakal.com.np/categories/backend-development/index.xml" rel="self" type="application/rss+xml" />
<item> <item>
<title>Understanding Separation of Concerns (SoC) in NestJS</title> <title>Understanding Separation of Concerns (SoC) in NestJS</title>
<link>http://localhost:1313/posts/demo/</link> <link>https://sauravdhakal.com.np/posts/demo/</link>
<pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate> <pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate>
<guid>http://localhost:1313/posts/demo/</guid> <guid>https://sauravdhakal.com.np/posts/demo/</guid>
<description>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</description> <description>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</description>
</item> </item>
</channel> </channel>

View File

@@ -1 +1 @@
<!doctype html><html lang=en-us><head><title>http://localhost:1313/categories/backend-development/</title><link rel=canonical href=http://localhost:1313/categories/backend-development/><meta charset=utf-8><meta http-equiv=refresh content="0; url=http://localhost:1313/categories/backend-development/"></head></html> <!doctype html><html lang=en-us><head><title>https://sauravdhakal.com.np/categories/backend-development/</title><link rel=canonical href=https://sauravdhakal.com.np/categories/backend-development/><meta charset=utf-8><meta http-equiv=refresh content="0; url=https://sauravdhakal.com.np/categories/backend-development/"></head></html>

View File

@@ -1,2 +1,2 @@
<!doctype html><html lang=en dir=auto data-theme=dark><head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Categories | Saurav Dhakal</title><meta name=keywords content><meta name=description content="A personal blog"><meta name=author content="saurav"><link rel=canonical href=http://localhost:1313/categories/><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link rel=icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=http://localhost:1313/categories/index.xml title=rss><link rel=alternate hreflang=en href=http://localhost:1313/categories/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="http://localhost:1313/categories/"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="Categories"><meta property="og:description" content="A personal blog"><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Categories"><meta name=twitter:description content="A personal blog"></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=http://localhost:1313/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=http://localhost:1313/posts/ title=posts><span>posts</span></a></li><li><a href=http://localhost:1313/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><header class=page-header><h1>Categories</h1></header><ul class=terms-tags><li><a href=http://localhost:1313/categories/backend-development/>Backend Development <sup><strong><sup>1</sup></strong></sup></a></li><li><a href=http://localhost:1313/categories/nestjs/>NestJS <sup><strong><sup>1</sup></strong></sup></a></li></ul></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg> <!doctype html><html lang=en dir=auto data-theme=dark><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Categories | Saurav Dhakal</title><meta name=keywords content><meta name=description content="A personal blog"><meta name=author content="saurav"><link rel=canonical href=https://sauravdhakal.com.np/categories/><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link rel=icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://sauravdhakal.com.np/categories/index.xml title=rss><link rel=alternate hreflang=en href=https://sauravdhakal.com.np/categories/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="https://sauravdhakal.com.np/categories/"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="Categories"><meta property="og:description" content="A personal blog"><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Categories"><meta name=twitter:description content="A personal blog"></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://sauravdhakal.com.np/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=https://sauravdhakal.com.np/posts/ title=posts><span>posts</span></a></li><li><a href=https://sauravdhakal.com.np/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><header class=page-header><h1>Categories</h1></header><ul class=terms-tags><li><a href=https://sauravdhakal.com.np/categories/backend-development/>Backend Development <sup><strong><sup>1</sup></strong></sup></a></li><li><a href=https://sauravdhakal.com.np/categories/nestjs/>NestJS <sup><strong><sup>1</sup></strong></sup></a></li></ul></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html> </a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html>

View File

@@ -2,25 +2,25 @@
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"> <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel> <channel>
<title>Categories on Saurav Dhakal</title> <title>Categories on Saurav Dhakal</title>
<link>http://localhost:1313/categories/</link> <link>https://sauravdhakal.com.np/categories/</link>
<description>Recent content in Categories on Saurav Dhakal</description> <description>Recent content in Categories on Saurav Dhakal</description>
<generator>Hugo -- 0.152.2</generator> <generator>Hugo -- 0.152.2</generator>
<language>en-us</language> <language>en-us</language>
<copyright>SauravDhakal</copyright> <copyright>SauravDhakal</copyright>
<lastBuildDate>Tue, 19 Aug 2025 00:00:00 +0000</lastBuildDate> <lastBuildDate>Tue, 19 Aug 2025 00:00:00 +0000</lastBuildDate>
<atom:link href="http://localhost:1313/categories/index.xml" rel="self" type="application/rss+xml" /> <atom:link href="https://sauravdhakal.com.np/categories/index.xml" rel="self" type="application/rss+xml" />
<item> <item>
<title>Backend Development</title> <title>Backend Development</title>
<link>http://localhost:1313/categories/backend-development/</link> <link>https://sauravdhakal.com.np/categories/backend-development/</link>
<pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate> <pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate>
<guid>http://localhost:1313/categories/backend-development/</guid> <guid>https://sauravdhakal.com.np/categories/backend-development/</guid>
<description></description> <description></description>
</item> </item>
<item> <item>
<title>NestJS</title> <title>NestJS</title>
<link>http://localhost:1313/categories/nestjs/</link> <link>https://sauravdhakal.com.np/categories/nestjs/</link>
<pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate> <pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate>
<guid>http://localhost:1313/categories/nestjs/</guid> <guid>https://sauravdhakal.com.np/categories/nestjs/</guid>
<description></description> <description></description>
</item> </item>
</channel> </channel>

View File

@@ -1,3 +1,3 @@
<!doctype html><html lang=en dir=auto data-theme=dark><head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>NestJS | Saurav Dhakal</title><meta name=keywords content><meta name=description content="A personal blog"><meta name=author content="saurav"><link rel=canonical href=http://localhost:1313/categories/nestjs/><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link rel=icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=http://localhost:1313/categories/nestjs/index.xml title=rss><link rel=alternate hreflang=en href=http://localhost:1313/categories/nestjs/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="http://localhost:1313/categories/nestjs/"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="NestJS"><meta property="og:description" content="A personal blog"><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="NestJS"><meta name=twitter:description content="A personal blog"></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=http://localhost:1313/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=http://localhost:1313/posts/ title=posts><span>posts</span></a></li><li><a href=http://localhost:1313/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=http://localhost:1313/>Home</a>&nbsp;»&nbsp;<a href=http://localhost:1313/categories/>Categories</a></div><h1>NestJS <!doctype html><html lang=en dir=auto data-theme=dark><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>NestJS | Saurav Dhakal</title><meta name=keywords content><meta name=description content="A personal blog"><meta name=author content="saurav"><link rel=canonical href=https://sauravdhakal.com.np/categories/nestjs/><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link rel=icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://sauravdhakal.com.np/categories/nestjs/index.xml title=rss><link rel=alternate hreflang=en href=https://sauravdhakal.com.np/categories/nestjs/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="https://sauravdhakal.com.np/categories/nestjs/"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="NestJS"><meta property="og:description" content="A personal blog"><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="NestJS"><meta name=twitter:description content="A personal blog"></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://sauravdhakal.com.np/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=https://sauravdhakal.com.np/posts/ title=posts><span>posts</span></a></li><li><a href=https://sauravdhakal.com.np/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=https://sauravdhakal.com.np/>Home</a>&nbsp;»&nbsp;<a href=https://sauravdhakal.com.np/categories/>Categories</a></div><h1>NestJS
<a href=/categories/nestjs/index.xml title=RSS aria-label=RSS><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" height="23"><path d="M4 11a9 9 0 019 9"/><path d="M4 4a16 16 0 0116 16"/><circle cx="5" cy="19" r="1"/></svg></a></h1></header><article class="post-entry tag-entry"><header class=entry-header><h2 class=entry-hint-parent>Understanding Separation of Concerns (SoC) in NestJS</h2></header><div class=entry-content><p>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</p></div><footer class=entry-footer><span title='2025-08-19 00:00:00 +0000 UTC'>August 19, 2025</span>&nbsp;·&nbsp;<span>1 min</span>&nbsp;·&nbsp;<span>78 words</span>&nbsp;·&nbsp;<span>Saurav Dhakal</span></footer><a class=entry-link aria-label="post link to Understanding Separation of Concerns (SoC) in NestJS" href=http://localhost:1313/posts/demo/></a></article></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg> <a href=/categories/nestjs/index.xml title=RSS aria-label=RSS><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" height="23"><path d="M4 11a9 9 0 019 9"/><path d="M4 4a16 16 0 0116 16"/><circle cx="5" cy="19" r="1"/></svg></a></h1></header><article class="post-entry tag-entry"><header class=entry-header><h2 class=entry-hint-parent>Understanding Separation of Concerns (SoC) in NestJS</h2></header><div class=entry-content><p>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</p></div><footer class=entry-footer><span title='2025-08-19 00:00:00 +0000 UTC'>August 19, 2025</span>&nbsp;·&nbsp;<span>1 min</span>&nbsp;·&nbsp;<span>78 words</span>&nbsp;·&nbsp;<span>Saurav Dhakal</span></footer><a class=entry-link aria-label="post link to Understanding Separation of Concerns (SoC) in NestJS" href=https://sauravdhakal.com.np/posts/demo/></a></article></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html> </a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html>

View File

@@ -2,18 +2,18 @@
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"> <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel> <channel>
<title>NestJS on Saurav Dhakal</title> <title>NestJS on Saurav Dhakal</title>
<link>http://localhost:1313/categories/nestjs/</link> <link>https://sauravdhakal.com.np/categories/nestjs/</link>
<description>Recent content in NestJS on Saurav Dhakal</description> <description>Recent content in NestJS on Saurav Dhakal</description>
<generator>Hugo -- 0.152.2</generator> <generator>Hugo -- 0.152.2</generator>
<language>en-us</language> <language>en-us</language>
<copyright>SauravDhakal</copyright> <copyright>SauravDhakal</copyright>
<lastBuildDate>Tue, 19 Aug 2025 00:00:00 +0000</lastBuildDate> <lastBuildDate>Tue, 19 Aug 2025 00:00:00 +0000</lastBuildDate>
<atom:link href="http://localhost:1313/categories/nestjs/index.xml" rel="self" type="application/rss+xml" /> <atom:link href="https://sauravdhakal.com.np/categories/nestjs/index.xml" rel="self" type="application/rss+xml" />
<item> <item>
<title>Understanding Separation of Concerns (SoC) in NestJS</title> <title>Understanding Separation of Concerns (SoC) in NestJS</title>
<link>http://localhost:1313/posts/demo/</link> <link>https://sauravdhakal.com.np/posts/demo/</link>
<pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate> <pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate>
<guid>http://localhost:1313/posts/demo/</guid> <guid>https://sauravdhakal.com.np/posts/demo/</guid>
<description>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</description> <description>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</description>
</item> </item>
</channel> </channel>

View File

@@ -1 +1 @@
<!doctype html><html lang=en-us><head><title>http://localhost:1313/categories/nestjs/</title><link rel=canonical href=http://localhost:1313/categories/nestjs/><meta charset=utf-8><meta http-equiv=refresh content="0; url=http://localhost:1313/categories/nestjs/"></head></html> <!doctype html><html lang=en-us><head><title>https://sauravdhakal.com.np/categories/nestjs/</title><link rel=canonical href=https://sauravdhakal.com.np/categories/nestjs/><meta charset=utf-8><meta http-equiv=refresh content="0; url=https://sauravdhakal.com.np/categories/nestjs/"></head></html>

View File

@@ -1,4 +1,4 @@
<!doctype html><html lang=en dir=auto data-theme=dark><head><meta name=generator content="Hugo 0.152.2"><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Saurav Dhakal</title><meta name=keywords content="Blog,Portfolio,SauravDhakal,Saurav,Dhakal,Backend"><meta name=description content="A personal blog"><meta name=author content="saurav"><link rel=canonical href=http://localhost:1313/><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link rel=icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=http://localhost:1313/index.xml title=rss><link rel=alternate type=application/json href=http://localhost:1313/index.json title=json><link rel=alternate hreflang=en href=http://localhost:1313/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="http://localhost:1313/"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="Saurav Dhakal"><meta property="og:description" content="A personal blog"><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Saurav Dhakal"><meta name=twitter:description content="A personal blog"><script type=application/ld+json>{"@context":"https://schema.org","@type":"Organization","name":"Saurav Dhakal","url":"http://localhost:1313/","description":"A personal blog","logo":"http://localhost:1313/%3Clink%20/%20abs%20url%3E","sameAs":["https://github.com/sauravdhakal12","https://www.linkedin.com/in/saurav-dhakal-9a8b27220/","https://x.com/s0x1495"]}</script></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=http://localhost:1313/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=http://localhost:1313/posts/ title=posts><span>posts</span></a></li><li><a href=http://localhost:1313/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><article class="first-entry home-info"><header class=entry-header><h1>Hi there 👋, I&rsquo;m Saurav!</h1></header><div class=entry-content><p>Im a software engineer who enjoys building thoughtful systems and learning how things really work. This is my digital garden - notes, projects, and lessons along the way.</p><ul><li></li></ul><p>Checkout my <a href=files/CV.pdf>CV</a> for my works and projects.</p></div><footer class=entry-footer><div class=social-icons><a href=https://github.com/sauravdhakal12 target=_blank rel="noopener noreferrer me" title=Github><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg> <!doctype html><html lang=en dir=auto data-theme=dark><head><meta name=generator content="Hugo 0.152.2"><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Saurav Dhakal</title><meta name=keywords content="Blog,Portfolio,SauravDhakal,Saurav,Dhakal,Backend"><meta name=description content="A personal blog"><meta name=author content="saurav"><link rel=canonical href=https://sauravdhakal.com.np/><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link rel=icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://sauravdhakal.com.np/index.xml title=rss><link rel=alternate type=application/json href=https://sauravdhakal.com.np/index.json title=json><link rel=alternate hreflang=en href=https://sauravdhakal.com.np/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="https://sauravdhakal.com.np/"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="Saurav Dhakal"><meta property="og:description" content="A personal blog"><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Saurav Dhakal"><meta name=twitter:description content="A personal blog"><script type=application/ld+json>{"@context":"https://schema.org","@type":"Organization","name":"Saurav Dhakal","url":"https://sauravdhakal.com.np/","description":"A personal blog","logo":"https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E","sameAs":["https://github.com/sauravdhakal12","https://www.linkedin.com/in/saurav-dhakal-9a8b27220/","https://x.com/s0x1495"]}</script></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://sauravdhakal.com.np/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=https://sauravdhakal.com.np/posts/ title=posts><span>posts</span></a></li><li><a href=https://sauravdhakal.com.np/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><article class="first-entry home-info"><header class=entry-header><h1>Hi there 👋, I&rsquo;m Saurav!</h1></header><div class=entry-content><p>Im a software engineer who enjoys building thoughtful systems and learning how things really work. This is my digital garden - notes, projects, and lessons along the way.</p><ul><li></li></ul><p>Checkout my <a href=files/CV.pdf>CV</a> for my works and projects.</p></div><footer class=entry-footer><div class=social-icons><a href=https://github.com/sauravdhakal12 target=_blank rel="noopener noreferrer me" title=Github><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg>
</a><a href=https://www.linkedin.com/in/saurav-dhakal-9a8b27220/ target=_blank rel="noopener noreferrer me" title=Linkedin><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 8a6 6 0 016 6v7h-4v-7a2 2 0 00-2-2 2 2 0 00-2 2v7h-4v-7a6 6 0 016-6z"/><rect x="2" y="9" width="4" height="12"/><circle cx="4" cy="4" r="2"/></svg> </a><a href=https://www.linkedin.com/in/saurav-dhakal-9a8b27220/ target=_blank rel="noopener noreferrer me" title=Linkedin><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 8a6 6 0 016 6v7h-4v-7a2 2 0 00-2-2 2 2 0 00-2 2v7h-4v-7a6 6 0 016-6z"/><rect x="2" y="9" width="4" height="12"/><circle cx="4" cy="4" r="2"/></svg>
</a><a href=https://x.com/s0x1495 target=_blank rel="noopener noreferrer me" title=X><svg viewBox="0 0 24 24" fill="currentColor"><path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"/></svg></a></div></footer></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Understanding Separation of Concerns (SoC) in NestJS</h2></header><div class=entry-content><p>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</p></div><footer class=entry-footer><span title='2025-08-19 00:00:00 +0000 UTC'>August 19, 2025</span>&nbsp;·&nbsp;<span>1 min</span>&nbsp;·&nbsp;<span>78 words</span>&nbsp;·&nbsp;<span>Saurav Dhakal</span></footer><a class=entry-link aria-label="post link to Understanding Separation of Concerns (SoC) in NestJS" href=http://localhost:1313/posts/demo/></a></article></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg> </a><a href=https://x.com/s0x1495 target=_blank rel="noopener noreferrer me" title=X><svg viewBox="0 0 24 24" fill="currentColor"><path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"/></svg></a></div></footer></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Understanding Separation of Concerns (SoC) in NestJS</h2></header><div class=entry-content><p>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</p></div><footer class=entry-footer><span title='2025-08-19 00:00:00 +0000 UTC'>August 19, 2025</span>&nbsp;·&nbsp;<span>1 min</span>&nbsp;·&nbsp;<span>78 words</span>&nbsp;·&nbsp;<span>Saurav Dhakal</span></footer><a class=entry-link aria-label="post link to Understanding Separation of Concerns (SoC) in NestJS" href=https://sauravdhakal.com.np/posts/demo/></a></article></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html> </a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html>

View File

@@ -1 +1 @@
[{"content":"When building applications, one of the most important design principles to keep in mind is Separation of Concerns (SoC). NestJS, with its modular architecture, makes applying SoC almost effortless — but understanding why it matters and how to use it properly will help you write cleaner, testable, and future-proof code.\nWhat is Separation of Concerns and Why it Matters? The basic idea is:\nA program should be divided into distinct sections, where each section addresses a single responsibility.\n","permalink":"http://localhost:1313/posts/demo/","summary":"A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.","title":"Understanding Separation of Concerns (SoC) in NestJS"}] [{"content":"When building applications, one of the most important design principles to keep in mind is Separation of Concerns (SoC). NestJS, with its modular architecture, makes applying SoC almost effortless — but understanding why it matters and how to use it properly will help you write cleaner, testable, and future-proof code.\nWhat is Separation of Concerns and Why it Matters? The basic idea is:\nA program should be divided into distinct sections, where each section addresses a single responsibility.\n","permalink":"https://sauravdhakal.com.np/posts/demo/","summary":"A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.","title":"Understanding Separation of Concerns (SoC) in NestJS"}]

View File

@@ -2,18 +2,18 @@
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"> <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel> <channel>
<title>Saurav Dhakal</title> <title>Saurav Dhakal</title>
<link>http://localhost:1313/</link> <link>https://sauravdhakal.com.np/</link>
<description>Recent content on Saurav Dhakal</description> <description>Recent content on Saurav Dhakal</description>
<generator>Hugo -- 0.152.2</generator> <generator>Hugo -- 0.152.2</generator>
<language>en-us</language> <language>en-us</language>
<copyright>SauravDhakal</copyright> <copyright>SauravDhakal</copyright>
<lastBuildDate>Tue, 19 Aug 2025 00:00:00 +0000</lastBuildDate> <lastBuildDate>Tue, 19 Aug 2025 00:00:00 +0000</lastBuildDate>
<atom:link href="http://localhost:1313/index.xml" rel="self" type="application/rss+xml" /> <atom:link href="https://sauravdhakal.com.np/index.xml" rel="self" type="application/rss+xml" />
<item> <item>
<title>Understanding Separation of Concerns (SoC) in NestJS</title> <title>Understanding Separation of Concerns (SoC) in NestJS</title>
<link>http://localhost:1313/posts/demo/</link> <link>https://sauravdhakal.com.np/posts/demo/</link>
<pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate> <pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate>
<guid>http://localhost:1313/posts/demo/</guid> <guid>https://sauravdhakal.com.np/posts/demo/</guid>
<description>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</description> <description>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</description>
</item> </item>
</channel> </channel>

View File

@@ -1 +1 @@
<!doctype html><html lang=en-us><head><title>http://localhost:1313/</title><link rel=canonical href=http://localhost:1313/><meta charset=utf-8><meta http-equiv=refresh content="0; url=http://localhost:1313/"></head></html> <!doctype html><html lang=en-us><head><title>https://sauravdhakal.com.np/</title><link rel=canonical href=https://sauravdhakal.com.np/><meta charset=utf-8><meta http-equiv=refresh content="0; url=https://sauravdhakal.com.np/"></head></html>

File diff suppressed because one or more lines are too long

View File

@@ -1,3 +1,3 @@
<!doctype html><html lang=en dir=auto data-theme=dark><head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Posts | Saurav Dhakal</title><meta name=keywords content><meta name=description content="Posts - Saurav Dhakal"><meta name=author content="saurav"><link rel=canonical href=http://localhost:1313/posts/><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link rel=icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=http://localhost:1313/posts/index.xml title=rss><link rel=alternate hreflang=en href=http://localhost:1313/posts/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="http://localhost:1313/posts/"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="Posts"><meta property="og:description" content="A personal blog"><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Posts"><meta name=twitter:description content="A personal blog"><script type=application/ld+json>{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Posts","item":"http://localhost:1313/posts/"}]}</script></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=http://localhost:1313/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=http://localhost:1313/posts/ title=posts><span class=active>posts</span></a></li><li><a href=http://localhost:1313/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=http://localhost:1313/>Home</a></div><h1>Posts <!doctype html><html lang=en dir=auto data-theme=dark><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Posts | Saurav Dhakal</title><meta name=keywords content><meta name=description content="Posts - Saurav Dhakal"><meta name=author content="saurav"><link rel=canonical href=https://sauravdhakal.com.np/posts/><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link rel=icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://sauravdhakal.com.np/posts/index.xml title=rss><link rel=alternate hreflang=en href=https://sauravdhakal.com.np/posts/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="https://sauravdhakal.com.np/posts/"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="Posts"><meta property="og:description" content="A personal blog"><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Posts"><meta name=twitter:description content="A personal blog"><script type=application/ld+json>{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Posts","item":"https://sauravdhakal.com.np/posts/"}]}</script></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://sauravdhakal.com.np/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=https://sauravdhakal.com.np/posts/ title=posts><span class=active>posts</span></a></li><li><a href=https://sauravdhakal.com.np/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=https://sauravdhakal.com.np/>Home</a></div><h1>Posts
<a href=/posts/index.xml title=RSS aria-label=RSS><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" height="23"><path d="M4 11a9 9 0 019 9"/><path d="M4 4a16 16 0 0116 16"/><circle cx="5" cy="19" r="1"/></svg></a></h1></header><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Understanding Separation of Concerns (SoC) in NestJS</h2></header><div class=entry-content><p>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</p></div><footer class=entry-footer><span title='2025-08-19 00:00:00 +0000 UTC'>August 19, 2025</span>&nbsp;·&nbsp;<span>1 min</span>&nbsp;·&nbsp;<span>78 words</span>&nbsp;·&nbsp;<span>Saurav Dhakal</span></footer><a class=entry-link aria-label="post link to Understanding Separation of Concerns (SoC) in NestJS" href=http://localhost:1313/posts/demo/></a></article></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg> <a href=/posts/index.xml title=RSS aria-label=RSS><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" height="23"><path d="M4 11a9 9 0 019 9"/><path d="M4 4a16 16 0 0116 16"/><circle cx="5" cy="19" r="1"/></svg></a></h1></header><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Understanding Separation of Concerns (SoC) in NestJS</h2></header><div class=entry-content><p>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</p></div><footer class=entry-footer><span title='2025-08-19 00:00:00 +0000 UTC'>August 19, 2025</span>&nbsp;·&nbsp;<span>1 min</span>&nbsp;·&nbsp;<span>78 words</span>&nbsp;·&nbsp;<span>Saurav Dhakal</span></footer><a class=entry-link aria-label="post link to Understanding Separation of Concerns (SoC) in NestJS" href=https://sauravdhakal.com.np/posts/demo/></a></article></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html> </a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html>

View File

@@ -2,18 +2,18 @@
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"> <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel> <channel>
<title>Posts on Saurav Dhakal</title> <title>Posts on Saurav Dhakal</title>
<link>http://localhost:1313/posts/</link> <link>https://sauravdhakal.com.np/posts/</link>
<description>Recent content in Posts on Saurav Dhakal</description> <description>Recent content in Posts on Saurav Dhakal</description>
<generator>Hugo -- 0.152.2</generator> <generator>Hugo -- 0.152.2</generator>
<language>en-us</language> <language>en-us</language>
<copyright>SauravDhakal</copyright> <copyright>SauravDhakal</copyright>
<lastBuildDate>Tue, 19 Aug 2025 00:00:00 +0000</lastBuildDate> <lastBuildDate>Tue, 19 Aug 2025 00:00:00 +0000</lastBuildDate>
<atom:link href="http://localhost:1313/posts/index.xml" rel="self" type="application/rss+xml" /> <atom:link href="https://sauravdhakal.com.np/posts/index.xml" rel="self" type="application/rss+xml" />
<item> <item>
<title>Understanding Separation of Concerns (SoC) in NestJS</title> <title>Understanding Separation of Concerns (SoC) in NestJS</title>
<link>http://localhost:1313/posts/demo/</link> <link>https://sauravdhakal.com.np/posts/demo/</link>
<pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate> <pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate>
<guid>http://localhost:1313/posts/demo/</guid> <guid>https://sauravdhakal.com.np/posts/demo/</guid>
<description>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</description> <description>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</description>
</item> </item>
</channel> </channel>

View File

@@ -1 +1 @@
<!doctype html><html lang=en-us><head><title>http://localhost:1313/posts/</title><link rel=canonical href=http://localhost:1313/posts/><meta charset=utf-8><meta http-equiv=refresh content="0; url=http://localhost:1313/posts/"></head></html> <!doctype html><html lang=en-us><head><title>https://sauravdhakal.com.np/posts/</title><link rel=canonical href=https://sauravdhakal.com.np/posts/><meta charset=utf-8><meta http-equiv=refresh content="0; url=https://sauravdhakal.com.np/posts/"></head></html>

View File

@@ -1,3 +1,3 @@
User-agent: * User-agent: *
Disallow: Disallow:
Sitemap: http://localhost:1313/sitemap.xml Sitemap: https://sauravdhakal.com.np/sitemap.xml

View File

@@ -1,2 +1,2 @@
<!doctype html><html lang=en dir=auto data-theme=dark><head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Search | Saurav Dhakal</title><meta name=keywords content><meta name=description content="search"><meta name=author content="saurav"><link rel=canonical href=http://localhost:1313/search/><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link crossorigin=anonymous rel=preload as=fetch href=../index.json><script defer crossorigin=anonymous src=/assets/js/search.b58269539d49d6ca2d32b61a53054d36df61ba713a257cbe66f257e175cb4d73.js integrity="sha256-tYJpU51J1sotMrYaUwVNNt9hunE6JXy+ZvJX4XXLTXM="></script><link rel=icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate hreflang=en href=http://localhost:1313/search/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="http://localhost:1313/search/"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="Search"><meta property="og:description" content="search"><meta property="og:locale" content="en-us"><meta property="og:type" content="article"><meta name=twitter:card content="summary"><meta name=twitter:title content="Search"><meta name=twitter:description content="search"><script type=application/ld+json>{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Search","item":"http://localhost:1313/search/"}]}</script><script type=application/ld+json>{"@context":"https://schema.org","@type":"BlogPosting","headline":"Search","name":"Search","description":"search","keywords":[],"articleBody":"","wordCount":"0","inLanguage":"en","datePublished":"0001-01-01T00:00:00Z","dateModified":"0001-01-01T00:00:00Z","author":{"@type":"Person","name":"saurav"},"mainEntityOfPage":{"@type":"WebPage","@id":"http://localhost:1313/search/"},"publisher":{"@type":"Organization","name":"Saurav Dhakal","logo":{"@type":"ImageObject","url":"http://localhost:1313/%3Clink%20/%20abs%20url%3E"}}}</script></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=http://localhost:1313/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=http://localhost:1313/posts/ title=posts><span>posts</span></a></li><li><a href=http://localhost:1313/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><header class=page-header><h1>Search <svg width="28" height="28" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"/><line x1="21" y1="21" x2="16.65" y2="16.65"/></svg></h1><div class=post-meta></div></header><div id=searchbox><input id=searchInput autofocus placeholder="placeholder text in search input box" aria-label=search type=search autocomplete=off maxlength=64><ul id=searchResults aria-label="search results"></ul></div></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg> <!doctype html><html lang=en dir=auto data-theme=dark><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Search | Saurav Dhakal</title><meta name=keywords content><meta name=description content="search"><meta name=author content="saurav"><link rel=canonical href=https://sauravdhakal.com.np/search/><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link crossorigin=anonymous rel=preload as=fetch href=../index.json><script defer crossorigin=anonymous src=/assets/js/search.b58269539d49d6ca2d32b61a53054d36df61ba713a257cbe66f257e175cb4d73.js integrity="sha256-tYJpU51J1sotMrYaUwVNNt9hunE6JXy+ZvJX4XXLTXM="></script><link rel=icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate hreflang=en href=https://sauravdhakal.com.np/search/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="https://sauravdhakal.com.np/search/"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="Search"><meta property="og:description" content="search"><meta property="og:locale" content="en-us"><meta property="og:type" content="article"><meta name=twitter:card content="summary"><meta name=twitter:title content="Search"><meta name=twitter:description content="search"><script type=application/ld+json>{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Search","item":"https://sauravdhakal.com.np/search/"}]}</script><script type=application/ld+json>{"@context":"https://schema.org","@type":"BlogPosting","headline":"Search","name":"Search","description":"search","keywords":[],"articleBody":"","wordCount":"0","inLanguage":"en","datePublished":"0001-01-01T00:00:00Z","dateModified":"0001-01-01T00:00:00Z","author":{"@type":"Person","name":"saurav"},"mainEntityOfPage":{"@type":"WebPage","@id":"https://sauravdhakal.com.np/search/"},"publisher":{"@type":"Organization","name":"Saurav Dhakal","logo":{"@type":"ImageObject","url":"https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E"}}}</script></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://sauravdhakal.com.np/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=https://sauravdhakal.com.np/posts/ title=posts><span>posts</span></a></li><li><a href=https://sauravdhakal.com.np/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><header class=page-header><h1>Search <svg width="28" height="28" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"/><line x1="21" y1="21" x2="16.65" y2="16.65"/></svg></h1><div class=post-meta></div></header><div id=searchbox><input id=searchInput autofocus placeholder="placeholder text in search input box" aria-label=search type=search autocomplete=off maxlength=64><ul id=searchResults aria-label="search results"></ul></div></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html> </a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html>

View File

@@ -2,36 +2,36 @@
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xhtml="http://www.w3.org/1999/xhtml"> xmlns:xhtml="http://www.w3.org/1999/xhtml">
<url> <url>
<loc>http://localhost:1313/tags/architecture/</loc> <loc>https://sauravdhakal.com.np/tags/architecture/</loc>
<lastmod>2025-08-19T00:00:00+00:00</lastmod> <lastmod>2025-08-19T00:00:00+00:00</lastmod>
</url><url> </url><url>
<loc>http://localhost:1313/categories/backend-development/</loc> <loc>https://sauravdhakal.com.np/categories/backend-development/</loc>
<lastmod>2025-08-19T00:00:00+00:00</lastmod> <lastmod>2025-08-19T00:00:00+00:00</lastmod>
</url><url> </url><url>
<loc>http://localhost:1313/categories/</loc> <loc>https://sauravdhakal.com.np/categories/</loc>
<lastmod>2025-08-19T00:00:00+00:00</lastmod> <lastmod>2025-08-19T00:00:00+00:00</lastmod>
</url><url> </url><url>
<loc>http://localhost:1313/tags/nestjs/</loc> <loc>https://sauravdhakal.com.np/tags/nestjs/</loc>
<lastmod>2025-08-19T00:00:00+00:00</lastmod> <lastmod>2025-08-19T00:00:00+00:00</lastmod>
</url><url> </url><url>
<loc>http://localhost:1313/categories/nestjs/</loc> <loc>https://sauravdhakal.com.np/categories/nestjs/</loc>
<lastmod>2025-08-19T00:00:00+00:00</lastmod> <lastmod>2025-08-19T00:00:00+00:00</lastmod>
</url><url> </url><url>
<loc>http://localhost:1313/posts/</loc> <loc>https://sauravdhakal.com.np/posts/</loc>
<lastmod>2025-08-19T00:00:00+00:00</lastmod> <lastmod>2025-08-19T00:00:00+00:00</lastmod>
</url><url> </url><url>
<loc>http://localhost:1313/</loc> <loc>https://sauravdhakal.com.np/</loc>
<lastmod>2025-08-19T00:00:00+00:00</lastmod> <lastmod>2025-08-19T00:00:00+00:00</lastmod>
</url><url> </url><url>
<loc>http://localhost:1313/tags/</loc> <loc>https://sauravdhakal.com.np/tags/</loc>
<lastmod>2025-08-19T00:00:00+00:00</lastmod> <lastmod>2025-08-19T00:00:00+00:00</lastmod>
</url><url> </url><url>
<loc>http://localhost:1313/tags/typescript/</loc> <loc>https://sauravdhakal.com.np/tags/typescript/</loc>
<lastmod>2025-08-19T00:00:00+00:00</lastmod> <lastmod>2025-08-19T00:00:00+00:00</lastmod>
</url><url> </url><url>
<loc>http://localhost:1313/posts/demo/</loc> <loc>https://sauravdhakal.com.np/posts/demo/</loc>
<lastmod>2025-08-19T00:00:00+00:00</lastmod> <lastmod>2025-08-19T00:00:00+00:00</lastmod>
</url><url> </url><url>
<loc>http://localhost:1313/search/</loc> <loc>https://sauravdhakal.com.np/search/</loc>
</url> </url>
</urlset> </urlset>

View File

@@ -1,3 +1,3 @@
<!doctype html><html lang=en dir=auto data-theme=dark><head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Architecture | Saurav Dhakal</title><meta name=keywords content><meta name=description content="A personal blog"><meta name=author content="saurav"><link rel=canonical href=http://localhost:1313/tags/architecture/><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link rel=icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=http://localhost:1313/tags/architecture/index.xml title=rss><link rel=alternate hreflang=en href=http://localhost:1313/tags/architecture/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="http://localhost:1313/tags/architecture/"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="Architecture"><meta property="og:description" content="A personal blog"><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Architecture"><meta name=twitter:description content="A personal blog"></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=http://localhost:1313/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=http://localhost:1313/posts/ title=posts><span>posts</span></a></li><li><a href=http://localhost:1313/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=http://localhost:1313/>Home</a>&nbsp;»&nbsp;<a href=http://localhost:1313/tags/>Tags</a></div><h1>Architecture <!doctype html><html lang=en dir=auto data-theme=dark><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Architecture | Saurav Dhakal</title><meta name=keywords content><meta name=description content="A personal blog"><meta name=author content="saurav"><link rel=canonical href=https://sauravdhakal.com.np/tags/architecture/><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link rel=icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://sauravdhakal.com.np/tags/architecture/index.xml title=rss><link rel=alternate hreflang=en href=https://sauravdhakal.com.np/tags/architecture/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="https://sauravdhakal.com.np/tags/architecture/"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="Architecture"><meta property="og:description" content="A personal blog"><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Architecture"><meta name=twitter:description content="A personal blog"></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://sauravdhakal.com.np/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=https://sauravdhakal.com.np/posts/ title=posts><span>posts</span></a></li><li><a href=https://sauravdhakal.com.np/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=https://sauravdhakal.com.np/>Home</a>&nbsp;»&nbsp;<a href=https://sauravdhakal.com.np/tags/>Tags</a></div><h1>Architecture
<a href=/tags/architecture/index.xml title=RSS aria-label=RSS><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" height="23"><path d="M4 11a9 9 0 019 9"/><path d="M4 4a16 16 0 0116 16"/><circle cx="5" cy="19" r="1"/></svg></a></h1></header><article class="post-entry tag-entry"><header class=entry-header><h2 class=entry-hint-parent>Understanding Separation of Concerns (SoC) in NestJS</h2></header><div class=entry-content><p>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</p></div><footer class=entry-footer><span title='2025-08-19 00:00:00 +0000 UTC'>August 19, 2025</span>&nbsp;·&nbsp;<span>1 min</span>&nbsp;·&nbsp;<span>78 words</span>&nbsp;·&nbsp;<span>Saurav Dhakal</span></footer><a class=entry-link aria-label="post link to Understanding Separation of Concerns (SoC) in NestJS" href=http://localhost:1313/posts/demo/></a></article></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg> <a href=/tags/architecture/index.xml title=RSS aria-label=RSS><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" height="23"><path d="M4 11a9 9 0 019 9"/><path d="M4 4a16 16 0 0116 16"/><circle cx="5" cy="19" r="1"/></svg></a></h1></header><article class="post-entry tag-entry"><header class=entry-header><h2 class=entry-hint-parent>Understanding Separation of Concerns (SoC) in NestJS</h2></header><div class=entry-content><p>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</p></div><footer class=entry-footer><span title='2025-08-19 00:00:00 +0000 UTC'>August 19, 2025</span>&nbsp;·&nbsp;<span>1 min</span>&nbsp;·&nbsp;<span>78 words</span>&nbsp;·&nbsp;<span>Saurav Dhakal</span></footer><a class=entry-link aria-label="post link to Understanding Separation of Concerns (SoC) in NestJS" href=https://sauravdhakal.com.np/posts/demo/></a></article></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html> </a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html>

View File

@@ -2,18 +2,18 @@
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"> <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel> <channel>
<title>Architecture on Saurav Dhakal</title> <title>Architecture on Saurav Dhakal</title>
<link>http://localhost:1313/tags/architecture/</link> <link>https://sauravdhakal.com.np/tags/architecture/</link>
<description>Recent content in Architecture on Saurav Dhakal</description> <description>Recent content in Architecture on Saurav Dhakal</description>
<generator>Hugo -- 0.152.2</generator> <generator>Hugo -- 0.152.2</generator>
<language>en-us</language> <language>en-us</language>
<copyright>SauravDhakal</copyright> <copyright>SauravDhakal</copyright>
<lastBuildDate>Tue, 19 Aug 2025 00:00:00 +0000</lastBuildDate> <lastBuildDate>Tue, 19 Aug 2025 00:00:00 +0000</lastBuildDate>
<atom:link href="http://localhost:1313/tags/architecture/index.xml" rel="self" type="application/rss+xml" /> <atom:link href="https://sauravdhakal.com.np/tags/architecture/index.xml" rel="self" type="application/rss+xml" />
<item> <item>
<title>Understanding Separation of Concerns (SoC) in NestJS</title> <title>Understanding Separation of Concerns (SoC) in NestJS</title>
<link>http://localhost:1313/posts/demo/</link> <link>https://sauravdhakal.com.np/posts/demo/</link>
<pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate> <pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate>
<guid>http://localhost:1313/posts/demo/</guid> <guid>https://sauravdhakal.com.np/posts/demo/</guid>
<description>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</description> <description>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</description>
</item> </item>
</channel> </channel>

View File

@@ -1 +1 @@
<!doctype html><html lang=en-us><head><title>http://localhost:1313/tags/architecture/</title><link rel=canonical href=http://localhost:1313/tags/architecture/><meta charset=utf-8><meta http-equiv=refresh content="0; url=http://localhost:1313/tags/architecture/"></head></html> <!doctype html><html lang=en-us><head><title>https://sauravdhakal.com.np/tags/architecture/</title><link rel=canonical href=https://sauravdhakal.com.np/tags/architecture/><meta charset=utf-8><meta http-equiv=refresh content="0; url=https://sauravdhakal.com.np/tags/architecture/"></head></html>

View File

@@ -1,2 +1,2 @@
<!doctype html><html lang=en dir=auto data-theme=dark><head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Tags | Saurav Dhakal</title><meta name=keywords content><meta name=description content="A personal blog"><meta name=author content="saurav"><link rel=canonical href=http://localhost:1313/tags/><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link rel=icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=http://localhost:1313/tags/index.xml title=rss><link rel=alternate hreflang=en href=http://localhost:1313/tags/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="http://localhost:1313/tags/"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="Tags"><meta property="og:description" content="A personal blog"><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Tags"><meta name=twitter:description content="A personal blog"></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=http://localhost:1313/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=http://localhost:1313/posts/ title=posts><span>posts</span></a></li><li><a href=http://localhost:1313/tags/ title=tags><span class=active>tags</span></a></li></ul></nav></header><main class=main><header class=page-header><h1>Tags</h1></header><ul class=terms-tags><li><a href=http://localhost:1313/tags/architecture/>architecture <sup><strong><sup>1</sup></strong></sup></a></li><li><a href=http://localhost:1313/tags/nestjs/>nestjs <sup><strong><sup>1</sup></strong></sup></a></li><li><a href=http://localhost:1313/tags/typescript/>typescript <sup><strong><sup>1</sup></strong></sup></a></li></ul></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg> <!doctype html><html lang=en dir=auto data-theme=dark><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Tags | Saurav Dhakal</title><meta name=keywords content><meta name=description content="A personal blog"><meta name=author content="saurav"><link rel=canonical href=https://sauravdhakal.com.np/tags/><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link rel=icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://sauravdhakal.com.np/tags/index.xml title=rss><link rel=alternate hreflang=en href=https://sauravdhakal.com.np/tags/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="https://sauravdhakal.com.np/tags/"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="Tags"><meta property="og:description" content="A personal blog"><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Tags"><meta name=twitter:description content="A personal blog"></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://sauravdhakal.com.np/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=https://sauravdhakal.com.np/posts/ title=posts><span>posts</span></a></li><li><a href=https://sauravdhakal.com.np/tags/ title=tags><span class=active>tags</span></a></li></ul></nav></header><main class=main><header class=page-header><h1>Tags</h1></header><ul class=terms-tags><li><a href=https://sauravdhakal.com.np/tags/architecture/>architecture <sup><strong><sup>1</sup></strong></sup></a></li><li><a href=https://sauravdhakal.com.np/tags/nestjs/>nestjs <sup><strong><sup>1</sup></strong></sup></a></li><li><a href=https://sauravdhakal.com.np/tags/typescript/>typescript <sup><strong><sup>1</sup></strong></sup></a></li></ul></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html> </a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html>

View File

@@ -2,32 +2,32 @@
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"> <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel> <channel>
<title>Tags on Saurav Dhakal</title> <title>Tags on Saurav Dhakal</title>
<link>http://localhost:1313/tags/</link> <link>https://sauravdhakal.com.np/tags/</link>
<description>Recent content in Tags on Saurav Dhakal</description> <description>Recent content in Tags on Saurav Dhakal</description>
<generator>Hugo -- 0.152.2</generator> <generator>Hugo -- 0.152.2</generator>
<language>en-us</language> <language>en-us</language>
<copyright>SauravDhakal</copyright> <copyright>SauravDhakal</copyright>
<lastBuildDate>Tue, 19 Aug 2025 00:00:00 +0000</lastBuildDate> <lastBuildDate>Tue, 19 Aug 2025 00:00:00 +0000</lastBuildDate>
<atom:link href="http://localhost:1313/tags/index.xml" rel="self" type="application/rss+xml" /> <atom:link href="https://sauravdhakal.com.np/tags/index.xml" rel="self" type="application/rss+xml" />
<item> <item>
<title>Architecture</title> <title>Architecture</title>
<link>http://localhost:1313/tags/architecture/</link> <link>https://sauravdhakal.com.np/tags/architecture/</link>
<pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate> <pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate>
<guid>http://localhost:1313/tags/architecture/</guid> <guid>https://sauravdhakal.com.np/tags/architecture/</guid>
<description></description> <description></description>
</item> </item>
<item> <item>
<title>Nestjs</title> <title>Nestjs</title>
<link>http://localhost:1313/tags/nestjs/</link> <link>https://sauravdhakal.com.np/tags/nestjs/</link>
<pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate> <pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate>
<guid>http://localhost:1313/tags/nestjs/</guid> <guid>https://sauravdhakal.com.np/tags/nestjs/</guid>
<description></description> <description></description>
</item> </item>
<item> <item>
<title>Typescript</title> <title>Typescript</title>
<link>http://localhost:1313/tags/typescript/</link> <link>https://sauravdhakal.com.np/tags/typescript/</link>
<pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate> <pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate>
<guid>http://localhost:1313/tags/typescript/</guid> <guid>https://sauravdhakal.com.np/tags/typescript/</guid>
<description></description> <description></description>
</item> </item>
</channel> </channel>

View File

@@ -1,3 +1,3 @@
<!doctype html><html lang=en dir=auto data-theme=dark><head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Nestjs | Saurav Dhakal</title><meta name=keywords content><meta name=description content="A personal blog"><meta name=author content="saurav"><link rel=canonical href=http://localhost:1313/tags/nestjs/><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link rel=icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=http://localhost:1313/tags/nestjs/index.xml title=rss><link rel=alternate hreflang=en href=http://localhost:1313/tags/nestjs/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="http://localhost:1313/tags/nestjs/"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="Nestjs"><meta property="og:description" content="A personal blog"><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Nestjs"><meta name=twitter:description content="A personal blog"></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=http://localhost:1313/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=http://localhost:1313/posts/ title=posts><span>posts</span></a></li><li><a href=http://localhost:1313/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=http://localhost:1313/>Home</a>&nbsp;»&nbsp;<a href=http://localhost:1313/tags/>Tags</a></div><h1>Nestjs <!doctype html><html lang=en dir=auto data-theme=dark><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Nestjs | Saurav Dhakal</title><meta name=keywords content><meta name=description content="A personal blog"><meta name=author content="saurav"><link rel=canonical href=https://sauravdhakal.com.np/tags/nestjs/><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link rel=icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://sauravdhakal.com.np/tags/nestjs/index.xml title=rss><link rel=alternate hreflang=en href=https://sauravdhakal.com.np/tags/nestjs/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="https://sauravdhakal.com.np/tags/nestjs/"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="Nestjs"><meta property="og:description" content="A personal blog"><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Nestjs"><meta name=twitter:description content="A personal blog"></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://sauravdhakal.com.np/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=https://sauravdhakal.com.np/posts/ title=posts><span>posts</span></a></li><li><a href=https://sauravdhakal.com.np/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=https://sauravdhakal.com.np/>Home</a>&nbsp;»&nbsp;<a href=https://sauravdhakal.com.np/tags/>Tags</a></div><h1>Nestjs
<a href=/tags/nestjs/index.xml title=RSS aria-label=RSS><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" height="23"><path d="M4 11a9 9 0 019 9"/><path d="M4 4a16 16 0 0116 16"/><circle cx="5" cy="19" r="1"/></svg></a></h1></header><article class="post-entry tag-entry"><header class=entry-header><h2 class=entry-hint-parent>Understanding Separation of Concerns (SoC) in NestJS</h2></header><div class=entry-content><p>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</p></div><footer class=entry-footer><span title='2025-08-19 00:00:00 +0000 UTC'>August 19, 2025</span>&nbsp;·&nbsp;<span>1 min</span>&nbsp;·&nbsp;<span>78 words</span>&nbsp;·&nbsp;<span>Saurav Dhakal</span></footer><a class=entry-link aria-label="post link to Understanding Separation of Concerns (SoC) in NestJS" href=http://localhost:1313/posts/demo/></a></article></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg> <a href=/tags/nestjs/index.xml title=RSS aria-label=RSS><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" height="23"><path d="M4 11a9 9 0 019 9"/><path d="M4 4a16 16 0 0116 16"/><circle cx="5" cy="19" r="1"/></svg></a></h1></header><article class="post-entry tag-entry"><header class=entry-header><h2 class=entry-hint-parent>Understanding Separation of Concerns (SoC) in NestJS</h2></header><div class=entry-content><p>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</p></div><footer class=entry-footer><span title='2025-08-19 00:00:00 +0000 UTC'>August 19, 2025</span>&nbsp;·&nbsp;<span>1 min</span>&nbsp;·&nbsp;<span>78 words</span>&nbsp;·&nbsp;<span>Saurav Dhakal</span></footer><a class=entry-link aria-label="post link to Understanding Separation of Concerns (SoC) in NestJS" href=https://sauravdhakal.com.np/posts/demo/></a></article></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html> </a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html>

View File

@@ -2,18 +2,18 @@
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"> <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel> <channel>
<title>Nestjs on Saurav Dhakal</title> <title>Nestjs on Saurav Dhakal</title>
<link>http://localhost:1313/tags/nestjs/</link> <link>https://sauravdhakal.com.np/tags/nestjs/</link>
<description>Recent content in Nestjs on Saurav Dhakal</description> <description>Recent content in Nestjs on Saurav Dhakal</description>
<generator>Hugo -- 0.152.2</generator> <generator>Hugo -- 0.152.2</generator>
<language>en-us</language> <language>en-us</language>
<copyright>SauravDhakal</copyright> <copyright>SauravDhakal</copyright>
<lastBuildDate>Tue, 19 Aug 2025 00:00:00 +0000</lastBuildDate> <lastBuildDate>Tue, 19 Aug 2025 00:00:00 +0000</lastBuildDate>
<atom:link href="http://localhost:1313/tags/nestjs/index.xml" rel="self" type="application/rss+xml" /> <atom:link href="https://sauravdhakal.com.np/tags/nestjs/index.xml" rel="self" type="application/rss+xml" />
<item> <item>
<title>Understanding Separation of Concerns (SoC) in NestJS</title> <title>Understanding Separation of Concerns (SoC) in NestJS</title>
<link>http://localhost:1313/posts/demo/</link> <link>https://sauravdhakal.com.np/posts/demo/</link>
<pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate> <pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate>
<guid>http://localhost:1313/posts/demo/</guid> <guid>https://sauravdhakal.com.np/posts/demo/</guid>
<description>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</description> <description>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</description>
</item> </item>
</channel> </channel>

View File

@@ -1 +1 @@
<!doctype html><html lang=en-us><head><title>http://localhost:1313/tags/nestjs/</title><link rel=canonical href=http://localhost:1313/tags/nestjs/><meta charset=utf-8><meta http-equiv=refresh content="0; url=http://localhost:1313/tags/nestjs/"></head></html> <!doctype html><html lang=en-us><head><title>https://sauravdhakal.com.np/tags/nestjs/</title><link rel=canonical href=https://sauravdhakal.com.np/tags/nestjs/><meta charset=utf-8><meta http-equiv=refresh content="0; url=https://sauravdhakal.com.np/tags/nestjs/"></head></html>

View File

@@ -1,3 +1,3 @@
<!doctype html><html lang=en dir=auto data-theme=dark><head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Typescript | Saurav Dhakal</title><meta name=keywords content><meta name=description content="A personal blog"><meta name=author content="saurav"><link rel=canonical href=http://localhost:1313/tags/typescript/><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link rel=icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=http://localhost:1313/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=http://localhost:1313/tags/typescript/index.xml title=rss><link rel=alternate hreflang=en href=http://localhost:1313/tags/typescript/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="http://localhost:1313/tags/typescript/"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="Typescript"><meta property="og:description" content="A personal blog"><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Typescript"><meta name=twitter:description content="A personal blog"></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=http://localhost:1313/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=http://localhost:1313/posts/ title=posts><span>posts</span></a></li><li><a href=http://localhost:1313/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=http://localhost:1313/>Home</a>&nbsp;»&nbsp;<a href=http://localhost:1313/tags/>Tags</a></div><h1>Typescript <!doctype html><html lang=en dir=auto data-theme=dark><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Typescript | Saurav Dhakal</title><meta name=keywords content><meta name=description content="A personal blog"><meta name=author content="saurav"><link rel=canonical href=https://sauravdhakal.com.np/tags/typescript/><meta name=google-site-verification content="G-V0CXG8ZEG2"><link crossorigin=anonymous href=/assets/css/stylesheet.1819d1b52fd9f2af4d88316fde3f9b918c48d08dac9a2e1ef0a7ca49d1f18ddb.css integrity="sha256-GBnRtS/Z8q9NiDFv3j+bkYxI0I2smi4e8KfKSdHxjds=" rel="preload stylesheet" as=style><link rel=icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=16x16 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=icon type=image/png sizes=32x32 href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=apple-touch-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><link rel=mask-icon href=https://sauravdhakal.com.np/%3Clink%20/%20abs%20url%3E><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://sauravdhakal.com.np/tags/typescript/index.xml title=rss><link rel=alternate hreflang=en href=https://sauravdhakal.com.np/tags/typescript/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><meta property="og:url" content="https://sauravdhakal.com.np/tags/typescript/"><meta property="og:site_name" content="Saurav Dhakal"><meta property="og:title" content="Typescript"><meta property="og:description" content="A personal blog"><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Typescript"><meta name=twitter:description content="A personal blog"></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://sauravdhakal.com.np/ accesskey=h title="SauravDhakal (Alt + H)">SauravDhakal</a><div class=logo-switches></div></div><ul id=menu><li><a href=https://sauravdhakal.com.np/posts/ title=posts><span>posts</span></a></li><li><a href=https://sauravdhakal.com.np/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=https://sauravdhakal.com.np/>Home</a>&nbsp;»&nbsp;<a href=https://sauravdhakal.com.np/tags/>Tags</a></div><h1>Typescript
<a href=/tags/typescript/index.xml title=RSS aria-label=RSS><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" height="23"><path d="M4 11a9 9 0 019 9"/><path d="M4 4a16 16 0 0116 16"/><circle cx="5" cy="19" r="1"/></svg></a></h1></header><article class="post-entry tag-entry"><header class=entry-header><h2 class=entry-hint-parent>Understanding Separation of Concerns (SoC) in NestJS</h2></header><div class=entry-content><p>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</p></div><footer class=entry-footer><span title='2025-08-19 00:00:00 +0000 UTC'>August 19, 2025</span>&nbsp;·&nbsp;<span>1 min</span>&nbsp;·&nbsp;<span>78 words</span>&nbsp;·&nbsp;<span>Saurav Dhakal</span></footer><a class=entry-link aria-label="post link to Understanding Separation of Concerns (SoC) in NestJS" href=http://localhost:1313/posts/demo/></a></article></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg> <a href=/tags/typescript/index.xml title=RSS aria-label=RSS><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" height="23"><path d="M4 11a9 9 0 019 9"/><path d="M4 4a16 16 0 0116 16"/><circle cx="5" cy="19" r="1"/></svg></a></h1></header><article class="post-entry tag-entry"><header class=entry-header><h2 class=entry-hint-parent>Understanding Separation of Concerns (SoC) in NestJS</h2></header><div class=entry-content><p>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</p></div><footer class=entry-footer><span title='2025-08-19 00:00:00 +0000 UTC'>August 19, 2025</span>&nbsp;·&nbsp;<span>1 min</span>&nbsp;·&nbsp;<span>78 words</span>&nbsp;·&nbsp;<span>Saurav Dhakal</span></footer><a class=entry-link aria-label="post link to Understanding Separation of Concerns (SoC) in NestJS" href=https://sauravdhakal.com.np/posts/demo/></a></article></main><footer class=footer><span>Copyright &copy; 2025 SauravDhakal</span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html> </a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script></body></html>

View File

@@ -2,18 +2,18 @@
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"> <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel> <channel>
<title>Typescript on Saurav Dhakal</title> <title>Typescript on Saurav Dhakal</title>
<link>http://localhost:1313/tags/typescript/</link> <link>https://sauravdhakal.com.np/tags/typescript/</link>
<description>Recent content in Typescript on Saurav Dhakal</description> <description>Recent content in Typescript on Saurav Dhakal</description>
<generator>Hugo -- 0.152.2</generator> <generator>Hugo -- 0.152.2</generator>
<language>en-us</language> <language>en-us</language>
<copyright>SauravDhakal</copyright> <copyright>SauravDhakal</copyright>
<lastBuildDate>Tue, 19 Aug 2025 00:00:00 +0000</lastBuildDate> <lastBuildDate>Tue, 19 Aug 2025 00:00:00 +0000</lastBuildDate>
<atom:link href="http://localhost:1313/tags/typescript/index.xml" rel="self" type="application/rss+xml" /> <atom:link href="https://sauravdhakal.com.np/tags/typescript/index.xml" rel="self" type="application/rss+xml" />
<item> <item>
<title>Understanding Separation of Concerns (SoC) in NestJS</title> <title>Understanding Separation of Concerns (SoC) in NestJS</title>
<link>http://localhost:1313/posts/demo/</link> <link>https://sauravdhakal.com.np/posts/demo/</link>
<pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate> <pubDate>Tue, 19 Aug 2025 00:00:00 +0000</pubDate>
<guid>http://localhost:1313/posts/demo/</guid> <guid>https://sauravdhakal.com.np/posts/demo/</guid>
<description>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</description> <description>A guide to understanding Separation of Concerns in NestJS using modules, services, and controllers.</description>
</item> </item>
</channel> </channel>

View File

@@ -1 +1 @@
<!doctype html><html lang=en-us><head><title>http://localhost:1313/tags/typescript/</title><link rel=canonical href=http://localhost:1313/tags/typescript/><meta charset=utf-8><meta http-equiv=refresh content="0; url=http://localhost:1313/tags/typescript/"></head></html> <!doctype html><html lang=en-us><head><title>https://sauravdhakal.com.np/tags/typescript/</title><link rel=canonical href=https://sauravdhakal.com.np/tags/typescript/><meta charset=utf-8><meta http-equiv=refresh content="0; url=https://sauravdhakal.com.np/tags/typescript/"></head></html>