MCPcopy Index your code
hub / github.com/PhantomKnight287/frameground

github.com/PhantomKnight287/frameground @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
233 symbols 852 edges 253 files 12 documented · 5%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Frame Ground

Learn JavaScript frameworks with interactive challenges

Welcome to Frame Ground, where mastering JavaScript frameworks becomes an engaging adventure! 🚀 Dive into interactive challenges.

Setting Up The Project Locally

Please read the setting up the project locally

Screenshot

image image

Server Actions - Component Flow

Server Actions - Component Flow

Sponsors

JetBrains Logo (Main) logo.

Thanks to Jetbrains for giving me their Open Source License.

Special Thanks

  • @typehero for the inspiration and color schemes
  • @fuma-nama for animation on landing page and some UI components
  • @siduck for motivation
  • @shivam1317 for the name FrameGround(previously WebHero)

Extension points exported contracts — how you extend this code

FrameGroundChallengeExport (Interface)
(no doc)
challenges/src/index.ts
Session (Interface)
(no doc)
packages/auth/src/index.ts
TerminalProps (Interface)
(no doc)
packages/terminal/src/type.ts
EditorState (Interface)
(no doc)
packages/monaco/src/state/index.ts
FrameGroundChallengeExport (Interface)
(no doc)
packages/db/scripts/index.ts
InputProps (Interface)
(no doc)
apps/web/components/ui/input.tsx
InputProps (Interface)
(no doc)
apps/admin/components/ui/input.tsx
User (Interface)
(no doc)
packages/auth/src/index.ts

Core symbols most depended-on inside this repo

cn
called by 120
apps/admin/lib/utils.ts
write
called by 11
apps/web/app/tracks/[track]/challenge/[challenge]/_page.client.tsx
fromNow
called by 8
apps/web/utils/time.ts
assertAdmin
called by 8
apps/admin/utils/auth.ts
upperFirst
called by 7
packages/utils/src/text.ts
setActiveFile
called by 5
packages/monaco/src/state/index.ts
parseToNumber
called by 4
packages/utils/src/text.ts
generateFilePath
called by 3
apps/web/app/tracks/[track]/challenge/[challenge]/functions.ts

Shape

Function 199
Interface 15
Method 12
Enum 5
Class 2

Languages

TypeScript97%
Rust3%

Modules by API surface

packages/terminal/src/type.ts12 symbols
packages/monaco/src/editor/editor-hooks.ts7 symbols
parser/src/main.rs6 symbols
apps/web/components/markdown/index.tsx6 symbols
apps/web/app/tracks/[track]/challenge/[challenge]/_page.client.tsx6 symbols
packages/terminal/src/terminal.tsx3 symbols
packages/monaco/src/editor/split-editor.tsx3 symbols
packages/db/scripts/index.ts3 symbols
packages/auth/src/index.ts3 symbols
apps/web/app/tracks/[track]/challenge/[challenge]/solved/actions.ts3 symbols
apps/web/app/tracks/[track]/challenge/[challenge]/page.tsx3 symbols
apps/web/app/tracks/[track]/challenge/[challenge]/action.ts3 symbols

For agents

$ claude mcp add frameground \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact