├── .dockerignore ├── .gitignore ├── Dockerfile ├── Dockerfile.bot ├── README.md ├── components.json ├── docker-compose.yml ├── eslint.config.mjs ├── next.config.ts ├── package.json ├── postcss.config.mjs ├── public ├── favicon.svg ├── file.svg ├── globe.svg ├── next.svg ├── vercel.svg └── window.svg ├── scripts ├── README.md ├── discord-bot.ts └── lib │ └── discord.ts ├── src ├── app │ ├── (app) │ │ ├── api-docs │ │ │ └── page.tsx │ │ ├── layout.tsx │ │ ├── meshcore │ │ │ └── node │ │ │ │ └── [publicKey] │ │ │ │ └── page.tsx │ │ ├── messages │ │ │ └── page.tsx │ │ ├── page.tsx │ │ ├── search │ │ │ └── page.tsx │ │ └── stats │ │ │ └── page.tsx │ ├── (embed) │ │ ├── embed │ │ │ └── map │ │ │ │ └── page.tsx │ │ └── layout.tsx │ ├── api │ │ ├── chat │ │ │ └── route.ts │ │ ├── map │ │ │ └── route.ts │ │ ├── meshcore │ │ │ ├── node │ │ │ │ └── [publicKey] │ │ │ │ │ ├── neighbors │ │ │ │ │ └── route.ts │ │ │ │ │ └── route.ts │ │ │ ├── profilepicture.png │ │ │ │ └── route.ts │ │ │ ├── search │ │ │ │ └── route.ts │ │ │ └── stream │ │ │ │ ├── chat │ │ │ │ └── route.ts │ │ │ │ └── packets │ │ │ │ └── route.ts │ │ ├── neighbors │ │ │ └── all │ │ │ │ └── route.ts │ │ └── stats │ │ │ ├── nodes-over-time │ │ │ └── route.ts │ │ │ ├── popular-channels │ │ │ └── route.ts │ │ │ ├── repeater-prefixes │ │ │ └── route.ts │ │ │ └── total-nodes │ │ │ └── route.ts │ ├── globals.css │ ├── layout.tsx │ └── not-found.tsx ├── components │ ├── AdvertDetails.tsx │ ├── ChatBox.tsx │ ├── ChatMessageItem.tsx │ ├── ConfigContext.tsx │ ├── ContactQRCode.tsx │ ├── Header.tsx │ ├── InfoModal.tsx │ ├── MapIcons.tsx │ ├── MapLayerSettings.tsx │ ├── MapView.tsx │ ├── MapWithChatClient.tsx │ ├── Modal.tsx │ ├── NodeCard.tsx │ ├── NodeLinkWithHover.tsx │ ├── PathVisualization.tsx │ ├── QueryProvider.tsx │ ├── RefreshButton.tsx │ ├── RegionSelector.tsx │ ├── SearchInput.tsx │ └── SearchResults.tsx ├── contexts │ └── RegionContext.tsx ├── hooks │ ├── useAllNeighbors.ts │ ├── useChatMessages.ts │ ├── useConfigWithRegion.ts │ ├── useIntersectionObserver.ts │ ├── useLocalStorage.ts │ ├── useMapLayerSettings.ts │ ├── useMeshcoreSearch.ts │ ├── useMessageDecryption.ts │ ├── useNeighbors.ts │ ├── useNodeData.ts │ ├── useQueryParams.ts │ └── useStats.ts ├── lib │ ├── api.ts │ ├── clickhouse │ │ ├── actions.ts │ │ ├── clickhouse.ts │ │ └── streaming.ts │ ├── meshcore-map-nodeutils.ts │ ├── meshcore.ts │ ├── node-utils.ts │ ├── pathUtils.ts │ ├── regionFilters.ts │ ├── regions.ts │ └── utils.ts ├── middleware.ts └── types │ └── map.ts └── tsconfig.json /.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/.dockerignore -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/.gitignore -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/Dockerfile -------------------------------------------------------------------------------- /Dockerfile.bot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/Dockerfile.bot -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/README.md -------------------------------------------------------------------------------- /components.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/components.json -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /eslint.config.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/eslint.config.mjs -------------------------------------------------------------------------------- /next.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/next.config.ts -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/package.json -------------------------------------------------------------------------------- /postcss.config.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/postcss.config.mjs -------------------------------------------------------------------------------- /public/favicon.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/public/favicon.svg -------------------------------------------------------------------------------- /public/file.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/public/file.svg -------------------------------------------------------------------------------- /public/globe.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/public/globe.svg -------------------------------------------------------------------------------- /public/next.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/public/next.svg -------------------------------------------------------------------------------- /public/vercel.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/public/vercel.svg -------------------------------------------------------------------------------- /public/window.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/public/window.svg -------------------------------------------------------------------------------- /scripts/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/scripts/README.md -------------------------------------------------------------------------------- /scripts/discord-bot.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/scripts/discord-bot.ts -------------------------------------------------------------------------------- /scripts/lib/discord.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/scripts/lib/discord.ts -------------------------------------------------------------------------------- /src/app/(app)/api-docs/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/(app)/api-docs/page.tsx -------------------------------------------------------------------------------- /src/app/(app)/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/(app)/layout.tsx -------------------------------------------------------------------------------- /src/app/(app)/meshcore/node/[publicKey]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/(app)/meshcore/node/[publicKey]/page.tsx -------------------------------------------------------------------------------- /src/app/(app)/messages/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/(app)/messages/page.tsx -------------------------------------------------------------------------------- /src/app/(app)/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/(app)/page.tsx -------------------------------------------------------------------------------- /src/app/(app)/search/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/(app)/search/page.tsx -------------------------------------------------------------------------------- /src/app/(app)/stats/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/(app)/stats/page.tsx -------------------------------------------------------------------------------- /src/app/(embed)/embed/map/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/(embed)/embed/map/page.tsx -------------------------------------------------------------------------------- /src/app/(embed)/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/(embed)/layout.tsx -------------------------------------------------------------------------------- /src/app/api/chat/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/api/chat/route.ts -------------------------------------------------------------------------------- /src/app/api/map/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/api/map/route.ts -------------------------------------------------------------------------------- /src/app/api/meshcore/node/[publicKey]/neighbors/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/api/meshcore/node/[publicKey]/neighbors/route.ts -------------------------------------------------------------------------------- /src/app/api/meshcore/node/[publicKey]/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/api/meshcore/node/[publicKey]/route.ts -------------------------------------------------------------------------------- /src/app/api/meshcore/profilepicture.png/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/api/meshcore/profilepicture.png/route.ts -------------------------------------------------------------------------------- /src/app/api/meshcore/search/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/api/meshcore/search/route.ts -------------------------------------------------------------------------------- /src/app/api/meshcore/stream/chat/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/api/meshcore/stream/chat/route.ts -------------------------------------------------------------------------------- /src/app/api/meshcore/stream/packets/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/api/meshcore/stream/packets/route.ts -------------------------------------------------------------------------------- /src/app/api/neighbors/all/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/api/neighbors/all/route.ts -------------------------------------------------------------------------------- /src/app/api/stats/nodes-over-time/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/api/stats/nodes-over-time/route.ts -------------------------------------------------------------------------------- /src/app/api/stats/popular-channels/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/api/stats/popular-channels/route.ts -------------------------------------------------------------------------------- /src/app/api/stats/repeater-prefixes/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/api/stats/repeater-prefixes/route.ts -------------------------------------------------------------------------------- /src/app/api/stats/total-nodes/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/api/stats/total-nodes/route.ts -------------------------------------------------------------------------------- /src/app/globals.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/globals.css -------------------------------------------------------------------------------- /src/app/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/layout.tsx -------------------------------------------------------------------------------- /src/app/not-found.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/app/not-found.tsx -------------------------------------------------------------------------------- /src/components/AdvertDetails.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/components/AdvertDetails.tsx -------------------------------------------------------------------------------- /src/components/ChatBox.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/components/ChatBox.tsx -------------------------------------------------------------------------------- /src/components/ChatMessageItem.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/components/ChatMessageItem.tsx -------------------------------------------------------------------------------- /src/components/ConfigContext.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/components/ConfigContext.tsx -------------------------------------------------------------------------------- /src/components/ContactQRCode.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/components/ContactQRCode.tsx -------------------------------------------------------------------------------- /src/components/Header.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/components/Header.tsx -------------------------------------------------------------------------------- /src/components/InfoModal.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/components/InfoModal.tsx -------------------------------------------------------------------------------- /src/components/MapIcons.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/components/MapIcons.tsx -------------------------------------------------------------------------------- /src/components/MapLayerSettings.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/components/MapLayerSettings.tsx -------------------------------------------------------------------------------- /src/components/MapView.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/components/MapView.tsx -------------------------------------------------------------------------------- /src/components/MapWithChatClient.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/components/MapWithChatClient.tsx -------------------------------------------------------------------------------- /src/components/Modal.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/components/Modal.tsx -------------------------------------------------------------------------------- /src/components/NodeCard.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/components/NodeCard.tsx -------------------------------------------------------------------------------- /src/components/NodeLinkWithHover.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/components/NodeLinkWithHover.tsx -------------------------------------------------------------------------------- /src/components/PathVisualization.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/components/PathVisualization.tsx -------------------------------------------------------------------------------- /src/components/QueryProvider.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/components/QueryProvider.tsx -------------------------------------------------------------------------------- /src/components/RefreshButton.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/components/RefreshButton.tsx -------------------------------------------------------------------------------- /src/components/RegionSelector.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/components/RegionSelector.tsx -------------------------------------------------------------------------------- /src/components/SearchInput.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/components/SearchInput.tsx -------------------------------------------------------------------------------- /src/components/SearchResults.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/components/SearchResults.tsx -------------------------------------------------------------------------------- /src/contexts/RegionContext.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/contexts/RegionContext.tsx -------------------------------------------------------------------------------- /src/hooks/useAllNeighbors.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/hooks/useAllNeighbors.ts -------------------------------------------------------------------------------- /src/hooks/useChatMessages.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/hooks/useChatMessages.ts -------------------------------------------------------------------------------- /src/hooks/useConfigWithRegion.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/hooks/useConfigWithRegion.ts -------------------------------------------------------------------------------- /src/hooks/useIntersectionObserver.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/hooks/useIntersectionObserver.ts -------------------------------------------------------------------------------- /src/hooks/useLocalStorage.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/hooks/useLocalStorage.ts -------------------------------------------------------------------------------- /src/hooks/useMapLayerSettings.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/hooks/useMapLayerSettings.ts -------------------------------------------------------------------------------- /src/hooks/useMeshcoreSearch.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/hooks/useMeshcoreSearch.ts -------------------------------------------------------------------------------- /src/hooks/useMessageDecryption.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/hooks/useMessageDecryption.ts -------------------------------------------------------------------------------- /src/hooks/useNeighbors.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/hooks/useNeighbors.ts -------------------------------------------------------------------------------- /src/hooks/useNodeData.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/hooks/useNodeData.ts -------------------------------------------------------------------------------- /src/hooks/useQueryParams.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/hooks/useQueryParams.ts -------------------------------------------------------------------------------- /src/hooks/useStats.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/hooks/useStats.ts -------------------------------------------------------------------------------- /src/lib/api.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/lib/api.ts -------------------------------------------------------------------------------- /src/lib/clickhouse/actions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/lib/clickhouse/actions.ts -------------------------------------------------------------------------------- /src/lib/clickhouse/clickhouse.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/lib/clickhouse/clickhouse.ts -------------------------------------------------------------------------------- /src/lib/clickhouse/streaming.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/lib/clickhouse/streaming.ts -------------------------------------------------------------------------------- /src/lib/meshcore-map-nodeutils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/lib/meshcore-map-nodeutils.ts -------------------------------------------------------------------------------- /src/lib/meshcore.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/lib/meshcore.ts -------------------------------------------------------------------------------- /src/lib/node-utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/lib/node-utils.ts -------------------------------------------------------------------------------- /src/lib/pathUtils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/lib/pathUtils.ts -------------------------------------------------------------------------------- /src/lib/regionFilters.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/lib/regionFilters.ts -------------------------------------------------------------------------------- /src/lib/regions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/lib/regions.ts -------------------------------------------------------------------------------- /src/lib/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/lib/utils.ts -------------------------------------------------------------------------------- /src/middleware.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/middleware.ts -------------------------------------------------------------------------------- /src/types/map.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/src/types/map.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvpot/meshexplorer/HEAD/tsconfig.json --------------------------------------------------------------------------------