1
0
mirror of https://github.com/XFox111/bonch-calendar.git synced 2026-04-22 07:08:01 +03:00

init: initial commit

This commit is contained in:
2025-11-18 20:16:48 +00:00
commit fe11e264de
69 changed files with 10008 additions and 0 deletions
+1
View File
@@ -0,0 +1 @@
* @XFox111
+102
View File
@@ -0,0 +1,102 @@
name: "🐞 Bug Report"
description: Create a report to help us improve the project
title: "[Bug]: "
labels: ["bug", "needs-triage"]
assignees:
- xfox111
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!
- type: textarea
id: desc
attributes:
label: Description
description: A clear and concise description of what the bug is.
placeholder: e.g. The calendar is empty, even though timetable for my group is published.
validations:
required: true
- type: textarea
attributes:
label: Reproduction steps
description: Precisely describe minimal number of steps that make the bug to appear
placeholder: |
1. Go to '...'
2. Click on '...'
3. Scroll down to '...'
4. See '...'
validations:
required: true
- type: textarea
attributes:
label: Expected behavior
description: A clear and concise description of what you expected to happen.
placeholder: e.g. My timetable should be displayed in the calendar.
validations:
required: true
- type: textarea
attributes:
label: Screenshot
description: If applicable, add screenshots to help explain your problem.
validations:
required: false
- type: input
id: browser
attributes:
label: Browser name
placeholder: e.g. Google Chrome
validations:
required: true
- type: input
id: calendar
attributes:
label: Calendar service
placeholder: e.g. Google Calendar, Outlook, etc.
validations:
required: true
- type: input
id: group
attributes:
label: Faculty, course number and group number
description: |
If you don't want to share your group publicly, say "PM", and send it to feedback@xfox111.net. Reference the issue number.
placeholder: e.g. РТС, 2, РТ-31м
validations:
required: true
- type: textarea
id: context
attributes:
label: Additional context
description: Add any other context about the problem here.
validations:
required: false
- type: dropdown
id: requested-help
attributes:
label: Are you willing to submit a PR for this issue?
options:
- "yes"
- "no"
validations:
required: true
- type: checkboxes
id: checkboxes
attributes:
label: Validations
description: Before submitting the issue, please make sure you do the following
options:
- label: Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
required: true
- label: The provided reproduction is a minimal reproducible example of the bug.
required: true
+7
View File
@@ -0,0 +1,7 @@
# yaml-language-server: $schema=https://json.schemastore.org/github-issue-config.json
blank_issues_enabled: true
contact_links:
- name: Questions & Discussions
url: https://github.com/XFox111/bonch-calendar/discussions
about: Use GitHub discussions to ask your questions.
@@ -0,0 +1,62 @@
name: "🚀 New feature proposal"
description: Suggest a feature idea for this project
title: "[Feature]: "
labels: ["feature", "needs-triage"]
assignees:
- xfox111
body:
- type: markdown
attributes:
value: |
Thanks for your interest in the project and taking the time to fill out this feature report!
- type: textarea
id: proposition
attributes:
label: Proposed solution
description: Describe the solution you'd like
validations:
required: true
- type: textarea
id: justification
attributes:
label: Justification
description: Is your feature request related to a problem? Please describe.
validations:
required: true
- type: textarea
id: alts
attributes:
label: Alternatives
description: Describe alternatives you've considered.
validations:
required: true
- type: textarea
id: context
attributes:
label: Additional context
description: Add any other context or screenshots about the feature request here.
validations:
required: false
- type: dropdown
id: requested-help
attributes:
label: Are you willing to submit a PR for this issue?
options:
- "yes"
- "no (I am aware that the project's author will not work on this issue)"
validations:
required: true
- type: checkboxes
id: checkboxes
attributes:
label: Validations
description: Before submitting the issue, please make sure you do the following
options:
- label: Check that there isn't already an issue that request the same feature to avoid creating a duplicate.
required: true
+81
View File
@@ -0,0 +1,81 @@
# Please see the documentation for all configuration options:
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
# yaml-language-server: $schema=https://json.schemastore.org/dependabot-2.0.json
version: 2
updates:
- package-ecosystem: "npm"
directory: "/app"
target-branch: "main"
assignees:
- "XFox111"
schedule:
interval: monthly
rebase-strategy: disabled
groups:
deps:
patterns:
- "*"
exclude-patterns:
- "react"
- "react-dom"
- "@types/react"
- "@types/react-dom"
react:
patterns:
- "react"
- "react-dom"
- "@types/react"
- "@types/react-dom"
update-types:
- minor
- patch
react-next:
patterns:
- "react"
- "react-dom"
- "@types/react"
- "@types/react-dom"
update-types:
- major
- package-ecosystem: "nuget" # See documentation for possible values
directory: "/" # Location of package manifests
target-branch: "main"
assignees:
- "XFox111"
schedule:
interval: monthly
rebase-strategy: disabled
open-pull-requests-limit: 20
- package-ecosystem: "github-actions"
directory: "/"
target-branch: "main"
assignees:
- "XFox111"
schedule:
interval: monthly
rebase-strategy: disabled
open-pull-requests-limit: 20
- package-ecosystem: "devcontainers"
directory: "/"
target-branch: "main"
assignees:
- "XFox111"
schedule:
interval: monthly
rebase-strategy: disabled
open-pull-requests-limit: 20
- package-ecosystem: "docker"
directory: "/"
target-branch: "main"
assignees:
- "XFox111"
schedule:
interval: monthly
rebase-strategy: disabled
open-pull-requests-limit: 20
+6
View File
@@ -0,0 +1,6 @@
## Description
<!-- Put a detailed description of the pull request here (what does it change and how does it change?) -->
<!-- If you have an issue number, add it here with "resolves" prefix -->
<!-- For example: -->
<!-- resolves: #69420 -->
+88
View File
@@ -0,0 +1,88 @@
name: "Audit pipeline"
on:
push:
branches: [ "main" ]
paths-ignore:
- '.devcontainer/*'
- '.github/*'
- '!.github/workflows/audit.yml'
- '.vscode/*'
- '**.md'
- 'LICENSE'
- 'assets/*'
pull_request:
branches: [ "main" ]
paths-ignore:
- '.devcontainer/*'
- '.github/*'
- '!.github/workflows/audit.yml'
- '.vscode/*'
- '**.md'
- 'LICENSE'
- 'assets/*'
workflow_dispatch:
permissions:
packages: write
jobs:
api:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: docker/build-push-action@v6
with:
context: ./api
tags: ${{ github.repository }}-api:ci
- run: docker save ${{ github.repository }}:ci | gzip > api_image.tar.gz
- uses: actions/upload-artifact@v5
with:
name: api-image
path: api_image.tar.gz
app:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: docker/build-push-action@v6
with:
context: ./app
tags: ${{ github.repository }}-app:ci
- run: docker save ${{ github.repository }}:ci | gzip > app_image.tar.gz
- uses: actions/upload-artifact@v5
with:
name: app-image
path: app_image.tar.gz
app_audit:
runs-on: ubuntu-latest
container: node:latest
steps:
- uses: actions/checkout@v5
- run: npm install
working-directory: ./app
- run: npm run lint
working-directory: ./app
- run: npm audit --audit-level=moderate
working-directory: ./app
- run: npm audit --audit-level=moderate --json > audit_report.json
working-directory: ./app
- uses: actions/upload-artifact@v5
with:
name: app-audit-report
path: ./app/audit_report.json
+110
View File
@@ -0,0 +1,110 @@
name: "Release pipeline"
on:
release:
types: [published]
workflow_dispatch:
permissions:
packages: write
jobs:
api:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: docker/metadata-action@v5
id: meta
with:
images: |
${{ github.repository }}-api
ghcr.io/${{ github.repository }}-api
tags: |
latest
${{ github.ref_name }}
- name: "Login to Docker Hub"
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: "Login to GitHub Container Registry"
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- uses: docker/build-push-action@v6
with:
context: ./api
push: true
tags: ${{ steps.meta.outputs.tags }}
app:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: docker/metadata-action@v5
id: meta
with:
images: |
${{ github.repository }}-app
ghcr.io/${{ github.repository }}-app
tags: |
latest
${{ github.ref_name }}
- name: "Login to Docker Hub"
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: "Login to GitHub Container Registry"
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- uses: docker/build-push-action@v6
with:
context: ./app
push: true
tags: ${{ steps.meta.outputs.tags }}
pages:
runs-on: ubuntu-latest
container: node:latest
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- uses: actions/checkout@v5
- run: npm install
working-directory: ./app
- run: npm run build
env:
VITE_BACKEND_HOST: https://api.bonch.xfox111.net
working-directory: ./app
- name: Setup Pages
uses: actions/configure-pages@v5
- uses: actions/upload-pages-artifact@v4
with:
path: "./app/dist"
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4