﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Lucene.Net project contributing guide | Apache Lucene.NET 4.8.0 </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Lucene.Net project contributing guide | Apache Lucene.NET 4.8.0 ">
    <meta name="generator" content="docfx 2.58.0.0">
    
    <link rel="shortcut icon" href="../logo/favicon.ico">
    <link rel="stylesheet" href="../styles/docfx.vendor.css">
    <link rel="stylesheet" href="../styles/docfx.css">
    <link rel="stylesheet" href="../styles/main.css">
    <meta property="docfx:navrel" content="../toc.html">
    <meta property="docfx:tocrel" content="toc.html">
    
    
    
  
    <link rel="stylesheet" href="//fonts.googleapis.com/css?family=Lato:400,700%7CMerriweather%7CRoboto+Mono">
    <link rel="stylesheet" href="/styles/site.css">
  
  </head>
  <body data-spy="scroll" data-target="#affix" data-offset="120">
    <span id="forkongithub"><a href="https://github.com/apache/lucenenet" target="_blank">Fork me on GitHub</a></span>
    <div id="wrapper">
      <header>
        
        <nav id="autocollapse" class="navbar ng-scope" role="navigation">
          <div class="container">
            <div class="navbar-header">
              <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
              </button>
              
              <a class="navbar-brand" href="../index.html">
                <img id="logo" class="svg" src="../logo/lucene-net-color.png" alt="">
              </a>
            </div>
            <div class="collapse navbar-collapse" id="navbar">
              <form class="navbar-form navbar-right" role="search" id="search">
                <div class="form-group">
                  <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
                </div>
              </form>
            </div>
          </div>
        </nav>
        
        <div class="subnav navbar navbar-default">
          <div class="container hide-when-search" id="breadcrumb">
            <ul class="breadcrumb">
              <li></li>
            </ul>
          </div>
        </div>
      </header>
      <div role="main" class="container body-content hide-when-search">
        
        <div class="sidenav hide-when-search">
          <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
          <div class="sidetoggle collapse" id="sidetoggle">
            <div id="sidetoc"></div>
          </div>
        </div>
        <div class="article row grid-right">
          <div class="col-md-10">
            <article class="content wrap" id="_content" data-uid="contributing">
<h1 id="lucenenet-project-contributing-guide">Lucene.Net project contributing guide</h1>

<hr>
<h2 id="getting-involved">Getting involved</h2>
<p><em>There are lots ways to help contribute to the Lucene.Net project!</em></p>
<p>Lucene.Net is a very large project (over 400,000 executable lines of code and nearly 1,000,000 lines of text total) and we welcome any and all help to maintain such an effort.</p>
<h3 id="write-a-blog-post">Write a blog post</h3>
<p>Community written blog posts and projects based on Lucene.Net are a wonderful way to be involved with the Lucene.Net project. We can even feature your work on the <a class="xref" href="community-links.html">Community Links Page</a>.</p>
<h3 id="ask-a-question">Ask a Question</h3>
<p>If you have a general how-to question or need help from the Lucene.Net community, please email the Apache Lucene.Net-User mailing list by sending a message to:</p>
<p><a href="mailto:user@lucenenet.apache.org">user@lucenenet.apache.org</a></p>
<p>We recommend you join the <a href="https://cwiki.apache.org/confluence/display/LUCENENET/Mailing+Lists">user mailing list</a> to stay looped into all user discussions.</p>
<p>Alternatively, you can get help via <a href="https://stackoverflow.com/questions/tagged/lucene.net">StackOverflow</a>.</p>
<p>Please do not submit general how-to questions to GitHub, use GitHub Issues for bug reports and tasks only.</p>
<p>see <strong><a class="xref" href="mailing-lists.html">mailing lists</a></strong></p>
<h3 id="start-a-discussion">Start a Discussion</h3>
<p>To start a development discussion regarding technical features of Lucene.Net, please email the Apache Lucene.Net-Developer mailing list by sending a message to:</p>
<p><a href="mailto:dev@lucenenet.apache.org">dev@lucenenet.apache.org</a></p>
<p>We recommend you join both the <a href="https://cwiki.apache.org/confluence/display/LUCENENET/Mailing+Lists">user and dev mailing lists</a> to stay looped in to all user and developer discussions.</p>
<p>see <strong><a class="xref" href="mailing-lists.html">mailing lists</a></strong></p>
<h3 id="slack-channel">Slack Channel</h3>
<p>Another way of contacting Lucene.net committers and PMC members is the <a href="https://the-asf.slack.com/archives/C03FFRQQ2RM">#lucenenet-dev</a> Slack channel. This is a great place to meet and get guidance on contributions.</p>
<p>Further details on using the ASF Slack channels and associated expectations can be found on the related <a href="https://infra.apache.org/slack.html">ASF infra page</a>.</p>
<div class="NOTE">
<h5>Note</h5>
<p>The ASF Slack requires an @apache.org email address to join as a full member. Users without an @apache.org email address have to be invited.</p>
</div>
<h3 id="website-and-documentation">Website and Documentation</h3>
<p>Help with keeping this website and documentation up to date would be a great help. It would be great to migrate/consolidate a lot of the important information from the wiki to this website. See <strong><a class="xref" href="documentation.html">website and documentation</a></strong> for more information about contributing to this area.</p>
<h3 id="report-a-bug">Report a Bug</h3>
<p>To report a bug, please use the <a class="xref" href="issue-tracker.html">GitHub issue tracker</a>.</p>
<h3 id="submit-a-pull-request">Submit a Pull Request</h3>
<p>First have a look at the <strong><a class="xref" href="current-status.html">Current Status</a></strong> of the project to see where things are at.</p>
<p>There's a <a href="https://github.com/apache/lucenenet/blob/master/CONTRIBUTING.md">detailed contribution guide here</a>. <em>(it would be good to migrate this guide to this website)</em></p>
<p>And another guide is here about all the basics of getting started with the repo and how we prefer to receive pull requests <a href="https://cwiki.apache.org/confluence/display/LUCENENET/Git+Setup+and+Pull+Requests">Git Setup and Pull Requests</a></p>
</article>
          </div>
          
          <div class="hidden-sm col-md-2" role="complementary">
            <div class="sideaffix">
              <div class="contribution">
                <ul class="nav">
                  <li>
                    <a href="https://github.com/apache/lucenenet/blob/master/websites/site/contributing/index.md/#L1" class="contribution-link">Improve this Doc</a>
                  </li>
                </ul>
              </div>
              <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
                <h5>In This Article</h5>
                <div></div>
              </nav>
            </div>
          </div>
        </div>
      </div>
      
      <footer>
        <div class="grad-bottom"></div>
        <div class="footer">
          <div class="container">
            <span class="pull-right">
              <a href="#top">Back to top</a>
            </span>
            Copyright &copy; 2022 The Apache Software Foundation, Licensed under the <a href='http://www.apache.org/licenses/LICENSE-2.0' target='_blank'>Apache License, Version 2.0</a><br> <small>Apache Lucene.Net, Lucene.Net, Apache, the Apache feather logo, and the Apache Lucene.Net project logo are trademarks of The Apache Software Foundation. <br>All other marks mentioned may be trademarks or registered trademarks of their respective owners.</small>
            
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="../styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="../styles/docfx.js"></script>
    <script type="text/javascript" src="../styles/main.js"></script>
  </body>
</html>
