Skip to content
This repository was archived by the owner on Mar 19, 2025. It is now read-only.

Contributing

hassox edited this page Sep 13, 2010 · 2 revisions

Chain must be a community driven and adopted spec. By the community embracing the Chain spec, we can share each others efforts in re-usable code.

There’s plenty of ways to contribute to Chain.

  • Feedback on the spec
  • Patches to chain to help implement the spec
  • Patches to chain to test it (javascript tests aren’t my strong point yet)
  • Implement Chain compatible Links that may be re-used
  • Implement Node Servers that may run beside a Chain based app and emit events

Feedback

Jump into #chain on irc freenode and talk away
Post to the node.js mailing list

Patches

Patch Chain’s helpers and builders to be more robust. Create a fork and send me a pull request. This is best coupled with a thread on the mailing list.

Patches to chain to test the basics are very very welcome.

Chain Compatible Links (Components)

There’s a whole lot of re-usable chunks of code that could and should be implemented as chain links. Please claim one by moving it from the “needed” section to the “impelmentations” section. If one is being worked on already that you’re interested in, either help contribute, or add a link to your own solution in the implementations section. If you think one should be added that isn’t there yet, please add it to the list.

Needed Links

  • Session
  • Authentication
  • WebSockets
  • Router

Implemented Links

Node Servers

In some cases it may be beneficial to run a server inside your node that is not your http server. Lets say your main http server is on port 8000, you could also start a mail relay server on port 25 to receive emails. This could then raise a “Mail Received” event which the http application could bind to. Couple this with web-sockets and you could implement a push system where the push is initiated from a received email.

Needed

  • SMTP relay (receive email in node for your application. Raise a “Mail Received” or similar event

Implemented

Clone this wiki locally