diff --git a/README.md b/README.md
index 774741a..16f735b 100755
--- a/README.md
+++ b/README.md
@@ -1,5 +1,5 @@
-
+
DSAVisualizer
@@ -12,32 +12,20 @@
Built with ❤️ by Sohan Rout
-
- Live Demo •
- Report Bug •
- Request Feature
-
-
---
-
-
-
+
+
+
Product Built Using:
+
+
+
----
-
-## Tech Stack 🚀
-
-- Next.js
-- TailwindCSS
-- Vercel (Deployment)
-
----
-## Features ✨
+## Features
- DSA Algorithm Visualizer
- Custom Array Input
@@ -49,47 +37,26 @@
- Blog Explanations via Medium (Upcoming)
- Queue Visualizer (Upcoming)
----
-
-## Future Plans 🛠️
-
-- Add Tree & Graph Visualizations
-- Add Heap Sort
-- Queue Implementation & Visualizer
-- Write Detailed Blogs on Medium
-- Collaborate with Colleges & Professors for Usage
+## Future Plans
+- Make the platform interactive
- Improve Mobile Responsiveness
- Social Media Promotion
----
-
-## Blogs ✍️
-
-Coming Soon on [Medium](https://medium.com/@sohan-rout)
-
----
## Connect With Me
-- [LinkedIn](https://www.linkedin.com/in/sohan-rout)
-- [Medium](https://medium.com/@sohan-rout)
-
----
+
+
+
-## License 📄
+## License
Apache 2.0 License — See `LICENSE` for details.
----
-
# Contribution
See [CONTRIBUTING.md](./CONTRIBUTING.md)
Code of Conduct — [CODE_OF_CONDUCT.md](./CODE_OF_CONDUCT.md)
----
-
-
- Made with ❤️ by Sohan Rout
-
\ No newline at end of file
+---
\ No newline at end of file
diff --git a/next-sitemap.config.js b/next-sitemap.config.js
index 09005b5..0692de9 100755
--- a/next-sitemap.config.js
+++ b/next-sitemap.config.js
@@ -1,24 +1,27 @@
const fs = require('fs');
const path = require('path');
-// Helper function to recursively get all routes from app/ folder
-function getAllAppRoutes(dir = 'app', prefix = '') {
+// Scan app/ folder recursively, include only folders with page.jsx
+function getAllPages(dir = 'app', prefix = '') {
const routes = [];
const items = fs.readdirSync(dir);
- items.forEach((item) => {
+ for (const item of items) {
const fullPath = path.join(dir, item);
const stat = fs.statSync(fullPath);
if (stat.isDirectory()) {
- if (item === 'api') return; // skip API routes
- routes.push(...getAllAppRoutes(fullPath, `${prefix}/${item}`));
- } else if (item.endsWith('.js') || item.endsWith('.tsx')) {
- let route = `${prefix}/${item.replace(/\.js|\.tsx$/, '')}`;
- if (route.endsWith('/page')) route = route.replace('/page', '');
- routes.push(route);
+ if (item === 'api' || item.startsWith('_')) continue; // skip API and special folders
+
+ const pageFile = fs.readdirSync(fullPath).find(f => f === 'page.jsx' || f === 'page.tsx');
+ if (pageFile) {
+ routes.push(`${prefix}/${item}`);
+ }
+
+ // Recurse into subfolders
+ routes.push(...getAllPages(fullPath, `${prefix}/${item}`));
}
- });
+ }
return routes;
}
@@ -33,8 +36,8 @@ const config = {
lastmod: new Date().toISOString(),
}),
additionalPaths: async (config) => {
- const appRoutes = getAllAppRoutes(); // auto-detect all pages
- return appRoutes.map(route => ({
+ const allRoutes = getAllPages(); // recursively get all module pages
+ return allRoutes.map(route => ({
loc: route,
lastmod: new Date().toISOString(),
}));
diff --git a/public/sitemap-0.xml b/public/sitemap-0.xml
index b1574c6..3c0d4e4 100755
--- a/public/sitemap-0.xml
+++ b/public/sitemap-0.xml
@@ -1,4 +1,48 @@
-https://dsavisualizer.in/contexts/AuthContext2025-10-04T18:29:23.213Z
+https://dsavisualizer.in/blogs2025-10-04T18:49:05.527Z
+https://dsavisualizer.in/blogs/Content/dsaDifferent2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/blogs/Content/dsaWebDev2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/blogs/Content/timeRequired2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/blogs/Content/whatIsDS2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/dashboard2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/login2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/linkedList/operations/comparison2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/linkedList/operations/deletion2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/linkedList/operations/insertion2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/linkedList/operations/merge2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/linkedList/operations/reverse2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/linkedList/operations/traversal2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/linkedList/types/circular2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/linkedList/types/doubly2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/linkedList/types/singly2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/queue/implementation/array2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/queue/implementation/linkedList2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/queue/operations/enqueue-dequeue2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/queue/operations/isempty2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/queue/operations/isfull2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/queue/operations/peek-front2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/queue/types/circular2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/queue/types/deque2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/queue/types/multiple2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/queue/types/priority2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/queue/types/singleEnded2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/searching/binarysearch2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/searching/linearsearch2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/sorting/bubblesort2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/sorting/insertionsort2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/sorting/mergesort2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/sorting/quicksort2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/sorting/selectionsort2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/stack/implementation/usingArray2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/stack/implementation/usingLinkedList2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/stack/isempty2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/stack/isfull2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/stack/peek2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/stack/polish/postfix2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/stack/polish/prefix2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/stack/push-pop2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/trees/binaryTree/types2025-10-04T18:49:05.530Z
+https://dsavisualizer.in/visualizer/trees/traversing/in-order2025-10-04T18:49:05.530Z
\ No newline at end of file