snapshot of https://github.com/shadcn-ui/ui.git (main, 2026-09-15; blobs > 131072B omitted)
All checks were successful
Release / Create Version PR or Publish Stable Release (push) Has been skipped
Release / Publish Prerelease to NPM (push) Has been skipped
Monitor Registries / Monitor registry health (push) Has been skipped

This commit is contained in:
upstream-mirror
2026-09-15 22:44:43 +05:00
commit 1416db152c
5727 changed files with 630238 additions and 0 deletions

View File

@@ -0,0 +1,41 @@
name: 🐛 Bug Report
description: Something is wrong with the Stack.
body:
- type: markdown
attributes:
value: >-
Thank you for helping to improve Remix!
Our bandwidth on maintaining these stacks is limited. As a team, we're
currently focusing our efforts on Remix itself. The good news is you can
fork and adjust this stack however you'd like and start using it today
as a custom stack. Learn more from
[the Remix Stacks docs](https://remix.run/stacks).
If you'd still like to report a bug, please fill out this form. We can't
promise a timely response, but hopefully when we have the bandwidth to
work on these stacks again we can take a look. Thanks!
- type: input
attributes:
label: Have you experienced this bug with the latest version of the template?
validations:
required: true
- type: textarea
attributes:
label: Steps to Reproduce
description: Steps to reproduce the behavior.
validations:
required: true
- type: textarea
attributes:
label: Expected Behavior
description: A concise description of what you expected to happen.
validations:
required: true
- type: textarea
attributes:
label: Actual Behavior
description: A concise description of what you're experiencing.
validations:
required: true

View File

@@ -0,0 +1,21 @@
blank_issues_enabled: false
contact_links:
- name: Get Help
url: https://github.com/remix-run/remix/discussions/new?category=q-a
about:
If you can't get something to work the way you expect, open a question in
the Remix discussions.
- name: Feature Request
url: https://github.com/remix-run/remix/discussions/new?category=ideas
about:
We appreciate you taking the time to improve Remix with your ideas, but we
use the Remix Discussions for this instead of the issues tab 🙂.
- name: 💬 Remix Discord Channel
url: https://rmx.as/discord
about: Interact with other people using Remix 💿
- name: 💬 New Updates (Twitter)
url: https://twitter.com/remix_run
about: Stay up to date with Remix news on twitter
- name: 🍿 Remix YouTube Channel
url: https://rmx.as/youtube
about: Are you a tech lead or wanting to learn more about Remix in depth? Checkout the Remix YouTube Channel

View File

@@ -0,0 +1,14 @@
<!--
👋 Hey, thanks for your interest in contributing to Remix!
Our bandwidth on maintaining these stacks is limited. As a team, we're currently
focusing our efforts on Remix itself. The good news is you can fork and adjust
this stack however you'd like and start using it today as a custom stack. Learn
more from [the Remix Stacks docs](https://remix.run/stacks).
You're still welcome to make a PR. We can't promise a timely response, but
hopefully when we have the bandwidth to work on these stacks again we can take
a look. Thanks!
-->

View File

@@ -0,0 +1,6 @@
version: 2
updates:
- package-ecosystem: github-actions
directory: /
schedule:
interval: daily

View File

@@ -0,0 +1,144 @@
name: 🚀 Deploy
on:
push:
branches:
- main
- dev
pull_request:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
actions: write
contents: read
jobs:
lint:
name: ⬣ ESLint
runs-on: ubuntu-latest
steps:
- name: ⬇️ Checkout repo
uses: actions/checkout@v4
- name: ⎔ Setup node
uses: actions/setup-node@v4
with:
cache: npm
cache-dependency-path: ./package.json
node-version: 18
- name: 📥 Install deps
run: npm install
- name: 🔬 Lint
run: npm run lint
typecheck:
name: ʦ TypeScript
runs-on: ubuntu-latest
steps:
- name: ⬇️ Checkout repo
uses: actions/checkout@v4
- name: ⎔ Setup node
uses: actions/setup-node@v4
with:
cache: npm
cache-dependency-path: ./package.json
node-version: 18
- name: 📥 Install deps
run: npm install
- name: 🔎 Type check
run: npm run typecheck --if-present
vitest:
name: ⚡ Vitest
runs-on: ubuntu-latest
steps:
- name: ⬇️ Checkout repo
uses: actions/checkout@v4
- name: ⎔ Setup node
uses: actions/setup-node@v4
with:
cache: npm
cache-dependency-path: ./package.json
node-version: 18
- name: 📥 Install deps
run: npm install
- name: ⚡ Run vitest
run: npm run test -- --coverage
cypress:
name: ⚫️ Cypress
runs-on: ubuntu-latest
steps:
- name: ⬇️ Checkout repo
uses: actions/checkout@v4
- name: 🏄 Copy test env vars
run: cp .env.example .env
- name: ⎔ Setup node
uses: actions/setup-node@v4
with:
cache: npm
cache-dependency-path: ./package.json
node-version: 18
- name: 📥 Install deps
run: npm install
- name: 🛠 Setup Database
run: npx prisma migrate reset --force
- name: ⚙️ Build
run: npm run build
- name: 🌳 Cypress run
uses: cypress-io/github-action@v6
with:
start: npm run start:mocks
wait-on: http://localhost:8811
env:
PORT: 8811
deploy:
name: 🚀 Deploy
runs-on: ubuntu-latest
needs: [lint, typecheck, vitest, cypress]
# only deploy main/dev branch on pushes
if: ${{ (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/dev') && github.event_name == 'push' }}
steps:
- name: ⬇️ Checkout repo
uses: actions/checkout@v4
- name: 👀 Read app name
uses: SebRollen/toml-action@v1.2.0
id: app_name
with:
file: fly.toml
field: app
- name: 🎈 Setup Fly
uses: superfly/flyctl-actions/setup-flyctl@v1
- name: 🚀 Deploy Staging
if: ${{ github.ref == 'refs/heads/dev' }}
run: flyctl deploy --remote-only --build-arg COMMIT_SHA=${{ github.sha }} --app ${{ steps.app_name.outputs.value }}-staging
env:
FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN }}
- name: 🚀 Deploy Production
if: ${{ github.ref == 'refs/heads/main' }}
run: flyctl deploy --remote-only --build-arg COMMIT_SHA=${{ github.sha }} --app ${{ steps.app_name.outputs.value }}
env:
FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN }}

View File

@@ -0,0 +1,46 @@
name: 👔 Format
on:
push:
branches:
- main
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
format:
if: github.repository == 'remix-run/indie-stack'
runs-on: ubuntu-latest
steps:
- name: ⬇️ Checkout repo
uses: actions/checkout@v4
- name: ⎔ Setup node
uses: actions/setup-node@v4
with:
cache: npm
cache-dependency-path: ./package.json
node-version: 18
- name: 📥 Install deps
run: npm install
- name: 👔 Format
run: npm run format:repo
- name: 💪 Commit
run: |
git config --local user.email "github-actions[bot]@users.noreply.github.com"
git config --local user.name "github-actions[bot]"
git add .
if [ -z "$(git status --porcelain)" ]; then
echo "💿 no formatting changed"
exit 0
fi
git commit -m "chore: format"
git push
echo "💿 pushed formatting changes https://github.com/$GITHUB_REPOSITORY/commit/$(git rev-parse HEAD)"

View File

@@ -0,0 +1,33 @@
name: ⬣ Lint repository
on:
push:
branches:
- main
- dev
pull_request:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
lint:
name: ⬣ Lint repo
runs-on: ubuntu-latest
steps:
- name: ⬇️ Checkout repo
uses: actions/checkout@v4
- name: ⎔ Setup node
uses: actions/setup-node@v4
with:
cache: npm
cache-dependency-path: ./package.json
node-version: 18
- name: 📥 Install deps
run: npm install
- name: 🔬 Lint
run: npm run lint

View File

@@ -0,0 +1,34 @@
name: 🥺 No Response
on:
schedule:
# Schedule for five minutes after the hour, every hour
- cron: "5 * * * *"
permissions:
issues: write
pull-requests: write
jobs:
stale:
if: github.repository == 'remix-run/indie-stack'
runs-on: ubuntu-latest
steps:
- name: 🥺 Handle Ghosting
uses: actions/stale@v9
with:
days-before-close: 10
close-issue-message: >
This issue has been automatically closed because we haven't received a
response from the original author 🙈. This automation helps keep the issue
tracker clean from issues that are unactionable. Please reach out if you
have more information for us! 🙂
close-pr-message: >
This PR has been automatically closed because we haven't received a
response from the original author 🙈. This automation helps keep the issue
tracker clean from PRs that are unactionable. Please reach out if you
have more information for us! 🙂
# don't automatically mark issues/PRs as stale
days-before-stale: -1
stale-issue-label: needs-response
stale-pr-label: needs-response