
<div class="container small-no-padding">
    <div class="row content">
        <div class="col-md-12">
            {% block content %}
                {% include 'fix_up_content.html' %}
            {% endblock %}
        </div>
    </div>
    <div class="row">
        <div class="col-md-4 mailing-list">
            <div class="bg-purple mailing-list-title text-center">
                Dev Mailing List
            </div>
                <p><a class="bold-link" href="mailto:dev@mynewt.incubator.apache.org">dev@mynewt.incubator.apache.org</a></p>
                <p>For both contributors and users. Ask questions. Share ideas. Discuss issues, roadmap, process. Help coordinate. Influence.</p>
                <div class="mailing-list-title text-center">
                    <p><a href="mailto:dev-subscribe@mynewt.incubator.apache.org">Subscribe</a></p>
                    <p text-center><a href="mailto:dev-unsubscribe@mynewt.incubator.apache.org">Unsubscribe</a></p>
                  <p> <a href="http://mail-archives.apache.org/mod_mbox/incubator-mynewt-dev/">Mail archives</a> </p>
                  <p> Find us on Slack:</p>
                  <p> <a href="https://join.slack.com/mynewt/shared_invite/MTkwMTg1ODM1NTg5LTE0OTYxNzQ4NzQtZTU1YmNhYjhkMg"><img src="https://www.countit.com/images/add_to_slack.png" alt="Slack Icon" title="Join our Slack Community" /></a></p>
                </div>
        </div>
        <div class="col-md-4 mailing-list">
            <div class="bg-purple mailing-list-title text-center">
                Commits Mailing List
            </div>
                <p><a class="bold-link" href="mailto:commits@mynewt.incubator.apache.org">commits@mynewt.incubator.apache.org</a></p>
                <p>For code or documentation contributors. Receive automated notifications of any changes to Mynewt code and documentation.</p>
                <div class="mailing-list-title text-center">
                  <p><a href="mailto:commits-subscribe@mynewt.incubator.apache.org">Subscribe</a></p>
                  <p><a href="mailto:commits-unsubscribe@mynewt.incubator.apache.org">Unsubscribe</a></p>
                  <p> <a href="http://mail-archives.apache.org/mod_mbox/incubator-mynewt-commits/">Mail archives</a> </p>
               </div>
        </div>
        <div class="col-md-4 mailing-list">
            <div class="bg-purple mailing-list-title text-center">
                Notifications Mailing List
            </div>
                <p><a class="bold-link" href="mailto:notifications@mynewt.incubator.apache.org">notifications@mynewt.incubator.apache.org</a></p>
                <p>For all autogenerated mail other than commits e.g. JIRA issue-tracker notifications. Can also be used for announcements. </p>
                <div class="mailing-list-title text-center">
                   <p><a href="mailto:notifications-subscribe@mynewt.incubator.apache.org">Subscribe</a></p>
                   <p><a href="mailto:notifications-unsubscribe@mynewt.incubator.apache.org">Unsubscribe</a></p>
                   <p> <a href="http://mail-archives.apache.org/mod_mbox/incubator-mynewt-notifications/">Mail archives</a> </p>
                </div>
  </div>
</div>

<div class="row">
      <div class="col-md-12">
                <h3>Getting involved</h3>

                <p> It is easy! Simply send an email to the dev@ mailing list introducing yourself and the Apache Mynewt community will welcome you. If you have questions, sending an email to this list is the fastest way of getting an answer. </p>

                <p> If you want to browse the code, <a href="https://github.com/apache/incubator-mynewt-core/tree/develop">Mynewt Core Repo</a> is the best place to start.

                <p> If you wish to contribute code, a quick look at the <a href="https://cwiki.apache.org/confluence/display/MYNEWT/Contributing+to+Apache+Mynewt"> recommended steps </a> should help.  

                <h3>Bug Submission and Issue Tracking</h3>
                <p>Issues, features, improvements, and wish-lists are tracked using <a href="https://issues.apache.org/jira/browse/Mynewt/">ASF JIRA</a>, the Atlassian JIRA software on Apache Software Foundation </p>
                <li> 
                <p><a href="https://issues.apache.org/jira/issues/?jql=project%20%3D%20MYNEWT%20AND%20fixVersion%20%3D%20WISHLIST%20ORDER%20BY%20updated%20DESC%2C%20priority%20DESC%2C%20created%20ASC">Click here to see WISHLIST for Mynewt</a></p>
                </li>
                <li>
                Sign up for an account on JIRA and submit a request to the dev@ mailing list for your JIRA username to be added to the Apache Mynewt (MYNEWT) project. Editing a ticket requires an account.
                </li>
                <li> Log in and report a bug by choosing the "MYNEWT" project, clicking on the "Create" button, and creating a ticket with an appropriate Issue Type (e.g. Bug, Wish).  </p>
                <p> If you are a contributor and wish to work on a change, open a JIRA ticket first. It's always a good idea to introduce the change in the dev@ mailing list and refer to that ticket. When you generate a pull request into the github mirror for your change, always reference the JIRA ticket number in the title. JIRA is set up to resolve the ticket when your code is merged into the ASF git repository and the pull request closed. </p>
<br>

</div>
</div>
