AI-Powered README Translation: Effortless, Global Reach.
Built with the tools and technologies:
- Overview
- Features
- Project Structure
- Getting Started
- Project Roadmap
- Contributing
- License
- Acknowledgments
readmeaiautoaction automates multilingual README generation for GitHub repositories. It uses Google's Gemini API to translate READMEs into multiple languages, streamlining documentation creation and improving international reach. This GitHub Action simplifies the CI/CD process for developers needing multi-language documentation.
Feature | Summary | |
---|---|---|
⚙️ | Architecture |
|
🔩 | Code Quality |
|
📄 | Documentation |
|
🔌 | Integrations |
|
🧩 | Modularity |
|
🧪 | Testing |
|
└── readmeai_auto_action/
├── .github
│ └── workflows
├── Dockerfile
├── LICENSE
├── README.md
├── action.yml
└── readmeai_auto
├── .env
├── .env.example
├── .gitignore
├── LICENSE
├── README.md
├── README_DE.md
├── README_EN.md
├── README_ES.md
├── README_FR.md
├── README_JA.md
├── README_KO.md
├── README_RU.md
├── README_ZH.md
├── readme_translator.py
└── requirements.txt
READMEAI_AUTO_ACTION/
__root__
action.yml - The `action.yml` file defines a GitHub Action
- It automates README generation in multiple languages for specified repositories
- The action accepts repository URL and target language as input, optionally allowing exclusion of files or directories
- It utilizes a custom Docker image for execution
- This action streamlines documentation creation across different languages within the project's CI/CD pipeline.Dockerfile - The Dockerfile constructs a runtime environment for a README translation application
- It leverages a Python 3.12 base image, clones the `readmeai_auto` repository, installs dependencies, and executes a Python script (`readme_translator.py`) to translate READMEs between English and Japanese
- The resulting container automates the README translation process.
readmeai_auto
requirements.txt - `requirements.txt` specifies the project's external dependencies
- It ensures the `readmeai_auto` application can access the Google Generative AI API and utilize environment variables managed by `python-dotenv`
- These dependencies are crucial for the application's core functionality, enabling interaction with Google's large language models..env - The `.env` file stores the Gemini API key, providing authentication credentials for the readmeai_auto application
- It facilitates interaction with the Gemini API, enabling the application to leverage Gemini's functionalities
- This key is crucial for the application's core operation, ensuring secure access to the external service
- Its presence is essential for the entire system's functionality..env.example - The `.env.example` file provides a template for environment variables
- It specifically configures the Gemini API key, essential for the readmeai_auto project's interaction with the Gemini API
- This ensures secure storage of sensitive credentials, separating them from the main codebase for improved security and maintainability
- The file's purpose is to facilitate seamless integration with the Gemini service.readme_translator.py - The `readme_translator.py` script automates README file translation
- It leverages the Gemini API to translate a source README into multiple languages, preserving markdown formatting and technical accuracy
- The script offers a command-line interface for specifying input files and target languages, supporting a predefined set of languages
- Translated READMEs are saved as new files.
.github
workflows
dd - The workflow script automates deployment
- It's a crucial component of the project's continuous integration/continuous deployment (CI/CD) pipeline, ensuring seamless and automated releases
- The script manages the build, testing, and deployment processes, streamlining the software delivery lifecycle and improving efficiency
- Its integration within the broader project structure facilitates reliable and consistent deployments.
Before getting started with readmeai_auto_action, ensure your runtime environment meets the following requirements:
- Programming Language: Error detecting primary_language: {'yml': 1, 'txt': 1, 'example': 1, 'py': 1}
- Package Manager: Pip
- Container Runtime: Docker
Install readmeai_auto_action using one of the following methods:
Build from source:
- Clone the readmeai_auto_action repository:
❯ git clone ../readmeai_auto_action
- Navigate to the project directory:
❯ cd readmeai_auto_action
- Install the project dependencies:
❯ echo 'INSERT-INSTALL-COMMAND-HERE'
❯ docker build -t git/readmeai_auto_action .
Run readmeai_auto_action using the following command:
Using pip
❯ echo 'INSERT-RUN-COMMAND-HERE'
❯ docker run -it {image_name}
Run the test suite using the following command:
Using pip
❯ echo 'INSERT-TEST-COMMAND-HERE'
-
Task 1
:Implement feature one. -
Task 2
: Implement feature two. -
Task 3
: Implement feature three.
- 💬 Join the Discussions: Share your insights, provide feedback, or ask questions.
- 🐛 Report Issues: Submit bugs found or log feature requests for the
readmeai_auto_action
project. - 💡 Submit Pull Requests: Review open PRs, and submit your own PRs.
Contributing Guidelines
- Fork the Repository: Start by forking the project repository to your LOCAL account.
- Clone Locally: Clone the forked repository to your local machine using a git client.
git clone /home/jinno/git/readmeai_auto_action
- Create a New Branch: Always work on a new branch, giving it a descriptive name.
git checkout -b new-feature-x
- Make Your Changes: Develop and test your changes locally.
- Commit Your Changes: Commit with a clear message describing your updates.
git commit -m 'Implemented new feature x.'
- Push to LOCAL: Push the changes to your forked repository.
git push origin new-feature-x
- Submit a Pull Request: Create a PR against the original project repository. Clearly describe the changes and their motivations.
- Review: Once your PR is reviewed and approved, it will be merged into the main branch. Congratulations on your contribution!
This project is protected under the SELECT-A-LICENSE License. For more details, refer to the LICENSE file.
- List any resources, contributors, inspiration, etc. here.