143 Dev
meejah edited this page 2021-05-26 19:39:24 +00:00
This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

see also NewbieDeveloperSetup, Manual, and Doc

Dev

Views into the process of Tahoe-LAFS hackery.

Source Code (via revision control)

  • git checkout: git clone <https://github.com/tahoe-lafs/tahoe-lafs.git>
  • If you have been given permission to commit directly to trunk, also do: git remote set-url --push origin git@github.com:tahoe-lafs/tahoe-lafs.git

Community

  • [/../../cgi-bin/mailman/listinfo/tahoe-dev The tahoe-dev mailing list] is the community forum for discussion of Tahoe-LAFS design, implementation, and usage.
  • Tahoe-LAFS hackers chat on [irc.libera.chat in channel #tahoe-lafs]irc://irc.libera.chat/%23tahoe-lafs.
  • [The CREDITS file]source:CREDITS contains names people who have contributed to the Tahoe-LAFS project.
  • [The RelatedProjects page](RelatedProjects) has extensions to Tahoe-LAFS and integrations of Tahoe-LAFS with other open source software.
  • There is a weekly conference call for core developers or interested community members.

Extensions

  • Tahoe-LAFS has a programmatic API which enables building custom applications on top of the storage infrastructure.
  • The source:docs/frontends/webapi.rst document shows how to control a Tahoe-LAFS node programmatically over HTTP.
  • The Extension Page has some additional tips on how to use the web-API.

Developer Docs

Design of the System

  • TahoeLAFSBasics on the Nilestore Project's site. This document was written by someone from another project who hasn't really interacted with the Tahoe-LAFS developers much, but it is the best overall introduction to the design of Tahoe-LAFS.
  • after that, look at the "Presentations / Papers", below, or at the "architecture.rst" file in the docs/ directory.
  • Other resources for understanding Tahoe's code:
  • Where does allmydata.client start listening?

Presentations / Papers

How To Contribute To The Tahoe-LAFS Project

Cool New Ideas We're Working On

More Details To Look Up While Working On Your Contribution

  • [the docs/ directory]source:docs/ <-- most core doc is in the source tree here
  • Capabilities: what are readcaps and writecaps and verifycaps, etc
  • The Packaging page shows our current policy for how to re-use 3rd-party libraries and how to distribute Tahoe-LAFS to users.

Tools

  • [//cgi-bin/mailman/listinfo/tahoe-lafs-trac-stream tahoe-lafs-trac-stream] mailing list is the way to receive lots of emails from trac
  • Sources for Tahoe-LAFS and its side-projects are browsable via the "Browse Source" button at the top of each [//trac project site]
  • [//source/tahoe-lafs/tarballs/ https://source/tahoe-lafs/tarballs] contains snapshots of current source code.
  • The Timeline (linked at the top of each page) shows changes to the source code, the issue tickets, and the wiki (i.e. this web site).

Dependencies

  • Copies of libraries that Tahoe-LAFS is dependent on are at [//source/tahoe-lafs/deps/].
  • The [//source/tahoe-lafs/deps/tahoe-dep-eggs tahoe-dep-eggs] subdirectory has precompiled "egg" packages (scroll to the bottom for a matrix of platforms and Python versions for each package).

Metrics

  • The Performance page has notes and graphs about performance measurements.
  • [The TestGrid page](TestGrid) contains usage statistics about the public test grid.

See Also

Papers By Others About Tahoe-LAFS or Derivatives