Contributing
한국어 | English
Hello! Thank you for your interest in contributing.
The Bananass Framework welcomes community contributions in various areas, including documentation, website development, code improvements, and solving or explaining Codeforces or Baekjoon problems using the framework. You can contribute to the Bananass Framework repository in the following ways:
- Documentation Contributions: Solving and explaining Codeforces or Baekjoon problems with the Bananass Framework, Bananass Framework website docs,
README.md
, etc. - Website Contributions: Website design, bug fixes, feature suggestions, etc.
- Code Contributions: Adding tests for untested parts of the codebase, bug fixes, feature suggestions, etc.
The basic rules that apply across the entire project are as follows.
- All code and inline comments, except for markdown documents (
**/*.md
), must be written in English. - All markdown documents, except for
LICENSE.md
andCHANGELOG.md
, must exist in two versions: Korean (.md
) and English (.en.md
).
Documentation Contributions
If you find a typo in the Bananass Framework documentation, please submit a Pull Request with your corrections. If you're unable to make the fix yourself, opening an Issue to report the typo is also very helpful.
If you feel the documentation is hard to understand, clarify or improve it. your edits can help many users who share the same difficulties.
You can also help by translating any untranslated documents. Since Bananass Framework supports both Korean and English docs, your translations will make it accessible to more people.
Project Structure
The Bananass Framework uses a monorepo structure with npm workspaces
and lerna
.
- Core package
bananass
is inpackages/bananass
. - Other packages are under
packages
. - Community docs like
README.md
andCONTRIBUTING.md
are at the project root. - Website content lives in
websites/vitepress/ko
andwebsites/vitepress/en
.
Commit Messages
All pull request titles follow the Conventional Commits specification.
Getting Started
Fork the repository.
Clone it locally (requires Git):
shgit clone https://github.com/lumirlumir/npm-bananass.git
Change into the
npm-bananass
directory:shcd npm-bananass
Install npm packages (requires Node.js):
shnpm install
Make your documentation or code changes.
Create a new branch:
shgit switch -c my-branch
Commit your changes (
husky
andlint-staged
will auto-format):shgit commit -am "<type>[optional scope]: <description>"
Push to your remote branch.
Open a pull request.