muaz-khan / RTCMultiConnection

RTCMultiConnection is a WebRTC JavaScript library for peer-to-peer applications (screen sharing, audio/video conferencing, file sharing, media streaming etc.)
https://muazkhan.com:9001/
MIT License
2.57k stars 1.37k forks source link

Some ideas #15

Open killmenot opened 9 years ago

killmenot commented 9 years ago

Hi Muaz,

First of all, thank you for a great library.

I'm playing with RTCMultiConnection found that it's different in this repo and https://github.com/muaz-khan/WebRTC-Experiment/tree/master/RTCMultiConnection

My issue is located in difference between the following files: https://github.com/muaz-khan/WebRTC-Experiment/blob/master/RTCMultiConnection/latest.js#L3470 and https://github.com/muaz-khan/RTCMultiConnection/blob/master/RTCMultiConnection.js#L3470

What do you think about the following ideas:

  1. Add bower support. See more here
  2. Include "RTCMultiConnection" as node/bower package to "WebRTC-Experiment" repository (allows to manage it better in WebRTC-Experiment repo)
  3. Use tags to manage different versions
    • You can use grunt-bump or grunt-contrib-bump for that
      1. Move change log from library to a separate file (CHANGELOG.md)
      2. Create CONTRIBUTING.md to describe contributing rules.

If you don't mind I can do most part of changes and send you a pull request?

muaz-khan commented 9 years ago

It is easy to separate RTCMultiConnection objects in unique repositories however it is really hard for single repository i.e. /muaz-khan/RTCMultiConnection to link those repositories as sub-modules.

What I wanted was, whenever I push stuff in /muaz-khan/FileBufferReader, RTCMultiConnection should be auto committed for changes. About 12-to-15 repositories can be created to manage different tasks (e.g. TextSender, PeerConnection, getUserMedia, DetectRTC, etc).

Do you think, if it is possible to do changes only here:

And changes should be auto submitted here:

BTW, please feel free to add bower files, CHANGELOG.md and CONTRIBUTING.md.

killmenot commented 9 years ago

You can go the same way like expressjs guys do it

Initially, they have a lot of middle-wares inside express.js and they had a problems with updating it correctly. Then, they move our middle-wares to a separate modules and join them in express.js (see deps here https://github.com/strongloop/express/blob/master/package.json)

Now, they can update middleware module if needed and they just update version of npm module in express.js package.json

Also, community can use middle wares in their own projects if needed