https://github.com/nexoslabs/bot-github-template
Automation bot for github , under maintaince
https://github.com/nexoslabs/bot-github-template
bot github-bot node-js typescript
Last synced: about 2 months ago
JSON representation
Automation bot for github , under maintaince
- Host: GitHub
- URL: https://github.com/nexoslabs/bot-github-template
- Owner: nexoscreation
- License: isc
- Created: 2024-07-06T11:00:28.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-12-11T06:56:34.000Z (over 1 year ago)
- Last Synced: 2025-02-05T00:29:04.175Z (about 1 year ago)
- Topics: bot, github-bot, node-js, typescript
- Language: TypeScript
- Homepage: https://github.com/apps/nexos-bot
- Size: 16.3 MB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE
- Code of conduct: .github/CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
[](https://probot.github.io/)
[](https://www.typescriptlang.org/)
[](LICENSE.md)
# ๐ GitHub Bot Template
> This repository provides a robust template for building your own GitHub bot using [Probot](https://probot.github.io/) and TypeScript. The bot automates common workflows like handling issues, pull requests, and notifications while being highly extensible.
---
## ๐ฏ Features
- ๐ **Issue Automation**: Automatically triage issues with labels, comments, and assignments.
- ๐ **Pull Request Workflow**: Streamline code reviews with reviewer assignment, comments, and more.
- ๐ฃ **Notifications**: Notify contributors and maintainers about important events.
- ๐ง **Extensible and Modular**: Easily add new functionality with a service-based architecture.
- ๐ **TypeScript Support**: Take advantage of type safety and modern JavaScript features.
---
## ๐ Getting Started
Follow these steps to get your bot up and running:
### **Clone the Repository**
```bash
git clone https://github.com/nexoslabs/bot-github-template.git
cd bot-github-template
```
### **Install Dependencies**
```bash
npm install
```
### **Set Up Environment Variables**
Create a `.env` file based on the provided `.env.example`:
```plaintext
APP_ID=your_app_id
PRIVATE_KEY=path_to_private_key.pem
WEBHOOK_SECRET=your_webhook_secret
GITHUB_TOKEN=your_personal_access_token
```
### **Run the Bot**
```bash
npm start
```
### **Expose the Bot (Optional)**
Use a tool like [ngrok](https://ngrok.com/) to expose your bot locally:
```bash
ngrok http 3000
```
---
## ๐ ๏ธ Development
### ๐งช **Testing**
Write unit and integration tests to ensure the bot works as expected:
- Unit tests are located in `test/unit/`.
- Integration tests are located in `test/integration/`.
Run tests with:
```bash
npm test
```
### ๐ก๏ธ **Linting**
Ensure code quality using ESLint:
```bash
npm run lint
```
### ๐๏ธ **Build**
Compile the TypeScript code to JavaScript:
```bash
npm run build
```
---
## ๐ค Contributing
We โค๏ธ contributions! Follow these steps to contribute:
1. ๐ด **Fork** the repository
2. ๐ฟ **Create** a new branch (`git checkout -b feature/AmazingFeature`)
3. ๐พ **Commit** your changes (`git commit -m 'Add some AmazingFeature'`)
4. ๐ **Push** to the branch (`git push origin feature/AmazingFeature`)
5. ๐ **Open a Pull Request**
---
## ๐ก Acknowledgments
- Thanks to the [Probot](https://probot.github.io/) team for their amazing framework.
- Inspired by the open-source community.
---
## ๐ License
This project is licensed under **The UnLicense** See the [LICENSE](LICENSE) file for details.
---
## ๐ฌ Contact & Community
๐ฌ Join us on **Discord**: [Click Here](https://discord.gg/H7pVc9aUK2)
๐ฆ **Follow on Twitter**: [@nexoslabs](https://twitter.com/nexoslabs)
๐ง **Email**: [contact@nexoscreation.tech](mailto:contact@nexoscreation.tech)
Made with โค๏ธ by the @nexoslabs Team