Skip to content

mathLab/PyGeM

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

173 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


<!DOCTYPE html>
<html class="writer-html5" lang="en" data-content_root="./">
<head>
  <meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" />

  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <title>How to contribute &mdash; PyGeM 2.0.0 documentation</title>
      <link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
      <link rel="stylesheet" type="text/css" href="_static/css/theme.css?v=e59714d7" />
      <link rel="stylesheet" type="text/css" href="_static/graphviz.css?v=4ae1632d" />

  
      <script src="_static/jquery.js?v=5d32c60e"></script>
      <script src="_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
      <script src="_static/documentation_options.js?v=51b770b3"></script>
      <script src="_static/doctools.js?v=9bcbadda"></script>
      <script src="_static/sphinx_highlight.js?v=dc90522c"></script>
    <script src="_static/js/theme.js"></script>
    <link rel="index" title="Index" href="genindex.html" />
    <link rel="search" title="Search" href="search.html" />
    <link rel="next" title="License" href="LICENSE.html" />
    <link rel="prev" title="Contact" href="contact.html" /> 
</head>

<body class="wy-body-for-nav"> 
  <div class="wy-grid-for-nav">
    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
      <div class="wy-side-scroll">
        <div class="wy-side-nav-search" >

          
          
          <a href="index.html" class="icon icon-home">
            PyGeM
          </a>
<div role="search">
  <form id="rtd-search-form" class="wy-form" action="search.html" method="get">
    <input type="text" name="q" placeholder="Search docs" aria-label="Search docs" />
    <input type="hidden" name="check_keywords" value="yes" />
    <input type="hidden" name="area" value="default" />
  </form>
</div>
        </div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
              <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="code.html">Code Documentation</a></li>
<li class="toctree-l1"><a class="reference internal" href="tutorials.html">Tutorials</a></li>
<li class="toctree-l1"><a class="reference internal" href="contact.html">Contact</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">How to contribute</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#development-setup">Development Setup</a></li>
<li class="toctree-l2"><a class="reference internal" href="#common-development-tasks">Common Development Tasks</a></li>
<li class="toctree-l2"><a class="reference internal" href="#submitting-a-patch">Submitting a patch:</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="LICENSE.html">License</a></li>
</ul>

        </div>
      </div>
    </nav>

    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
          <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
          <a href="index.html">PyGeM</a>
      </nav>

      <div class="wy-nav-content">
        <div class="rst-content">
          <div role="navigation" aria-label="Page navigation">
  <ul class="wy-breadcrumbs">
      <li><a href="index.html" class="icon icon-home" aria-label="Home"></a></li>
      <li class="breadcrumb-item active">How to contribute</li>
      <li class="wy-breadcrumbs-aside">
            <a href="_sources/contributing.rst.txt" rel="nofollow"> View page source</a>
      </li>
  </ul>
  <hr/>
</div>
          <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
           <div itemprop="articleBody">
             
  <section id="how-to-contribute">
<h1>How to contribute<a class="headerlink" href="#how-to-contribute" title="Link to this heading"></a></h1>
<p>We’d love to accept your patches and contributions to this project. There are
just a few small guidelines you need to follow.</p>
<section id="development-setup">
<h2>Development Setup<a class="headerlink" href="#development-setup" title="Link to this heading"></a></h2>
<p>First, install PyGeM in development mode with all development dependencies:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>pip<span class="w"> </span>install<span class="w"> </span>-e<span class="w"> </span><span class="s2">&quot;.[dev]&quot;</span>
</pre></div>
</div>
<p>This installs the package in editable mode with all development extras (testing, documentation, tutorials, and code quality tools).</p>
</section>
<section id="common-development-tasks">
<h2>Common Development Tasks<a class="headerlink" href="#common-development-tasks" title="Link to this heading"></a></h2>
<p><strong>Running tests:</strong></p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>pip<span class="w"> </span>install<span class="w"> </span>-e<span class="w"> </span><span class="s2">&quot;.[dev]&quot;</span><span class="w">      </span><span class="c1"># or &quot;.[test]&quot; if just running tests</span>
pytest
</pre></div>
</div>
<p><strong>Building documentation:</strong></p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>pip<span class="w"> </span>install<span class="w"> </span><span class="s2">&quot;.[docs]&quot;</span>
<span class="nb">cd</span><span class="w"> </span>docs
make<span class="w"> </span>html
</pre></div>
</div>
<p><strong>Code formatting:</strong></p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>black<span class="w"> </span>.
</pre></div>
</div>
<p><strong>Code linting:</strong></p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>pylint<span class="w"> </span>pygem
</pre></div>
</div>
<p><strong>Running tutorials:</strong></p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>pip<span class="w"> </span>install<span class="w"> </span><span class="s2">&quot;.[tut]&quot;</span>
</pre></div>
</div>
</section>
<section id="submitting-a-patch">
<h2>Submitting a patch:<a class="headerlink" href="#submitting-a-patch" title="Link to this heading"></a></h2>
<blockquote>
<div><ol class="arabic simple">
<li><p>It’s generally best to start by opening a new issue describing the bug or
feature you’re intending to fix.  Even if you think it’s relatively minor,
it’s helpful to know what people are working on.  Mention in the initial
issue that you are planning to work on that bug or feature so that it can
be assigned to you.</p></li>
<li><p>Follow the normal process of forking the project, and setup a new
branch to work in.  It’s important that each group of changes be done in
separate branches in order to ensure that a pull request only includes the
commits related to that bug or feature.</p></li>
<li><p>To ensure properly formatted code, please make sure to use a tab of 4
spaces to indent the code. You should also run pylint over your code.
It’s not strictly necessary that your code be completely “lint-free”,
but this will help you find common style issues.</p></li>
<li><p>Any significant changes should almost always be accompanied by tests.  The
project already has good test coverage, so look at some of the existing
tests if you’re unsure how to go about it. We’re using coveralls that
is an invaluable tools for seeing which parts of your code aren’t being
exercised by your tests.</p></li>
<li><p>Do your best to have well-formed commit messages for each change.
This provides consistency throughout the project, and ensures that commit
messages are able to be formatted properly by various git tools.</p></li>
<li><p>Finally, push the commits to your fork and submit a pull request. Please,
remember to rebase properly in order to maintain a clean, linear git history.</p></li>
</ol>
</div></blockquote>
</section>
</section>


           </div>
          </div>
          <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
        <a href="contact.html" class="btn btn-neutral float-left" title="Contact" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
        <a href="LICENSE.html" class="btn btn-neutral float-right" title="License" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
    </div>

  <hr/>

  <div role="contentinfo">
    <p>&#169; Copyright Copyright 2017-2025, PyGeM contributors.
      <span class="lastupdated">Last updated on Dec 11, 2025.
      </span></p>
  </div>

  Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
    <a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
    provided by <a href="https://readthedocs.org">Read the Docs</a>.
   

</footer>
        </div>
      </div>
    </section>
  </div>
  <script>
      jQuery(function () {
          SphinxRtdTheme.Navigation.enable(true);
      });
  </script> 

</body>
</html>