Skip to content

chore: migrate to Vite+ toolchain#289

Closed
fadi-george wants to merge 6 commits intomainfrom
fadi/sdk-4199-add-vite-to-expo-sdk
Closed

chore: migrate to Vite+ toolchain#289
fadi-george wants to merge 6 commits intomainfrom
fadi/sdk-4199-add-vite-to-expo-sdk

Conversation

@fadi-george
Copy link
Contributor

Summary

  • Build: Replace tsc + manual copy with vp pack (tsdown). Output is a single CJS bundle at dist/index.js (~24 KB) with generated .d.ts types. Removes app.plugin.js shim.
  • Test: Migrate all tests from bun:test to Vitest (vite-plus/test). Co-locate test files next to source modules instead of a separate __tests__/ directory.
  • Lint/Format: Add vp check with type-aware linting (oxlint + tsgolint) and vp fmt (oxfmt). Fix all lint errors across src/ and examples/.
  • Dependencies: Remove @types/bun, prettier, expo-module-scripts, concurrently, typescript from devDeps. Add @types/node, @types/react, vite-plus, @vitest/coverage-v8. Move @expo/config-plugins to peerDependencies.
  • Project structure: Move serviceExtensionFiles/ from src/support/ to package root (static assets don't belong in the build pipeline). Add root tsconfig.json. Export OneSignalPluginProps type from package entry.
  • Demo app: Add custom index.js entry point to fix Metro resolution under bun's nested node_modules layout.

Test plan

  • vp test — 49 tests pass
  • vp check src examples — no errors or warnings
  • vp pack — builds dist/index.js + dist/index.d.ts
  • bun run ios from examples/demo — verify app loads and plugin applies
  • bun run android from examples/demo — verify app loads and plugin applies
  • bun run ios from examples/disable-nse — verify NSE is not added

Made with Cursor

@fadi-george fadi-george requested a review from a team as a code owner March 20, 2026 22:23
@fadi-george fadi-george force-pushed the fadi/sdk-4199-add-vite-to-expo-sdk branch from 5f0d8dd to c03f022 Compare March 20, 2026 22:23
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.

1 participant