Skip to content

Latest commit

 

History

History
85 lines (55 loc) · 3.82 KB

CONTRIBUTING.md

File metadata and controls

85 lines (55 loc) · 3.82 KB

Contributing to TypeGPT

Last Updated: Jun 9, 2024

First off, thank you for considering contributing to TypeGPT! It's people like you that make the open source community such a fantastic place to learn, inspire, and create. Any contributions you make will benefit everybody else and are greatly appreciated.

Code of Conduct

This project and everyone participating in it is governed by the TypeGPT Code of Conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to [[email protected]].

I don't want to read this whole thing I just have a question!!!

Please don't file an issue to ask a question. You'll get faster results by using the community forums and channels like discussions under our GitHub repository or reaching out on Twitter at [[email protected]].

What should I know before I get started?

Project Structure

  • TypeGPT.py: Main application file.
  • api_calls.py: Handles API interactions.
  • keys.txt: For storing API keys (keys not included in repos for security).

Dependencies

  • Python 3.x
  • pynput
  • requests
  • pyperclip
  • google.generativeai

How Can I Contribute?

Reporting Bugs

This section guides you through submitting a bug report. Following these guidelines helps maintainers and the community understand your report, reproduce the behavior, and find related reports.

Before Submitting A Bug Report

  • Check the discussions and issues to see if the bug has already been reported. If it has and the issue is still open, add a comment to the existing issue instead of opening a new one.
  • When you are creating a bug report, please include as many details as possible.

How Do I Submit A Good Bug Report?

  • Use a clear and descriptive title for the issue to identify the problem.
  • Describe the exact steps which reproduce the problem in as many details as possible. For instance, start by explaining how you started the application, e.g., which command exactly you used in the terminal, or how you started TypeGPT otherwise.
  • Provide specific examples to demonstrate the steps. Include links to files or GitHub projects, or copy/pasteable snippets, which you use in those examples.
  • Describe the behavior you observed after following the steps and point out what exactly is the problem with that behavior.
  • Explain which behavior you expected to see instead and why.

Your First Code Contribution

Unsure where to begin contributing to TypeGPT? You can start by looking through these beginner and help-wanted issues:

  • Beginner issues - issues which should only require a few lines of code, and a test or two.
  • Help wanted issues - issues which should be a bit more involved than beginner issues.

Pull Requests

  • Fill in the required template
  • Do not include issue numbers in the PR title
  • Do not break backward compatibility unless absolutely necessary and approved by the project maintainers
  • Add tests for the new functionalities or updates
  • Ensure backward compatibility as much as possible
  • Follow Python's PEP8 coding standards
  • Document new code based on Google's documentation style

Styleguides

Git Commit Messages

  • Use the present tense ("Add feature" not "Added feature")
  • Use the imperative mood ("Move cursor to..." not "Moves cursor to...")
  • Limit the first line to 72 characters or less
  • Reference issues and pull requests liberally after the first line

Python Styleguide

All Python code must adhere to PEP8 standards. Use tools like flake8 to check your code against these standards.

License

By contributing to TypeGPT, you agree that your contributions will be licensed under its Apache 2.0 License.

Questions or Comments?

If you have any questions or comments about contributing, please feel free to open an issue or send a message to me, @alexfromvan on x.com!

Thank you for contributing to TypeGPT!