Skip to content

feat(monorepo): split indexer into apps and packages#68

Merged
tk-o merged 37 commits intomainfrom
feat/monorepo
Jan 24, 2025
Merged

feat(monorepo): split indexer into apps and packages#68
tk-o merged 37 commits intomainfrom
feat/monorepo

Conversation

@tk-o
Copy link
Copy Markdown
Member

@tk-o tk-o commented Jan 22, 2025

Related to #52

Goals

  • easy exporting for ponder schema to support the upcoming @ponder/client feature
    • ponder plugins to be split into packages
      • cannot be done as ponder app requires all handlers to be defined within ponder's rootDir
      • rootDir is a single location, hence, having plugins in separate directories won't work
    • ponder-shema package to host ponder.schema.ts
  • ensnode-common package to host all primitives that can be used outside of ponder app context, for example, on the client side
  • opt-in to using the Subgraph-compatible middleware
    • the Subgraph middleware will have its own package
  • single directory apps to host all runnable modules
    • ensnode ponder app will be the first module here
    • ensnode app will import ponder schema & config from the ponder-bootstrap package
      • the ponder app expects these files to be loaded from a single rootDir — having ponder plugins in play, also place in the rootDir, prevents extracting ponder.config.ts & ponder.schema.ts into a separate package

Loading
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants