├── .github └── workflows │ ├── ci.yml │ └── publish.yml ├── .gitignore ├── .prettierrc ├── LICENSE ├── README.md ├── docs ├── cra-babel-setup.md ├── next-data-fetching.md └── steps-after-setup.md ├── e2e ├── .gitignore ├── assets │ ├── cra │ │ ├── TestComponent.jsx │ │ └── TestComponent.tsx │ ├── next │ │ ├── test.js │ │ └── test.tsx │ └── vite │ │ ├── TestComponent.jsx │ │ └── TestComponent.tsx ├── package.json ├── playwright.config.ts ├── tests │ ├── cra-js.spec.ts │ ├── cra-ts.spec.ts │ ├── helpers.ts │ ├── next-js.spec.ts │ ├── next-ts.spec.ts │ ├── vite-js.spec.ts │ └── vite-ts.spec.ts └── yarn.lock ├── jest.config.js ├── package.json ├── showcase.gif ├── src ├── arguments │ ├── ArgumentBase.ts │ ├── ArgumentHandler.ts │ ├── ArtifactDirectoryArgument.ts │ ├── PackageManagerArgument.ts │ ├── SchemaFileArgument.ts │ ├── SrcArgument.ts │ ├── SubscriptionsArgument.ts │ ├── ToolchainArgument.ts │ ├── TypeScriptArgument.ts │ └── index.ts ├── bin.ts ├── consts.ts ├── misc │ ├── CommandRunner.ts │ ├── Environment.ts │ ├── Filesystem.ts │ ├── Git.ts │ ├── PackageJsonFile.ts │ ├── ProjectContext.ts │ ├── RelativePath.ts │ └── packageManagers │ │ ├── NpmPackageManager.ts │ │ ├── PackageManager.ts │ │ ├── PnpmPackageManager.ts │ │ ├── YarnPackageManager.ts │ │ └── index.ts ├── tasks │ ├── AddRelayCompilerScriptsTask.ts │ ├── ConfigureEolOfArtifactsTask.ts │ ├── ConfigureRelayCompilerTask.ts │ ├── GenerateArtifactDirectoryTask.ts │ ├── GenerateGraphQlSchemaFileTask.ts │ ├── GenerateRelayEnvironmentTask.ts │ ├── InstallNpmDependenciesTask.ts │ ├── InstallNpmDevDependenciesTask.ts │ ├── TaskBase.ts │ ├── TaskRunner.ts │ ├── cra │ │ ├── Cra_AddBabelMacroTypeDefinitionsTask.ts │ │ └── Cra_AddRelayEnvironmentProvider.ts │ ├── index.ts │ ├── next │ │ ├── Next_AddRelayEnvironmentProvider.ts │ │ ├── Next_AddTypeHelpers.ts │ │ └── Next_ConfigureNextCompilerTask.ts │ └── vite │ │ ├── Vite_AddRelayEnvironmentProvider.ts │ │ └── Vite_ConfigureVitePluginRelayTask.ts ├── types.ts └── utils │ ├── ast.ts │ ├── cli.ts │ └── index.ts ├── tsconfig.json └── yarn.lock /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.github/workflows/publish.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/.github/workflows/publish.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.log 2 | .DS_Store 3 | node_modules 4 | dist 5 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "printWidth": 120 3 | } 4 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/README.md -------------------------------------------------------------------------------- /docs/cra-babel-setup.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/docs/cra-babel-setup.md -------------------------------------------------------------------------------- /docs/next-data-fetching.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/docs/next-data-fetching.md -------------------------------------------------------------------------------- /docs/steps-after-setup.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/docs/steps-after-setup.md -------------------------------------------------------------------------------- /e2e/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/e2e/.gitignore -------------------------------------------------------------------------------- /e2e/assets/cra/TestComponent.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/e2e/assets/cra/TestComponent.jsx -------------------------------------------------------------------------------- /e2e/assets/cra/TestComponent.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/e2e/assets/cra/TestComponent.tsx -------------------------------------------------------------------------------- /e2e/assets/next/test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/e2e/assets/next/test.js -------------------------------------------------------------------------------- /e2e/assets/next/test.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/e2e/assets/next/test.tsx -------------------------------------------------------------------------------- /e2e/assets/vite/TestComponent.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/e2e/assets/vite/TestComponent.jsx -------------------------------------------------------------------------------- /e2e/assets/vite/TestComponent.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/e2e/assets/vite/TestComponent.tsx -------------------------------------------------------------------------------- /e2e/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/e2e/package.json -------------------------------------------------------------------------------- /e2e/playwright.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/e2e/playwright.config.ts -------------------------------------------------------------------------------- /e2e/tests/cra-js.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/e2e/tests/cra-js.spec.ts -------------------------------------------------------------------------------- /e2e/tests/cra-ts.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/e2e/tests/cra-ts.spec.ts -------------------------------------------------------------------------------- /e2e/tests/helpers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/e2e/tests/helpers.ts -------------------------------------------------------------------------------- /e2e/tests/next-js.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/e2e/tests/next-js.spec.ts -------------------------------------------------------------------------------- /e2e/tests/next-ts.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/e2e/tests/next-ts.spec.ts -------------------------------------------------------------------------------- /e2e/tests/vite-js.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/e2e/tests/vite-js.spec.ts -------------------------------------------------------------------------------- /e2e/tests/vite-ts.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/e2e/tests/vite-ts.spec.ts -------------------------------------------------------------------------------- /e2e/yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/e2e/yarn.lock -------------------------------------------------------------------------------- /jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/jest.config.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/package.json -------------------------------------------------------------------------------- /showcase.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/showcase.gif -------------------------------------------------------------------------------- /src/arguments/ArgumentBase.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/arguments/ArgumentBase.ts -------------------------------------------------------------------------------- /src/arguments/ArgumentHandler.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/arguments/ArgumentHandler.ts -------------------------------------------------------------------------------- /src/arguments/ArtifactDirectoryArgument.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/arguments/ArtifactDirectoryArgument.ts -------------------------------------------------------------------------------- /src/arguments/PackageManagerArgument.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/arguments/PackageManagerArgument.ts -------------------------------------------------------------------------------- /src/arguments/SchemaFileArgument.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/arguments/SchemaFileArgument.ts -------------------------------------------------------------------------------- /src/arguments/SrcArgument.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/arguments/SrcArgument.ts -------------------------------------------------------------------------------- /src/arguments/SubscriptionsArgument.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/arguments/SubscriptionsArgument.ts -------------------------------------------------------------------------------- /src/arguments/ToolchainArgument.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/arguments/ToolchainArgument.ts -------------------------------------------------------------------------------- /src/arguments/TypeScriptArgument.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/arguments/TypeScriptArgument.ts -------------------------------------------------------------------------------- /src/arguments/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/arguments/index.ts -------------------------------------------------------------------------------- /src/bin.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/bin.ts -------------------------------------------------------------------------------- /src/consts.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/consts.ts -------------------------------------------------------------------------------- /src/misc/CommandRunner.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/misc/CommandRunner.ts -------------------------------------------------------------------------------- /src/misc/Environment.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/misc/Environment.ts -------------------------------------------------------------------------------- /src/misc/Filesystem.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/misc/Filesystem.ts -------------------------------------------------------------------------------- /src/misc/Git.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/misc/Git.ts -------------------------------------------------------------------------------- /src/misc/PackageJsonFile.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/misc/PackageJsonFile.ts -------------------------------------------------------------------------------- /src/misc/ProjectContext.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/misc/ProjectContext.ts -------------------------------------------------------------------------------- /src/misc/RelativePath.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/misc/RelativePath.ts -------------------------------------------------------------------------------- /src/misc/packageManagers/NpmPackageManager.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/misc/packageManagers/NpmPackageManager.ts -------------------------------------------------------------------------------- /src/misc/packageManagers/PackageManager.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/misc/packageManagers/PackageManager.ts -------------------------------------------------------------------------------- /src/misc/packageManagers/PnpmPackageManager.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/misc/packageManagers/PnpmPackageManager.ts -------------------------------------------------------------------------------- /src/misc/packageManagers/YarnPackageManager.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/misc/packageManagers/YarnPackageManager.ts -------------------------------------------------------------------------------- /src/misc/packageManagers/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/misc/packageManagers/index.ts -------------------------------------------------------------------------------- /src/tasks/AddRelayCompilerScriptsTask.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/tasks/AddRelayCompilerScriptsTask.ts -------------------------------------------------------------------------------- /src/tasks/ConfigureEolOfArtifactsTask.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/tasks/ConfigureEolOfArtifactsTask.ts -------------------------------------------------------------------------------- /src/tasks/ConfigureRelayCompilerTask.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/tasks/ConfigureRelayCompilerTask.ts -------------------------------------------------------------------------------- /src/tasks/GenerateArtifactDirectoryTask.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/tasks/GenerateArtifactDirectoryTask.ts -------------------------------------------------------------------------------- /src/tasks/GenerateGraphQlSchemaFileTask.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/tasks/GenerateGraphQlSchemaFileTask.ts -------------------------------------------------------------------------------- /src/tasks/GenerateRelayEnvironmentTask.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/tasks/GenerateRelayEnvironmentTask.ts -------------------------------------------------------------------------------- /src/tasks/InstallNpmDependenciesTask.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/tasks/InstallNpmDependenciesTask.ts -------------------------------------------------------------------------------- /src/tasks/InstallNpmDevDependenciesTask.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/tasks/InstallNpmDevDependenciesTask.ts -------------------------------------------------------------------------------- /src/tasks/TaskBase.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/tasks/TaskBase.ts -------------------------------------------------------------------------------- /src/tasks/TaskRunner.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/tasks/TaskRunner.ts -------------------------------------------------------------------------------- /src/tasks/cra/Cra_AddBabelMacroTypeDefinitionsTask.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/tasks/cra/Cra_AddBabelMacroTypeDefinitionsTask.ts -------------------------------------------------------------------------------- /src/tasks/cra/Cra_AddRelayEnvironmentProvider.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/tasks/cra/Cra_AddRelayEnvironmentProvider.ts -------------------------------------------------------------------------------- /src/tasks/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/tasks/index.ts -------------------------------------------------------------------------------- /src/tasks/next/Next_AddRelayEnvironmentProvider.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/tasks/next/Next_AddRelayEnvironmentProvider.ts -------------------------------------------------------------------------------- /src/tasks/next/Next_AddTypeHelpers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/tasks/next/Next_AddTypeHelpers.ts -------------------------------------------------------------------------------- /src/tasks/next/Next_ConfigureNextCompilerTask.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/tasks/next/Next_ConfigureNextCompilerTask.ts -------------------------------------------------------------------------------- /src/tasks/vite/Vite_AddRelayEnvironmentProvider.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/tasks/vite/Vite_AddRelayEnvironmentProvider.ts -------------------------------------------------------------------------------- /src/tasks/vite/Vite_ConfigureVitePluginRelayTask.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/tasks/vite/Vite_ConfigureVitePluginRelayTask.ts -------------------------------------------------------------------------------- /src/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/types.ts -------------------------------------------------------------------------------- /src/utils/ast.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/utils/ast.ts -------------------------------------------------------------------------------- /src/utils/cli.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/utils/cli.ts -------------------------------------------------------------------------------- /src/utils/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/src/utils/index.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/tsconfig.json -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tobias-tengler/create-relay-app/HEAD/yarn.lock --------------------------------------------------------------------------------