Skip to content

Commit

Permalink
chore: initialize repository
Browse files Browse the repository at this point in the history
  • Loading branch information
johnitvn committed Nov 22, 2024
0 parents commit e433344
Show file tree
Hide file tree
Showing 49 changed files with 1,404 additions and 0 deletions.
11 changes: 11 additions & 0 deletions .commitlintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@

const {COMMIT_TYPES: TYPES, COMMIT_SCOPES: SCOPES} = require('./rules.js');

module.exports = {
extends: ['@commitlint/config-conventional'],
rules: {
'type-enum': [2, 'always', Object.keys(TYPES) ],
'scope-enum': async () => [2,'always', Object.keys(SCOPES)],
},
};

13 changes: 13 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
root = true

[*]
charset = utf-8
indent_style = space
indent_size = 2
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true

[*.md]
insert_final_newline = false
trim_trailing_whitespace = false
7 changes: 7 additions & 0 deletions .github/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<!-- trunk-ignore-all(markdownlint/MD041) -->
Please help us process issues more efficiently by filing an
issue using one of the following templates:

<https://github.com/ebizbase/dev-infras/issues/new/choose>

Thank you!
36 changes: 36 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: 'bug'
assignees: ''
---
## Describe the bug
A clear and concise description of what the bug is.

## To Reproduce
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

## Expected behavior
A clear and concise description of what you expected to happen.

## Screenshots
If applicable, add screenshots to help explain your problem.

## Desktop (please complete the following information)
- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]

## Smartphone (please complete the following information)
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser [e.g. stock browser, safari]
- Version [e.g. 22]

## Additional context
Add any other context about the problem here.
1 change: 1 addition & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
blank_issues_enabled: false
16 changes: 16 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: 'feature'
assignees: ''
---

## Is your feature request related to a problem? Please describe
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

## Describe the solution you'd like
A clear and concise description of what you want to happen.

## Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
26 changes: 26 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
<!-- trunk-ignore-all(markdownlint/MD041) -->
## Feature PR Checklist
Please check if your PR fulfills the following requirements:

- [] The commit message follows our guidelines: <https://github.com/ebizbase/dev-infras/blob/main/CONTRIBUTING.md#commit-message-guidelines>
- [] Tests for the changes have been added
- [] Docs have been added / updated

## PR Type
- [] Feature
- [] BugFix
- [] Other

## Does this PR introduce a breaking change?
- [ ] Yes
- [ ] No

## What is the current behavior?
<!-- Please describe the current behavior that you are modifying, or link to a relevant issue. -->

## What is the new behavior?
<!-- Please describe the new behavior or changes that you are adding. -->
<!-- If this PR contains a breaking change, please describe the impact and migration path for existing applications below. -->

## Other information
<!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. -->
35 changes: 35 additions & 0 deletions .github/actions/setup/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# Setup Project Composite Action

This composite action sets up a project with Node.js, pnpm, and Docker Buildx.

Version: 0.0.0 <!-- x-release-please-version -->

## Inputs

- `dependencies`: Install dependencies (default: `false`)
- `docker-buildx`: Install Docker Buildx (default: `false`)

## Example Usage

```yaml
name: CI

on:
push:
branches:
- main

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v2

- name: Setup project
uses: ebizbase/ebizbase/actions/setup
with:
dependencies: true
docker-buildx: true
```
37 changes: 37 additions & 0 deletions .github/actions/setup/action.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
name: Setup project
description: Setup project with node pnpm docker-buildx
inputs:
dependencies:
description: Install dependencies
required: false
buildx:
description: Install docker buildx
required: false
runs:
using: composite
steps:
- name: Setup Node.js
uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4
with:
node-version: lts/*

- uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4
if: ${{ inputs.dependencies == 'true' }}
with:
path: ~/.bun/install/cache
key: ${{ runner.os }}-bun-${{ hashFiles('**/bun.lockb') }}
restore-keys: |
${{ runner.os }}-bun-
- name: Setup Bun
if: ${{ inputs.dependencies == 'true' }}
uses: oven-sh/setup-bun@4bc047ad259df6fc24a6c9b0f9a0cb08cf17fbe5 # v2

- name: Install npm dependencies
if: ${{ inputs.dependencies == 'true' }}
shell: bash
run: bun install --frozen-lockfile

- name: Install docker buildx
if: ${{ inputs.buildx == 'true' }}
uses: docker/setup-buildx-action@c47758b77c9736f4b2ef4073d4d51994fabfe349 # v3
39 changes: 39 additions & 0 deletions .github/pr-size.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# Configuration for PR Size Labeler

# List of files to exclude from size calculation
# Files matching these patterns will not be considered when calculating PR size
exclude_files:
- pnpm-lock.yaml

# Configuration for labeling based on the size of the Pull Request
# Each entry defines a size label, along with thresholds for diff and file count
label_configs:
# Configuration for 'extra small' PRs
- size: xs
diff: 25 # Threshold for the total lines of code changed (additions + deletions)
files: 1 # Threshold for the total number of files changed
labels: [size/xs] # Labels to be applied for this size

# Configuration for 'small' PRs
- size: s
diff: 150
files: 10
labels: [size/s]

# Configuration for 'medium' PRs
- size: m
diff: 600
files: 25
labels: [size/m, pairing-wanted]

# Configuration for 'large' PRs
- size: l
diff: 2500
files: 50
labels: [size/l, pairing-wanted]

# Configuration for 'extra large' PRs
- size: xl
diff: 5000
files: 100
labels: [size/xl, pairing-wanted]
52 changes: 52 additions & 0 deletions .github/renovate.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": ["config:recommended"],
"baseBranches": ["main"],
"rangeStrategy": "replace",
"pinDigests": true,
"prConcurrentLimit": 5,
"semanticCommits": "enabled",
"semanticCommitScope": "deps",
"semanticCommitType": "chore",
"dependencyDashboard": true,
"branchPrefix": "renovate/",
"dependencyDashboardAutoclose": true,
"commitBodyTable": true,
"schedule": ["before 1am"],
"automerge": false,
"lockFileMaintenance": {
"enabled": true
},
"packageRules": [
{
"groupName": "All patch dependencies",
"matchPackageNames": ["*"],
"matchUpdateTypes": ["patch"],
"automerge": true
},
{
"groupName": "Linting packages",
"matchPackageNames": [
"@types/eslint",
"babel-eslint",
"@babel/eslint-parser",
"@eslint/**",
"@eslint-community/**",
"@stylistic/eslint-plugin**",
"@types/eslint__**",
"@typescript-eslint/**",
"typescript-eslint",
"eslint**",
"@commitlint/**"
]
},
{
"groupName": "Testing libraries",
"matchPackageNames": ["/jest/", "/ts-jest/", "/@playwright/test/"]
},
{
"groupName": "Nx packages",
"matchPackageNames": ["/^@nx//", "/nx/", "@nx/jest"]
}
]
}
31 changes: 31 additions & 0 deletions .github/workflows/analysis.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Analysis

on:
workflow_dispatch:
push:
branches:
- main
pull_request:
branches:
- main
merge_group:
schedule:
- cron: 0 0 * * *

permissions:
contents: read
security-events: write

jobs:
codeql:
name: CodeQL Runner
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
- name: Initialize CodeQL
uses: github/codeql-action/init@ea9e4e37992a54ee68a9622e985e60c8e8f12d9f # v3
with:
languages: javascript
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@ea9e4e37992a54ee68a9622e985e60c8e8f12d9f # v3
Loading

0 comments on commit e433344

Please sign in to comment.