Skip to content
This repository has been archived by the owner on Sep 30, 2021. It is now read-only.

Plans #2

Open
marudor opened this issue Feb 4, 2016 · 9 comments
Open

Plans #2

marudor opened this issue Feb 4, 2016 · 9 comments

Comments

@marudor
Copy link

marudor commented Feb 4, 2016

Hey,
I've noticed you used my Type Interfaces as a start for your own repo.
How about we start something like DefinitelyTyped and work on the same interfaces instead of writing on 2 different code bases?
That way everyone can include what he needs and we can keep as many interfaces as possible.

@dvdzkwsk
Copy link

dvdzkwsk commented Feb 4, 2016

@marudor definitely sounds like a good idea, I originally wanted to just PR on yours but in the process of configuring some internal CI tools it was easier to just fork it. Let me talk it over with the rest of the team and see how they feel about it, but I think keeping the code in one place would definitely be wise.

That said, huge thanks for this repo... I looked everywhere for common flow interfaces.

@chrisbolin
Copy link

Any update @marudor or @davezuko? It'd be awesome to have a ✨collective✨resource for Flow types :)

@dvdzkwsk
Copy link

Sorry, been pretty busy and this fell below my radar.

@marudor I'd be open to helping maintain a single repository, and would be willing to stop maintaining a separate fork if we can achieve feature parity in the ✨ collective ✨ repository. My biggest concerns/stipulations are:

  • Needs to be published to NPM and versioned accordingly
  • Probably needs to support package versioning, such as:
| interfaces
|  | -- lodash
|    | -- 3.0.0
|    | -- 4.0.0

If this is something you'd be up for I'd be totally on board.

@marudor
Copy link
Author

marudor commented Feb 18, 2016

I was also quite busy.
The main problem I see is organising as you said.
Currently I use this repository just as a submodule in my projects.
As a very rough Idea I created https://github.com/marudor/flowtypes.
It allows simple downloading of any Interface in this repository by name.

Another way would be to actually publish every interface with npm.
We could easily do a mono repository, manage it with https://github.com/kittens/lerna (tool used in babel for instance) and use keywords for each interface.
That way it is fairly easy for others to create interfaces.

I actually like the mono repo thing as we do not need to write another tool to manage interfaces, people can add them as dev dependency and it will "just work" when someone clones a repo with them in it.

@davezuko
Whats your thought on this?

@guzart
Copy link

guzart commented Feb 21, 2016

+1 for the mono repo. It solves the problem of a developer having interfaces for lodash 3.10.x with moment 1.7.x at the same time.

Using a mono repo would be great to get the ball rolling fast, and would piggy-back on a mature package manager (npm), no need to re-invent the wheel with a new package manager.

One very small caveat is that I will have "duplicate" packages in my package.json, package lodash in dependencies and lodash-iflow in devDependencies, in my opinion insignificant as long as all packages have a prefix e.g. iflow-, similar to babel's naming convention (babel-preset-, babel-plugin-)

@marudor
Copy link
Author

marudor commented Feb 21, 2016

Well - lets see how this works.
I've rearranged by repository to a monorepo.
Every Interface I had is published as iflow-.
Feel free to send PRs.

@dvdzkwsk
Copy link

@marudor I will start contributing to yours :)

@dvdzkwsk
Copy link

Will hopefully be deprecating in favor of flow-typed.

@casertap
Copy link

Great work guys! Thank you very much.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Development

No branches or pull requests

5 participants