fp-ts icon indicating copy to clipboard operation
fp-ts copied to clipboard

NPM @fp-ts/*

Open waynevanson opened this issue 3 years ago • 1 comments

Is it worth having the NPM scope @fp-ts? It seems to be available. https://www.npmjs.com/search?q=%40fp-ts

If so, I wonder how it could be structured.

How to:

  • Distinguish core from non-core files?
  • Distinguish what is and is not officially supported?
  • Different environments

List of possibilities, without too much thought.

@fp-ts

  • /core
  • /std
  • /node
  • /dom-browser
  • /HKT
  • /testing
  • /dom-mobile (eg. Touch API's)
  • /core
  • /derive
  • /<every-package-under-the-sun>

Pros:

  • Standardized infrastructure and build systems.
  • Interlace GitHub actions to test changes from one repos across all.
  • Some modules can reexport namespaces based on environment (/dom-mobile, dom-browser).
  • Start to figure out what's missing in the space to make fp-ts a standard within an enterprise setting.
  • Standard naming convention: @fp-ts/<name> instead of <name>-ts, fp-ts-<name> and fp-<name>.
  • Quality control for officially supported packages.

Cons:

  • If we start with a real messed up structure, it'll be a pain to fix.
  • Decide what tools are the best tools to use (ie. yarn or npm for package management?)
  • Typescript versioning. They don't follow semantic versioning, so future versions within "compatible" versions are breaking.
  • Timing. Waiting for typescript features like parametric types to be added, as this is a game changer.
  • Time. Surely something like this takes a lot of time.

waynevanson avatar Feb 25 '21 20:02 waynevanson

FYI, I nabbed the fp-ts org name on npmjs.org a while back in order to reserve it for the fp-ts ecosystem should gcanti ever want to go that direction. Happy to give gcanti ownership whenever he wants it.

derrickbeining avatar May 01 '21 18:05 derrickbeining

Hi @derrickbeining, I'm working on fp-ts@v3 and it would be nice to release the next version under the fp-ts org name, let me know if it's ok for you, thanks!

gcanti avatar Sep 23 '22 16:09 gcanti

Would there be any interest in adopting/integrating community packages? I think fp-ts-std may make a good foundation for something like an @fp-ts/extra.

samhh avatar Oct 19 '22 15:10 samhh

@samhh there is https://github.com/gcanti/fp-ts-contrib

adrian-gierakowski avatar Oct 19 '22 17:10 adrian-gierakowski

That can form the foundation, but it's a bit disorganised at the moment - I'd anticipate an extra/contrib library sharing the same structure as core. Equally a lot of the stuff that's moved into fp-ts proper isn't really fundamental and perhaps better belongs in contrib than core.

samhh avatar Oct 20 '22 14:10 samhh