mirror of
https://github.com/dergigi/boris.git
synced 2025-12-18 15:14:20 +01:00
feat: add hardcoded bot pubkey filtering
This commit is contained in:
@@ -6,6 +6,7 @@ import { formatDistance } from 'date-fns'
|
|||||||
import { BlogPostPreview } from '../services/exploreService'
|
import { BlogPostPreview } from '../services/exploreService'
|
||||||
import { useEventModel } from 'applesauce-react/hooks'
|
import { useEventModel } from 'applesauce-react/hooks'
|
||||||
import { Models } from 'applesauce-core'
|
import { Models } from 'applesauce-core'
|
||||||
|
import { isKnownBot } from '../config/bots'
|
||||||
|
|
||||||
interface BlogPostCardProps {
|
interface BlogPostCardProps {
|
||||||
post: BlogPostPreview
|
post: BlogPostPreview
|
||||||
@@ -22,7 +23,7 @@ const BlogPostCard: React.FC<BlogPostCardProps> = ({ post, href, level, readingP
|
|||||||
const rawName = (profile?.name || profile?.display_name || '').toLowerCase()
|
const rawName = (profile?.name || profile?.display_name || '').toLowerCase()
|
||||||
|
|
||||||
// Hide bot authors by name/display_name
|
// Hide bot authors by name/display_name
|
||||||
if (hideBotByName && rawName.includes('bot')) {
|
if (hideBotByName && (rawName.includes('bot') || isKnownBot(post.author))) {
|
||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
17
src/config/bots.ts
Normal file
17
src/config/bots.ts
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
import { nip19 } from 'nostr-tools'
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Hardcoded list of bot pubkeys (hex format) to hide articles from
|
||||||
|
* These are accounts known to be bots or automated services
|
||||||
|
*/
|
||||||
|
export const BOT_PUBKEYS = new Set([
|
||||||
|
// Step Counter Bot (npub14l5xklll5vxzrf6hfkv8m6n2gqevythn5pqc6ezluespah0e8ars4279ss)
|
||||||
|
nip19.decode('npub14l5xklll5vxzrf6hfkv8m6n2gqevythn5pqc6ezluespah0e8ars4279ss').data as string,
|
||||||
|
])
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check if a pubkey corresponds to a known bot
|
||||||
|
*/
|
||||||
|
export function isKnownBot(pubkey: string): boolean {
|
||||||
|
return BOT_PUBKEYS.has(pubkey)
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user