An open API service indexing awesome lists of open source software.

https://github.com/nikkeyl/yokai

Bestiary of Japanese spirits and monsters
https://github.com/nikkeyl/yokai

bestiary japan mythology yokai

Last synced: over 1 year ago
JSON representation

Bestiary of Japanese spirits and monsters

Awesome Lists containing this project

README

          

# Archoleat Repo Template

![ESM](https://img.shields.io/badge/ESM-fe0)
![Specs](https://img.shields.io/github/actions/workflow/status/archoleat/repo-template/spec.yaml?label=Specs)
![Commitlint](https://img.shields.io/github/actions/workflow/status/archoleat/repo-template/commitlint.yaml?label=Commitlint)
![Editorconfig](https://img.shields.io/github/actions/workflow/status/archoleat/repo-template/editorconfig.yaml?label=Editorconfig)
![Prettier](https://img.shields.io/github/actions/workflow/status/archoleat/repo-template/prettier.yaml?label=Prettier)
![ESLint](https://img.shields.io/github/actions/workflow/status/archoleat/repo-template/eslint.yaml?label=ESLint)
![Remark](https://img.shields.io/github/actions/workflow/status/archoleat/repo-template/remark.yaml?label=Remark)

## Table of Contents

- [Getting Started](#getting-started)
- [Features](#features)
- [Scripts](#scripts)
- [Workflows](#workflows)
- [Change of Maintainer](#change-of-maintainer)
- [Contributing](#contributing)
- [License](#license)

**Archoleat Repo Template** is a template repository designed for quickly
starting new projects with pre-configured tools and best development practices.

This template includes ready-made solutions for integration with:

- **Git**.
- **GitHub**.
- **Commitlint**.
- **Conventional Commits**.
- **Husky**.
- **Pre Commit Hook**.
- **Lint Staged**.
- **GitHub Actions**.
- **Semantic Release**.
- **Bun**.
- **CodeQL**.
- **Specs**.
- **EditorConfig**.
- **ESLint**.
- **Remark**.
- **Prettier**.
- **TypeScript**.
- **Dependabot**.
- **Welcome Bot**.

> \[!TIP]
> **A good solution for your business!**
>
> Now you don't have to worry about unnecessary costs.
> Everything is already set up and prepared for you!
>
> And also the template is very good for teams,
> because you can easily standardize projects with this template.

## Getting Started

1. **Create a Repository**: Use this template
to create a new repository on GitHub.

> Since this is a **Public Template** you can click the button
> **Use this template** for a faster and more convenient cloning.

1. **Clone the Repository**: Clone your new repository to your local machine.

1. **Start Development**: Develop your project,
making changes according to your project's needs.

1. **Configure GitHub Actions**: Modify GitHub Actions
settings to fit your requirements.

> **For those unfamiliar with GitHub Actions**,
> our workflows use
> [**chain**](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#workflow_run),
> if you want to add more workflows to this chain,
> workflows it won't work, because the chain supports
> only three levels, example: `workflow A` > `workflow B` >
> `workflow C` > `workflow D`, if you add `workflow E`
> to the chain. it won't work!

## Features

- **Flexibility**: Easily customizable template to adapt
to different project types.

- **Git and GitHub Integration**: Pre-configured `.gitignore`
and `.gitattributes` for efficient work with Git and GitHub.

- **Conventional Commits & Commitlint**: If you don't want
to think about how to write a commit every time,
these plugins will help you.

> It will be especially useful for teams that
> have an ongoing debate about writing commits.

- **Husky, Lint Staged & Pre Commit**: Won't let you submit
bad code to the repository!

- **Continuous Integration (CI)**: Built-in CI support using GitHub Actions
for automatic linting, testing and building of your code with each change.

> Also suitable for private repositories! GitHub Actions use
> **cache**, **timeout-minutes**, **paths** and **workflow run**
> to reduce the execution time, which means it will significantly
> reduce your costs!

- **Security**: Included **CodeQL** workflow for detecting
and preventing potential vulnerabilities in your code.

- **Linters**: Help you maintain a consistent code writing style
and find errors.

- **Specs**: Automated testing will help you focus on
writing better code!

- **Semantic Release**: For those who are tired of writing changelogs
and thinking about what the next version number will be.

> If you have **Branch and Tag Protection** rules configured,
> please read this [article](https://gonzalohirsch.com/blog/semantic-release-and-branch-protection-rules).

- **TypeScript**: Pre-configured **TypeScript** setup
for improved reliability and development convenience.

- **Bots**:

- **Dependabot**: No more wasting time updating dependencies!
- **Welcome Bot**: A probot app that welcome new users.

## Scripts

- `init`: Installs dependencies and **Husky**.

## Workflows

- [`auto-merge-dependabot-pull-request.yaml`](.github/workflows/auto-merge-dependabot-pull-request.yaml):
Automatically merges dependabot **Pull Requests** to the **main** branch.

- [`codeql.yaml`](.github/workflows/codeql.yaml):
Checks **JavaScript** and **TypeScript** for vulnerabilities.

- [`commitlint.yaml`](.github/workflows/commitlint.yaml):
Checks the commit message according
to the **Conventional Commits** standard.

- [`create-pull-request.yaml`](.github/workflows/create-pull-request.yaml):
Automatically creates a **Pull Request**
when pushing a branch to the repository.

- [`editorconfig.yaml`](.github/workflows/editorconfig.yaml):
Checks all files with **Editorconfig Checker**.

> All ignore files [`.ecrc`](.ecrc).

- [`eslint.yaml`](.github/workflows/eslint.yaml):
Checks all **TypeScript** files with **ESLint**.

- [`remark.yaml`](.github/workflows/remark.yaml):
Checks all **Markdown** files with **Remark**.

> All ignore files [`.remarkignore`](.remarkignore).

- [`pre-commit.yaml`](.github/workflows/pre-commit.yaml):
Runs a check on the contents of the **Pull Request** before merging.

- [`prettier.yaml`](.github/workflows/prettier.yaml):
Checks all files with **Prettier**.

> All ignore files [`.prettierignore`](.prettierignore).

- [`release.yaml`](.github/workflows/release.yaml): Creates release.

- [`semantic-pull-request.yaml`](.github/workflows/semantic-pull-request-title.yaml):
Validates the **Pull Request** title
against the **conventional commits** standard.

- [`spec.yaml`](.github/workflows/spec.yaml):
Tests all **TypeScript** files with **Bun**.

- [`stale.yaml`](.github/workflows/stale.yaml):
Removes **Issues** and **Pull Requests** that have not been active
for more than **60 days**.

## Change of Maintainer

The following files use the names **Archoleat** and **nikkeyl** by default:

- [`CODEOWNERS`](.github/CODEOWNERS).
- [`LICENSE`](LICENSE).
- [`CHANGELOG.md`](CHANGELOG.md).
- [`README.md`](README.md).
- [`FUNDING.yaml`](.github/FUNDING.yaml).
- [`package.json`](package.json).
- [`release.yaml`](.github/workflows/release.yaml).

Before using this template, replace this names with your
name, name of your team or the name of your organization.

> \[!CAUTION]
> Don't forget to change your license!

## Contributing

Please read [**CONTRIBUTING**](https://github.com/archoleat/.github/blob/main/CONTRIBUTING.md)
to start contributing.

## License

This project is licensed under the [**MIT license**](LICENSE).