Skip to content

Conversation

subtleGradient
Copy link

This pull request introduces several improvements to project setup, development workflow, and template management. The most significant changes are the addition of repository guidelines, a new post-create hook for template scaffolding, updates to dependencies and workspace configuration, and enhanced template support for Expo apps. These updates aim to make onboarding, development, and customization smoother and more consistent across the repository.

Documentation and Workflow Improvements:

  • Added a comprehensive AGENTS.md file outlining repository structure, commands, coding style, testing, commit/PR guidelines, and agent workflow best practices.
  • Updated README.md with a clearer quick start guide and project description for Effect Native examples.

Template and Scaffolding Enhancements:

  • Implemented a post-create hook mechanism in packages/create-effect-app/src/Cli.ts that detects and runs a did-create-effect-app script after scaffolding a new project or template, improving initial customization and onboarding. [1] [2] [3]
  • Added a sample did-create-effect-app script to templates/basic/scripts/, which lists files with placeholders that typically need user customization after scaffolding.

Expo App Template Support:

  • Added various configuration and ignore files to templates/expo-app (e.g., .envrc, .gitignore, .prettierignore, .svgrrc, .vscode/extensions.json) to improve developer experience and maintain consistency. [1] [2] [3] [4] [5]
  • Introduced scripts/update-expo-app-template.sh to streamline updating the Expo app template from upstream while preserving history and filtering out unnecessary files.

Dependency and Workspace Updates:

  • Updated dependencies in pnpm-lock.yaml, including bumping @effect/language-service to 0.39.0, and added missing dependencies for core packages. Marked some deprecated packages and cleaned up unused dependencies. [1] [2] [3] [4]
  • Set nodeLinker: isolated in pnpm-workspace.yaml for improved workspace isolation.
  • Modified flake.nix to use mkShellNoCC and added pnpm to the development shell for better reproducibility.

These changes collectively improve the developer onboarding experience, ensure templates are easier to customize, and keep the project dependencies and configuration up to date.

create-effect-app

- Add inline Expo app configuration after template creation - Prefer
local templates/examples when running from a repo checkout - Remove
post-create script hook; all post-processing is now inline - Refactor
template choices to use Prompt.SelectChoice type - Add NodeTerminal
layer for improved prompt support
Allow specifying a template via --template-folder or --template-repo.
Update prompts and project creation logic to support these sources. Add
parsing and downloading for arbitrary GitHub repo specs.
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.

6 participants