Skip to content

Commit dbacb73

Browse files
committed
Fix : fixed sitemap generation
1 parent 18eb0c2 commit dbacb73

File tree

3 files changed

+39
-46
lines changed

3 files changed

+39
-46
lines changed

next-sitemap.config.js

Lines changed: 37 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,44 @@
1+
const fs = require('fs');
2+
const path = require('path');
3+
4+
// Helper function to recursively get all routes from app/ folder
5+
function getAllAppRoutes(dir = 'app', prefix = '') {
6+
const routes = [];
7+
const items = fs.readdirSync(dir);
8+
9+
items.forEach((item) => {
10+
const fullPath = path.join(dir, item);
11+
const stat = fs.statSync(fullPath);
12+
13+
if (stat.isDirectory()) {
14+
if (item === 'api') return; // skip API routes
15+
routes.push(...getAllAppRoutes(fullPath, `${prefix}/${item}`));
16+
} else if (item.endsWith('.js') || item.endsWith('.tsx')) {
17+
let route = `${prefix}/${item.replace(/\.js|\.tsx$/, '')}`;
18+
if (route.endsWith('/page')) route = route.replace('/page', '');
19+
routes.push(route);
20+
}
21+
});
22+
23+
return routes;
24+
}
25+
126
/** @type {import('next-sitemap').IConfig} */
227
const config = {
3-
siteUrl: 'https://dsavisualizer.in', // <-- Update this to your custom domain
28+
siteUrl: 'https://dsavisualizer.in',
429
generateRobotsTxt: true,
530
sitemapSize: 5000,
31+
transform: async (config, path) => ({
32+
loc: path,
33+
lastmod: new Date().toISOString(),
34+
}),
35+
additionalPaths: async (config) => {
36+
const appRoutes = getAllAppRoutes(); // auto-detect all pages
37+
return appRoutes.map(route => ({
38+
loc: route,
39+
lastmod: new Date().toISOString(),
40+
}));
41+
},
642
};
743

844
module.exports = config;

public/sitemap-0.xml

Lines changed: 1 addition & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -1,48 +1,4 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:mobile="http://www.google.com/schemas/sitemap-mobile/1.0" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1">
3-
<url><loc>https://dsavisualizer.in/blogs/Content/timeRequired</loc><lastmod>2025-07-15T17:13:06.119Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
4-
<url><loc>https://dsavisualizer.in/blogs/Content/dsaWebDev</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
5-
<url><loc>https://dsavisualizer.in/blogs/Content/whatIsDS</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
6-
<url><loc>https://dsavisualizer.in/login</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
7-
<url><loc>https://dsavisualizer.in</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
8-
<url><loc>https://dsavisualizer.in/visualizer/linkedList/operations/comparison</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
9-
<url><loc>https://dsavisualizer.in/blogs</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
10-
<url><loc>https://dsavisualizer.in/visualizer/linkedList/types/circular</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
11-
<url><loc>https://dsavisualizer.in/visualizer/linkedList/operations/merge</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
12-
<url><loc>https://dsavisualizer.in/visualizer/linkedList/types/doubly</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
13-
<url><loc>https://dsavisualizer.in/visualizer/queue/implementation/array</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
14-
<url><loc>https://dsavisualizer.in/visualizer/linkedList/operations/reverse</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
15-
<url><loc>https://dsavisualizer.in/visualizer/linkedList/types/singly</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
16-
<url><loc>https://dsavisualizer.in/visualizer/queue/implementation/linkedList</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
17-
<url><loc>https://dsavisualizer.in/visualizer/queue/types/deque</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
18-
<url><loc>https://dsavisualizer.in/visualizer/queue/types/circular</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
19-
<url><loc>https://dsavisualizer.in/visualizer/linkedList/operations/deletion</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
20-
<url><loc>https://dsavisualizer.in/visualizer/queue/operations/enqueue-dequeue</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
21-
<url><loc>https://dsavisualizer.in/visualizer/linkedList/operations/traversal</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
22-
<url><loc>https://dsavisualizer.in/visualizer/queue/types/multiple</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
23-
<url><loc>https://dsavisualizer.in/visualizer/queue/types/singleEnded</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
24-
<url><loc>https://dsavisualizer.in/visualizer/searching/binarysearch</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
25-
<url><loc>https://dsavisualizer.in/visualizer/sorting/bubblesort</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
26-
<url><loc>https://dsavisualizer.in/visualizer/sorting/mergesort</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
27-
<url><loc>https://dsavisualizer.in/visualizer/searching/linearsearch</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
28-
<url><loc>https://dsavisualizer.in/visualizer/sorting/quicksort</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
29-
<url><loc>https://dsavisualizer.in/visualizer/queue/operations/isfull</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
30-
<url><loc>https://dsavisualizer.in/visualizer/queue/types/priority</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
31-
<url><loc>https://dsavisualizer.in/visualizer/sorting/selectionsort</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
32-
<url><loc>https://dsavisualizer.in/visualizer/stack/implementation/usingLinkedList</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
33-
<url><loc>https://dsavisualizer.in/visualizer/sorting/insertionsort</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
34-
<url><loc>https://dsavisualizer.in/visualizer/linkedList/operations/insertion</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
35-
<url><loc>https://dsavisualizer.in/visualizer/stack/polish/postfix</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
36-
<url><loc>https://dsavisualizer.in/visualizer/queue/operations/peek-front</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
37-
<url><loc>https://dsavisualizer.in/visualizer/stack/implementation/usingArray</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
38-
<url><loc>https://dsavisualizer.in/visualizer/trees/traversing/in-order</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
39-
<url><loc>https://dsavisualizer.in/visualizer/trees/binaryTree/types</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
40-
<url><loc>https://dsavisualizer.in/visualizer/queue/operations/isempty</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
41-
<url><loc>https://dsavisualizer.in/visualizer</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
42-
<url><loc>https://dsavisualizer.in/visualizer/stack/peek</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
43-
<url><loc>https://dsavisualizer.in/visualizer/stack/isempty</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
44-
<url><loc>https://dsavisualizer.in/visualizer/stack/isfull</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
45-
<url><loc>https://dsavisualizer.in/visualizer/stack/push-pop</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
46-
<url><loc>https://dsavisualizer.in/visualizer/stack/polish/prefix</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
47-
<url><loc>https://dsavisualizer.in/blogs/Content/dsaDifferent</loc><lastmod>2025-07-15T17:13:06.120Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url>
3+
<url><loc>https://dsavisualizer.in/contexts/AuthContext</loc><lastmod>2025-10-04T18:29:23.213Z</lastmod></url>
484
</urlset>

public/sitemap.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
3+
<sitemap><loc>https://dsavisualizer.in/sitemap-0.xml</loc></sitemap>
34
</sitemapindex>

0 commit comments

Comments
 (0)