Skip to content

Commit

Permalink
add Contributing guide (#516)
Browse files Browse the repository at this point in the history
  • Loading branch information
ryanfoxtyler authored Oct 27, 2024
1 parent a12cead commit 903a1f9
Show file tree
Hide file tree
Showing 2 changed files with 62 additions and 3 deletions.
59 changes: 58 additions & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,60 @@
# Contributing to Modus

TODO
We're really glad you're here and would love for you to contribute to Modus! There are a variety of ways to make Modus better, including bug fixes, features, docs, and blog posts (among others). Every bit helps 🙏

Please help us keep the community safe while working on the project by upholding our [Code of Conduct](/CODE_OF_CONDUCT.md) at all times.

Before jumping to a pull request, ensure you've looked at [PRs](https://github.com/hypermodeinc/modus/pulls) and [issues](https://github.com/hypermodeinc/modus/issues) (open and closed) for existing work related to your idea.

If in doubt or contemplating a larger change, join the [Hypermode Discord](https://discord.hypermode.com) and start a discussion in the [#modus](https://discord.com/channels/1267579648657850441/1292948253796466730) channel.

## Codebase

The primary development language of Modus is Go. The **runtime** and supporting packages are all written in Go.

**Modus SDKs** enable users to build apps in multiple languages, currently including Go and AssemblyScript.

The **Modus CLI** drives the local development experience and is written in TypeScript.

### Development environment

The fastest path to setting up a development environment for Modus is through VS Code. The repo includes a set of configs to set VS Code up automatically.

### Clone the Modus repository

To contribute code, start by forking the Modus repository. In the top-right of the [repo](https://github.com/hypermodeinc/modus), click **Fork**. Follow the instructions to create a fork of the repo in your GitHub workspace.

### Building and running tests

Wherever possible, we use the built-in capabilities of each language. For example, unit tests for Go components can be run with:

```bash
go test ./...
```

### Opening a pull request

When you're ready, open a pull request against the `main` branch in the Modus repo. Include a clear, detailed description of the changes you've made. Be sure to add and update tests and docs as needed.

We do our best to respond to PRs within a few days. If you've not heard back, feel free to ping on Discord.

## Other ways to help

Pull requests are awesome, but there are many ways to help.

### Documentation improvements

Modus docs are maintained in a [separate repository](https://github.com/hypermodeinc/docs). Relevant updates and issues should be opened in that repo.

### Blogging and presenting your work

Share what you're building with Modus in your preferred medium. We'd love to help amplify your work and/or provide feedback, so get in touch if you'd like some help!

### Join the community

There are lots of people building with Modus who are excited to connect!

- Chat on [Discord](https://discord.hypermode.com)
- Join the conversation on [X](https://x.com/hypermodeinc)
- Read the latest posts on the [Blog](https://hypermode.com/blog)
- Connect with us on [LinkedIn](https://linkedin.com/company/hypermode)
6 changes: 4 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ To get started using Modus, please refer to [the Modus docs](https://docs.hyperm
## Open Source

Modus is developed by [Hypermode](https://hypermode.com/) as an open-source project, integral but independent from Hypermode.

We welcome external contributions. See the [CONTRIBUTING.md](./CONTRIBUTING.md) file if you would like to get involved.

## Programming Languages
Expand Down Expand Up @@ -57,13 +58,14 @@ to third-party hosting.
## Support

Hypermode paid hosting plans include standard or premium support that covers both Hypermode and Modus, with response-time guarantees.

Click the _support_ link after signing in to Hypermode, or email [email protected] for paid support if you are a Hypermode customer.

For free community-based support or if you'd just like to share your experiences with
Modus or Hypermode, please chat with us on [Discord](https://discord.gg/NJQ4bJpffF).
Modus or Hypermode, please join the [Hypermode Discord](https://discord.hypermode.com) and start a discussion in the [#modus](https://discord.com/channels/1267579648657850441/1292948253796466730) channel.
We'd be happy to hear from you!

If you believe you have found a bug in Modus, please file a [Github issue](https://github.com/hypermodeinc/modus/issues)
If you believe you have found a bug in Modus, please file a [GitHub issue](https://github.com/hypermodeinc/modus/issues)
so we can triage the problem and route it to our engineers as efficiently as possible.

## License
Expand Down

0 comments on commit 903a1f9

Please sign in to comment.