diff --git a/.env.basspistol b/.env.basspistol
new file mode 100644
index 0000000..23ba89d
--- /dev/null
+++ b/.env.basspistol
@@ -0,0 +1,2 @@
+VITE_COMMUNITY_RELAYS="wss://basspistol.org/favorites,wss://basspistol.org/popular,wss://basspistol.org/uppermost,wss://basspistol.org/personal"
+VITE_COMMUNITY_RELAY_SETS=[{"id": "basspistol", "name": "Basspistol", "relayUrls": ["wss://basspistol.org","wss://drops.basspistol.org"]},{"id": "member", "name": "Backstage", "relayUrls": ["wss://basspistol.org/internal"]},{"id": "hood", "name": "Hood", "relayUrls": ["wss://nestr.nedao.ch","wss://pyramid.fiatjaf.com","wss://spatia-arcana.com","wss://lightning.red","wss://inner.sebastix.social"]}]
diff --git a/src/components/RelaySetCard/index.tsx b/src/components/RelaySetCard/index.tsx
index 7367bc5..83d13eb 100644
--- a/src/components/RelaySetCard/index.tsx
+++ b/src/components/RelaySetCard/index.tsx
@@ -1,6 +1,6 @@
import { cn } from '@/lib/utils'
import { TRelaySet } from '@/types'
-import { ChevronDown, FolderClosed } from 'lucide-react'
+import { ChevronDown, FolderClosed, Music, Radio, Trees, DoorOpen } from 'lucide-react'
import { useState } from 'react'
import { useTranslation } from 'react-i18next'
import RelayIcon from '../RelayIcon'
@@ -17,6 +17,21 @@ export default function RelaySetCard({
const { t } = useTranslation()
const [expand, setExpand] = useState(false)
+ const getRelaySetIcon = (name: string) => {
+ const nameLower = name.toLowerCase()
+
+
+ if (nameLower.includes('basspistol')) return Radio
+ if (nameLower.includes('music')) return Music
+ if (nameLower.includes('backstage')) return DoorOpen
+ if (nameLower.includes('hood')) return Trees
+
+
+ return FolderClosed
+ }
+
+ const IconComponent = getRelaySetIcon(relaySet.name)
+
return (
onSelectChange(!select)}
- >
-
-
-
-
+ onClick={() => onSelectChange(!select)}
+ >
+
+
+
+ {/* Use the dynamic icon component instead of hardcoded FolderClosed */}
+
+
+
{relaySet.name}
-
{relaySet.name}
-
{t('n relays', { n: relaySet.relayUrls.length })}
diff --git a/src/pages/primary/NoteListPage/FeedButton.tsx b/src/pages/primary/NoteListPage/FeedButton.tsx
index 42dfa76..8cbba0c 100644
--- a/src/pages/primary/NoteListPage/FeedButton.tsx
+++ b/src/pages/primary/NoteListPage/FeedButton.tsx
@@ -8,7 +8,7 @@ import { cn } from '@/lib/utils'
import { useFavoriteRelays } from '@/providers/FavoriteRelaysProvider'
import { useFeed } from '@/providers/FeedProvider'
import { useScreenSize } from '@/providers/ScreenSizeProvider'
-import { ChevronDown, Server, Star, UsersRound } from 'lucide-react'
+import { ChevronDown, Server, Star, UsersRound, Music, Radio, Trees, DoorOpen } from 'lucide-react'
import { forwardRef, HTMLAttributes, useMemo, useState } from 'react'
import { useTranslation } from 'react-i18next'
@@ -90,13 +90,25 @@ const FeedSwitcherTrigger = forwardRef {
if (feedInfo?.feedType === 'following') return
- if (feedInfo?.feedType === 'pinned') return
- if (feedInfo?.feedType === 'relay' && feedInfo.id) {
- return
- }
+ if (feedInfo?.feedType === 'pinned') return
+ if (feedInfo?.feedType === 'relay' && feedInfo.id) {
+ return
+ }
+ if (feedInfo?.feedType === 'relays') {
+ const relaySetName = feedInfo.name ?? activeRelaySet?.name ?? activeRelaySet?.id ?? ''
+ const nameLower = relaySetName.toLowerCase()
- return
- }, [feedInfo])
+ // Custom icons for your relay sets
+ if (nameLower.includes('basspistol')) return
+ if (nameLower.includes('music')) return
+ if (nameLower.includes('backstage')) return
+ if (nameLower.includes('hood')) return
+
+ // Default relay set icon
+ return
+ }
+ return
+ }, [feedInfo, activeRelaySet])
const clickable =
!IS_COMMUNITY_MODE || COMMUNITY_RELAY_SETS.length + COMMUNITY_RELAYS.length > 1