Skip to content

Comments

Replace fp-ts with plain TypeScript#359

Merged
mkobayashime merged 2 commits intomainfrom
remove-fp-ts
Feb 20, 2026
Merged

Replace fp-ts with plain TypeScript#359
mkobayashime merged 2 commits intomainfrom
remove-fp-ts

Conversation

@mkobayashime
Copy link
Owner

Summary

  • Replaced all fp-ts usage with native TypeScript features to reduce dependency complexity
  • Removed fp-ts package from devDependencies

Changes

  • Option<FileProperties>FileProperties | null
  • O.none/O.some()null/direct object return
  • pipe() function composition → direct Promise.all() with .flatMap()
  • A.compact.filter() with type guard
  • A.sort() with Ord → native .sort() with localeCompare()
  • O.isSome() → simple null checks

Test plan

  • All tests pass (16/16)
  • TypeScript compilation succeeds
  • Doc generation script works correctly
  • Manifest generation works correctly

Remove all fp-ts usage in favor of native TypeScript features:
- Option<FileProperties> → FileProperties | null
- O.none/O.some → null/return object
- pipe() flow → direct Promise.all with filter
- O.isSome() → null checks
- A.compact → .filter() with type guard
- A.sort() with Ord → native .sort() with localeCompare
Remove fp-ts from devDependencies after replacing its usage with plain TypeScript.
@mkobayashime mkobayashime merged commit be98e4f into main Feb 20, 2026
2 checks passed
@mkobayashime mkobayashime deleted the remove-fp-ts branch February 20, 2026 04: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