Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 9 additions & 2 deletions config/_default/menus.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -95,8 +95,12 @@ main:
weight: 8
url: "supporting-nwb/"
parent: "Community"
- name: "Team"
- name: "Contributing to Website"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would just call it "Contributing"

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think if we just call it "Contributing" it will seem like a page about contributing to the NWB project in general, not a page specifically about contributing to this website

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree. I think the answer here depends on if you like my suggestion for updating the page. Feel free to accept/reject these two suggestions as you see fit. I think either way is Ok. I just figured it would be easy to turn this into a bit broader page if we provide linkages to the other related docs.

weight: 9
url: "contributing/"
parent: "Community"
- name: "Team"
weight: 10
url: "team/"
parent: "Community"

Expand Down Expand Up @@ -171,8 +175,11 @@ community_links:
- name: "Supporting NWB"
weight: 8
url: "/supporting-nwb"
- name: "Contact Us"
- name: "Contributing to Website"
weight: 9
url: "/contributing"
- name: "Contact Us"
weight: 10
url: "/contact-us"

resources:
Expand Down
175 changes: 175 additions & 0 deletions content/contributing.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,175 @@
---
title: "Contributing to This Website"
description: "Guide for contributing to the NWB website through GitHub"
---

Comment on lines +1 to +5
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think if we just add a brief introduction with a short list of links to the various other documents, would help make this a more general guide for how to contribute to NWB. What do you think?

Suggested change
---
title: "Contributing to This Website"
description: "Guide for contributing to the NWB website through GitHub"
---
---
title: "Contributing to NWB"
description: "Guide for contributing to NWB"
---
NWB is a community-driven effort and welcomes contributions from the community:
* **Extending NWB:** To learn more about how to extend and contribute to the NWB data standard schema, please see the [Extending NWB](/extending-nwb/) page.
* **NWB Software:** All NWB software is available on GitHub as open source and welcome contributions via issues and pull requests. For information on how to contribute to a particular software, please see the instructions specific to tool. The [PyNWB Contributing](https://pynwb.readthedocs.io/en/stable/contributing.html) guide provides a general overview of how to contribute to the core NWB software.
* **NWB.org Website:** See the detailed guide below on [Contributing to the NWB Website](#contributing_to_the_nwb_website)
# Contributing to the NWB Website

This guide provides instructions for contributing to the NWB website. Whether you want to fix a typo, add new content, or improve existing pages, we welcome your contributions!

## Overview

The NWB website is hosted on GitHub at [NeurodataWithoutBorders/neurodatawithoutborders.github.io](https://github.com/NeurodataWithoutBorders/neurodatawithoutborders.github.io). The site is built using [Hugo](https://gohugo.io/), a fast and flexible static site generator.

## Quick Edits (For Small Changes)

For minor edits like fixing typos or updating text, you can edit files directly on GitHub:

1. Navigate to the [repository](https://github.com/NeurodataWithoutBorders/neurodatawithoutborders.github.io)
2. Find the file you want to edit in the `content/` directory
3. Click the pencil icon (✏️) to edit the file
4. Make your changes
5. Scroll down and create a commit message describing your change
6. Select "Create a new branch for this commit and start a pull request"
7. Submit the pull request

## Local Development (For Larger Changes)

For more substantial contributions, we recommend setting up the site locally.

### Prerequisites

- [Git](https://git-scm.com/downloads)
- [Hugo](https://gohugo.io/installation/) (extended version recommended)
- [Node.js](https://nodejs.org/) (for asset processing)

### Step 1: Fork and Clone the Repository

1. Fork the repository by clicking the "Fork" button at [https://github.com/NeurodataWithoutBorders/neurodatawithoutborders.github.io](https://github.com/NeurodataWithoutBorders/neurodatawithoutborders.github.io)

2. Clone your fork locally:

```bash
git clone https://github.com/YOUR-USERNAME/neurodatawithoutborders.github.io.git
cd neurodatawithoutborders.github.io
```

3. Add the upstream remote:

```bash
git remote add upstream https://github.com/NeurodataWithoutBorders/neurodatawithoutborders.github.io.git
```

### Step 2: Install Dependencies

```bash
npm install
```

### Step 3: Run the Development Server

```bash
hugo server -D
```

This will start a local server at `http://localhost:1313/`. The site will automatically reload when you make changes.

### Step 4: Make Your Changes

Create a new branch for your changes:

```bash
git checkout -b my-feature-branch
```

Make your edits to the relevant files in the `content/` directory.

### Step 5: Submit a Pull Request

1. Commit your changes:

```bash
git add .
git commit -m "Description of your changes"
```

2. Push to your fork:

```bash
git push origin my-feature-branch
```

3. Go to the [original repository](https://github.com/NeurodataWithoutBorders/neurodatawithoutborders.github.io) and click "New Pull Request"

4. Select your branch and submit the pull request with a clear description of your changes

## Content Structure

The website content is organized in the `content/` directory:

| Directory | Description |
|-----------|-------------|
| `content/about-nwb/` | Information about NWB |
| `content/events/` | Event pages and announcements |
| `content/news/` | News articles and updates |
| `content/tools/` | Software tools (core and community) |
| `content/publications/` | Publications, papers, and citations |
| `content/faq/` | Frequently asked questions |
| `content/community/` | Community resources |

## Adding New Content

### Adding a News Post

Create a new markdown file in `content/news/`:

```markdown
---
title: "Your News Title"
date: 2025-01-15
---

Your news content here...
```

### Adding an Event

Create a new markdown file in `content/events/`:

```markdown
---
title: "Event Name"
date: 2025-01-15
event_date: "January 20-22, 2025"
location: "Location Name"
---

Event description and details...
```

### Adding a Community Tool

See our dedicated guide: [Integrating Community Software with NWB](/contributing-tools/)

## Page Format

Most pages use Markdown with YAML front matter. The front matter includes metadata like:

```yaml
---
title: "Page Title"
description: "Brief description of the page"
weight: 1 # Optional: controls ordering in lists
---
```

## Style Guidelines

- Use clear, concise language
- Follow existing formatting conventions
- Include links to relevant resources
- Add images to `static/images/` and reference them in your content
- Test all links before submitting

## Getting Help

If you have questions or need assistance:

- Open an issue on [GitHub](https://github.com/NeurodataWithoutBorders/neurodatawithoutborders.github.io/issues)
- Visit the [NWB Help Desk](https://github.com/NeurodataWithoutBorders/helpdesk/discussions)
- Join the [NWB Slack workspace](https://nwb-users.slack.com/)
- Contact us through the [Contact Us](/contact-us/) page

## Code of Conduct

All contributors are expected to follow our [Code of Conduct](/code_of_conduct/).

Thank you for helping improve the NWB website!
Loading