Skip to content

Commit

Permalink
docs: add CONTRIBUTING.md
Browse files Browse the repository at this point in the history
  • Loading branch information
joshcanhelp committed Dec 15, 2023
1 parent d51c383 commit a3ecbf8
Show file tree
Hide file tree
Showing 2 changed files with 45 additions and 36 deletions.
44 changes: 44 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# Contributing

Contributions to this repo are welcome! I recognize that not everyone using this tool will not be able to contribute code so read through the following list for how I can help.

### I want to add a translator!

That's great, I appreciate it! There are one of two ways to do this:

- If you can write TypeScript, use the [example translator](src/translators/example.ts) to add a new one and follow the [code changes](#i-want-to-make-code-changes) instructions below.
- If you can't (or don't want to) submit code, please [open a new Issue](https://github.com/joshcanhelp/budget-cli/issues) with the following:
1. The name of the financial institution
1. An example CSV with at least 5 rows in a `code` block (remove anything sensitive)
1. Anything else I might need to know about the data and how it's structured

### I found a bug or want a new feature!

Happy to help! Feel free to [open a new Issue](https://github.com/joshcanhelp/budget-cli/issues) with a complete description of what you want to do.

### I want to make code changes!

That's also great, thank you so much! This project is written in TypeScript, checked with ESLint, and formatted with prettier. Bug fixes and small features are fine as a PR with a good description. If you want to do something crazy or foundational, I'd recommend starting with a feature request issue first.

Development workflow is to checkout a new branch and start TypeScript in a CLI tab:

```bash
$ git checkout -b feat/new-feature
$ npm run dev
```

Please use [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/#summary)!

Open up a new tab and do your work there. As you develop, TypeScript will tell you what you're doing wrong (that's what it's for). Once things are compiling and you're ready to submit the PR, run formatting:

```bash
$ npm run format
```

You can save some cycles and headache by using the pre-commit script in this repo:

```bash
$ cp pre-commit.sh .git/hooks/pre-commit
```

Once you're happy with it, push the branch here and open a PR. A GitHub Actions will check the TypeScript builds and that the formatting has been done. Give the PR a nice description and I'll get to it as soon as I can!
37 changes: 1 addition & 36 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -170,39 +170,4 @@ The report that is output does the following:

## Contributing

Contributions to this repo are welcome! I recognize that not everyone using this tool will not be able to contribute code so read through the following list for how I can help.

### I want to add a translator!

That's great, I appreciate it! There are one of two ways to do this:

- If you can write TypeScript, use the [example translator](src/translators/example.ts) to add a new one and follow the [code changes](#i-want-to-make-code-changes) instructions below.
- If you can't (or don't want to) submit code, please [open a new Issue](https://github.com/joshcanhelp/budget-cli/issues) with the following:
1. The name of the financial institution
1. An example CSV with at least 5 rows in a `code` block (remove anything sensitive)
1. Anything else I might need to know about the data and how it's structured

### I found a bug or want a new feature!

Happy to help! Feel free to [open a new Issue](https://github.com/joshcanhelp/budget-cli/issues) with a complete description of what you want to do.

### I want to make code changes!

That's also great, thank you so much! This project is written in TypeScript, checked with ESLint, and formatted with prettier. Bug fixes and small features are fine as a PR with a good description. If you want to do something crazy or foundational, I'd recommend starting with a feature request issue first.

The most common contributions, I expect, will be new translators

Development workflow is to checkout a new branch and start TypeScript in a CLI tab:

```bash
$ git checkout -b feat/new-feature
$ npm run dev
```

Open up a new tab and do your work there. As you develop, TypeScript will tell you what you're doing wrong (that's what it's for). Once things are compiling and you're ready to submit the PR, run formatting:

```bash
$ npm run format
```

Once you're happy with it, push the branch here and open a PR. A GitHub Actions will check the TypeScript builds and that the formatting has been done. Give the PR a nice description and I'll get to it as soon as I can!
Thank you in advance! I'm happy to accept issues reporting problems or desired functionality. If you're TypeScript proficient and want to be enshrined in the commit history, see the [CONTRIBUTING.md](CONTRIBUTING.md)!

0 comments on commit a3ecbf8

Please sign in to comment.