Skip to content

Quick Start

Jessica Meixner edited this page Jul 12, 2023 · 12 revisions

Quick Start for Developers

These are the essential things you need to know to get started with WW3:

Given you know what WW3 and GitHub, this is a quick-start guide for developers to forking, cloning and building WW3.

Note that the WW3 package has two parts that need to be combined if you want to run the regression tests: the GitHub repo itself and a binary data file bundle that needs to be obtained from our ftp site. To do that follow the steps below.

Step 1 Create a GitHub Account

  • As a developer, you are required to use the GitHub workflow to make changes to the code,
  • You are also required to work from a fork of a trusted repository, rather than its clone,
    • You can only create forks using the GitHub web interface,
    • All subsequent development work is made off feature or bugfix branches created from the develop branch.

Step 2 Fork the WW3 Repo

  • On github.com navigate to https://github.com/NOAA-EMC/WW3 or to one of the institutional repos https://github.com/<Institutional>/WW3,
  • Locate and click the fork icon on the upper right-hand corner of the WW3 GitHub page.

Step 3 Clone your fork to a local copy

git clone https://github.com/<your username>/WW3

Step 4 Download and expand large/binary/netcdf files

cd WW3

sh model/bin/ww3_from_ftp.sh

Good Getting-Started Ideas

  • Once you become familiar with the code and are ready to become a developer, read the Developer Guide and our Coding Best Practices,
  • If you decide to start adding stuff to the WW3 repo before reading the Developer Guide (NOT recommended), we are assuming that you are committing to the following rules shared by our development community,
    • We shall not put any large/binary/netcdf/etc files in the git repo! This makes the git repo large & slow. We use the ftp site for this (let us know if you need to add large/binary files as part of your contribution),
    • See the wiki tab for more in-depth information on any topic.
    • Use Issues to keep track of bugs and developments.

Frequently-Asked Questions

We will be regularly updating a FAQs page with answers to common questions.

For information on contributing development back to WW3, please see the Developer Guide