10295e1
commit 10295e1
4 files changed
+126 -0
Showing 4 changed files+126-0
▼CODE_OF_CONDUCT.md
+42-0
| @@ -0,0 +1,42 @@ | ||
1 | +# Code of Conduct | |
2 | + | |
3 | +This project follows the Contributor Covenant Code of Conduct, version 2.1. | |
4 | + | |
5 | +- Homepage: https://www.contributor-covenant.org | |
6 | +- Full text: https://www.contributor-covenant.org/version/2/1/code_of_conduct/ | |
7 | +- FAQ: https://www.contributor-covenant.org/faq | |
8 | +- Translations: https://www.contributor-covenant.org/translations | |
9 | + | |
10 | +## Our Pledge | |
11 | +We as members, contributors, and leaders pledge to make participation in our community a harassment-free experience for everyone. | |
12 | + | |
13 | +## Our Standards | |
14 | +Examples of behavior that contributes to a positive environment include: | |
15 | +- Demonstrating empathy and kindness | |
16 | +- Being respectful of differing opinions and experiences | |
17 | +- Accepting constructive feedback gracefully | |
18 | +- Focusing on what is best for the community | |
19 | + | |
20 | +Unacceptable behavior includes: | |
21 | +- Harassment, trolling, or derogatory comments | |
22 | +- Public or private harassment | |
23 | +- Publishing others’ private information without permission | |
24 | + | |
25 | +## Enforcement Responsibilities | |
26 | +Project maintainers are responsible for clarifying and enforcing our standards. | |
27 | + | |
28 | +## Enforcement | |
29 | +Instances of abusive, harassing, or otherwise unacceptable behavior may be reported to the maintainers. | |
30 | + | |
31 | +- Prefer using GitHub’s private “Report a vulnerability”/contact options when applicable | |
32 | +- Or contact the maintainer via their GitHub profile: @swadhin-biswas | |
33 | + | |
34 | +All complaints will be reviewed and investigated promptly and fairly. | |
35 | + | |
36 | +## Attribution | |
37 | +This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 2.1, available at: | |
38 | +https://www.contributor-covenant.org/version/2/1/code_of_conduct/ | |
39 | + | |
40 | +Community Impact Guidelines and other sections are based on the Contributor Covenant v2.1. The Contributor Covenant is licensed under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/). | |
41 | + | |
42 | +[homepage]: https://www.contributor-covenant.org | |
0 | 43 | |
▼CONTRIBUTING.md
+60-0
| @@ -0,0 +1,60 @@ | ||
1 | +# Contributing to ls-f | |
2 | + | |
3 | +Thanks for your interest in contributing! This project aims to be a friendly, production-quality wrapper around GNU `ls` with icons, colors, and smart formatting. | |
4 | + | |
5 | +## Ways to Contribute | |
6 | +- Report bugs and edge cases | |
7 | +- Improve documentation or examples | |
8 | +- Implement or polish GNU `ls` flags (see the compatibility table in `README.md`) | |
9 | +- Add tests and tooling | |
10 | + | |
11 | +## Getting Started (Dev Setup) | |
12 | +1. Fork and clone the repo | |
13 | +2. Use a recent Bash (4+) and Python 3 | |
14 | +3. Run a quick local check: | |
15 | + - `./lsf --version` | |
16 | + - `./lsf -x` | |
17 | + - `./test_flags.sh` (basic sanity tests) | |
18 | + | |
19 | +No build step is required. The main script is `lsf`; `column.py` is a helper used for grid formatting. | |
20 | + | |
21 | +## Branch, Commit, and PRs | |
22 | +- Create a feature branch from `main` | |
23 | +- Follow Conventional Commits for messages: | |
24 | + - `feat: add -x layout by lines` | |
25 | + - `fix: handle escaped filenames in grid view` | |
26 | + - `docs: update installation instructions` | |
27 | + - `refactor:, test:, chore:, perf:, ci:, build:` are also common | |
28 | +- Keep commits focused and small when possible | |
29 | +- Open a Pull Request with: | |
30 | + - A clear description of the intent and behavior change | |
31 | + - Notes on any user-facing changes (flags, output, defaults) | |
32 | + - Screenshots or examples when helpful | |
33 | + | |
34 | +## Coding Guidelines | |
35 | +- Bash | |
36 | + - Prefer portability and clarity over cleverness | |
37 | + - Keep exit codes and error messages helpful | |
38 | + - Be careful with quoting and spaces in filenames | |
39 | + - Avoid unnecessary subshells and external utilities on hot paths | |
40 | +- Python (`column.py`) | |
41 | + - Keep it dependency-free and fast (stdlib only) | |
42 | + - Support row/column layouts via `LSF_LAYOUT` | |
43 | + - Respect `LSF_TABSIZE` for alignment | |
44 | + | |
45 | +## Tests | |
46 | +- Add or update quick checks in `test_flags.sh` | |
47 | +- Include at least: | |
48 | + - Happy path | |
49 | + - One or two edge cases (hidden files, escaped names, long names) | |
50 | +- If you change output formatting, include before/after samples in the PR description | |
51 | + | |
52 | +## Documentation | |
53 | +- Update `README.md` tables if you add/adjust flag behavior | |
54 | +- Add or edit docs in `docs/` when appropriate (INSTALLATION, CONFIGURATION, TROUBLESHOOTING) | |
55 | + | |
56 | +## License and DCO | |
57 | +By contributing, you agree that your contributions will be licensed under the project’s MIT License (see `LICENSE`). | |
58 | + | |
59 | +## Code of Conduct | |
60 | +Please follow our [Code of Conduct](CODE_OF_CONDUCT.md). We aim for a welcoming, respectful community. | |
0 | 61 | |
▼README.md
+4-0
| @@ -153,5 +153,9 @@ Reload your shell (or re-run `lsf`) to apply changes. The configuration file is | ||
153 | 153 | ## Contributing |
154 | 154 | Issues and pull requests are welcome! Please document new flags in the tables above and add regression tests or example commands when possible. |
155 | 155 | |
156 | +- See [CONTRIBUTING.md](CONTRIBUTING.md) for how to set up your environment, commit style, and PR guidelines. | |
157 | +- Please follow our [Code of Conduct](CODE_OF_CONDUCT.md). | |
158 | +- Security issues? Read our [Security Policy](SECURITY.md) and report privately. | |
159 | + | |
156 | 160 | ## License |
157 | 161 | Licensed under the MIT License. See [LICENSE](LICENSE) for details. |
158 | 162 | |
▼SECURITY.md
+20-0
| @@ -0,0 +1,20 @@ | ||
1 | +# Security Policy | |
2 | + | |
3 | +## Supported Versions | |
4 | +We support the latest release on the `main` branch (e.g., v4.5.x). Older releases may not receive security patches. | |
5 | + | |
6 | +## Reporting a Vulnerability | |
7 | +Please do not open public GitHub issues for security problems. | |
8 | + | |
9 | +- Use GitHub’s “Report a vulnerability” (Security Advisory) feature if available for this repository | |
10 | +- Alternatively, contact the maintainer privately via their GitHub profile (@swadhin-biswas) | |
11 | + | |
12 | +Provide as much detail as possible: | |
13 | +- Affected version(s) and environment (OS, shell) | |
14 | +- Steps to reproduce and a minimal proof of concept | |
15 | +- Impact assessment (what could an attacker do?) | |
16 | + | |
17 | +We will acknowledge receipt within 3 business days and provide an initial assessment/ETA as soon as possible. | |
18 | + | |
19 | +## Disclosure | |
20 | +We prefer coordinated disclosure. Once a fix is available, we will publish a new release and acknowledge reporters who wish to be credited. | |
0 | 21 | |