Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/Schroedinger-Hat/tanglecat
/ functions
Functions
88 in github.com/Schroedinger-Hat/tanglecat
⨍
Functions
88
◇
Types & classes
37
↓ 8 callers
Function
githubFetchAllPages
(baseUrl: string)
app/src/app/api/webhook/github/route.ts:22
↓ 4 callers
Function
completeChallenge
( playerId: string, challengeId: string, verificationData?: Record<string, unknown>, )
app/src/lib/sanity.queries.ts:79
↓ 4 callers
Function
findChallenge
(challengeId: string)
app/src/lib/sanity.queries.ts:75
↓ 4 callers
Function
findPlayerAndChallenge
(playerEmail: string, challengeId: string)
app/src/lib/sanity.queries.ts:68
↓ 3 callers
Function
capitalize
(str: string)
app/src/app/page.tsx:7
↓ 3 callers
Function
getEventCode
()
app/src/lib/utils/getEventCode.ts:6
↓ 3 callers
Function
setView
(newView: ViewType)
app/src/app/(protected)/dashboard/page.tsx:18
↓ 3 callers
Function
urlForImage
(source: { asset: { _ref: string; _type: "reference" } hotspot?: { x: number; y: number; height: number; w
app/src/lib/sanity.image.ts:6
↓ 2 callers
Function
checkUserFollowsUser
(follower: string, following: string)
app/src/app/api/webhook/github/route.ts:70
↓ 2 callers
Function
getBasePublicUrl
()
app/src/lib/utils/getBasePublicUrl.ts:1
↓ 2 callers
Function
getChallengeById
(id: string)
app/src/lib/sanity.queries.ts:4
↓ 2 callers
Function
handleVerifySecret
(code: string)
app/src/components/ChallengeDetail.tsx:95
↓ 2 callers
Function
isLocalhost
()
app/src/lib/utils/getEventCode.ts:51
↓ 1 callers
Function
checkIsFollowing
* Check whether `followerAccount` (identified by its Mastodon ID on `instance`) * is following `targetAcct` (the full qualified acct, e.g. "nephila@m
app/src/app/api/webhook/mastodon/route.ts:66
↓ 1 callers
Function
checkRepositoryContributions
( username: string, owner: string, repo: string, contributionType: string, )
app/src/app/api/webhook/github/route.ts:90
↓ 1 callers
Function
clearScanner
()
app/src/components/QRCodeScanner.tsx:54
↓ 1 callers
Function
fetchData
()
app/src/components/AwardsView.tsx:18
↓ 1 callers
Function
fetchData
()
app/src/components/ChallengesView.tsx:15
↓ 1 callers
Function
fetchLeaderboard
()
app/src/components/LeaderboardView.tsx:14
↓ 1 callers
Function
getEventCodeFromEnvironment
()
app/src/lib/utils/getEventCodeFromSubdomain.ts:1
↓ 1 callers
Function
getEventCodeFromEnvironment
()
app/src/lib/utils/getEventCode.ts:1
↓ 1 callers
Function
initScanner
()
app/src/components/QRCodeScanner.tsx:43
↓ 1 callers
Function
isValidGitHubVerificationData
(data: unknown)
app/src/types/github.ts:146
↓ 1 callers
Function
parseProfileUrl
* Parse the Mastodon instance and username from a profile URL. * * Supports: * - https://mastodon.social/@nephila → { instance: "mastodon.so
app/src/app/api/webhook/mastodon/route.ts:46
↓ 1 callers
Function
resolveAccount
* Resolve a Mastodon username to an account object via the lookup API. * * Uses GET /api/v1/accounts/lookup which works without authentication and
app/src/app/api/webhook/mastodon/route.ts:23
↓ 1 callers
Function
startScanning
()
app/src/components/QRCodeScanner.tsx:18
Function
AdminPage
()
app/src/app/(admin)/admin/page.tsx:6
Function
AwardDetail
({ award }: Props)
app/src/components/AwardDetail.tsx:19
Function
AwardPage
({ params }: Props)
app/src/app/(protected)/award/[id]/page.tsx:10
Function
AwardsView
()
app/src/components/AwardsView.tsx:12
Function
CardContent
({ children, className = "", }: { children: React.ReactNode className?: string })
app/src/components/ui/Card.tsx:54
Function
CardFooter
({ children, className = "", }: { children: React.ReactNode className?: string })
app/src/components/ui/Card.tsx:62
Function
CardHeader
({ children, className = "", }: { children: React.ReactNode className?: string })
app/src/components/ui/Card.tsx:46
Function
CardSection
({ children, className = "", }: { children: React.ReactNode className?: string })
app/src/components/ui/Card.tsx:70
Function
ChallengeDetail
({ challenge }: Props)
app/src/components/ChallengeDetail.tsx:21
Function
ChallengePage
({ params }: Props)
app/src/app/(protected)/challenge/[id]/page.tsx:9
Function
ChallengesView
()
app/src/components/ChallengesView.tsx:7
Function
CompletionModal
({ isOpen, onClose, challenge }: Props)
app/src/components/CompletionModal.tsx:16
Function
CrossIcon
()
app/src/components/ui/crossIcon.tsx:1
Function
CurveIllustration
({ className = "text-primary-red", })
app/src/components/ui/curveIllustration.tsx:5
Function
DashboardNav
()
app/src/app/(protected)/dashboard/page.tsx:12
Function
DashboardPage
()
app/src/app/(protected)/dashboard/page.tsx:57
Function
GET
()
app/src/app/api/challenges/route.ts:5
Function
GET
()
app/src/app/api/challenges/completed/route.ts:5
Function
GET
(request: Request, { params }: { params: Promise<{ id: string }> })
app/src/app/api/challenges/[id]/status/route.ts:5
Function
GET
()
app/src/app/api/awards/route.ts:6
Function
GET
()
app/src/app/api/awards/completed/route.ts:5
Function
GET
(request: Request, { params }: { params: Promise<{ awardId: string }> })
app/src/app/api/awards/[awardId]/route.ts:5
Function
GET
()
app/src/app/api/leaderboard/route.ts:5
Function
GET
(request: Request)
app/src/app/api/admin/verify-award/route.ts:5
Function
GET
(request: Request)
app/src/app/api/admin/verify-challenge/route.ts:6
Function
HamburgerIcon
({ stroke = "currentColor" })
app/src/components/ui/hamburgerIcon.tsx:7
Function
HomePage
()
app/src/app/page.tsx:11
Function
LeaderboardView
()
app/src/components/LeaderboardView.tsx:8
Function
Logo
({ width = 45, height = 45 })
app/src/components/ui/logo.tsx:8
Function
POST
(request: Request)
app/src/app/api/challenges/redeem/route.ts:5
Function
POST
(request: Request)
app/src/app/api/challenges/verify-secret/route.ts:6
Function
POST
(request: Request, { params }: { params: Promise<{ id: string }> })
app/src/app/api/challenges/[id]/webhook/route.ts:5
Function
POST
(request: Request, { params }: { params: Promise<{ awardId: string }> })
app/src/app/api/awards/[awardId]/route.ts:68
Function
POST
(request: Request)
app/src/app/api/auth/signup/route.ts:5
Function
POST
(request: Request)
app/src/app/api/webhook/catch-all/route.ts:13
Function
POST
(request: Request)
app/src/app/api/webhook/form/route.ts:4
Function
POST
(request: Request)
app/src/app/api/webhook/github/route.ts:156
Function
POST
(request: Request)
app/src/app/api/webhook/mastodon/route.ts:115
Function
QRCodeScanner
({ onScan, onClose }: QRCodeScannerProps)
app/src/components/QRCodeScanner.tsx:11
Function
RootLayout
({ children, }: Readonly<{ children: React.ReactNode }>)
app/src/app/layout.tsx:21
Function
Sidebar
({ isOpen, onClose }: SidebarProps)
app/src/components/ui/sidebar.tsx:13
Function
SignUpForm
()
app/src/components/SignUpForm.tsx:10
Function
StudioPage
()
app/src/app/studio/[[...index]]/page.tsx:6
Function
SupervisorChallenges
({ challenges = [], awards = [], type }: Props)
app/src/components/SupervisorChallenges.tsx:16
Function
WaveHeader
()
app/src/components/ui/waveHeader.tsx:10
Function
getCurrentHostname
()
app/src/lib/utils/getEventCodeFromSubdomain.ts:60
Function
getCurrentHostname
()
app/src/lib/utils/getEventCode.ts:60
Function
getCurrentUrl
()
app/src/lib/utils/getEventCodeFromSubdomain.ts:68
Function
getCurrentUrl
()
app/src/lib/utils/getEventCode.ts:68
Function
getEventCode
()
app/src/lib/utils/getEventCodeFromSubdomain.ts:6
Function
getRequiredFieldsForType
(type: GitHubVerificationType)
app/src/types/github.ts:188
Function
getUser
()
app/src/lib/auth.ts:4
Function
handleClose
()
app/src/components/SupervisorChallenges.tsx:55
Function
handleRedeem
()
app/src/components/ChallengeDetail.tsx:125
Function
handleRedeem
()
app/src/components/AwardDetail.tsx:86
Function
handleScan
(result: string)
app/src/components/SupervisorChallenges.tsx:24
Function
handleSubmit
(e: React.FormEvent)
app/src/components/SignUpForm.tsx:38
Function
isLocalhost
()
app/src/lib/utils/getEventCodeFromSubdomain.ts:51
Function
middleware
(request: NextRequest)
app/src/middleware.ts:8
Function
prepare
({ title, points, startDate, eventCode })
app/sanity/schemaTypes/challenge.ts:178
Function
prepare
({ title, subtitle, points, event, media })
app/sanity/schemaTypes/award.ts:84
Function
signOut
()
app/src/components/ui/sidebar.tsx:17