Skip to content

Commit

Permalink
repo: intial setup
Browse files Browse the repository at this point in the history
  • Loading branch information
suhailkakar committed Nov 10, 2024
0 parents commit cbdb008
Show file tree
Hide file tree
Showing 160 changed files with 24,872 additions and 0 deletions.
12 changes: 12 additions & 0 deletions .autorc
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"plugins": [
"npm",
"all-contributors",
"first-time-contributor",
"released"
],
"owner": "haydenbleasel",
"repo": "next-forge",
"name": "Hayden Bleasel",
"email": "[email protected]"
}
55 changes: 55 additions & 0 deletions .coderabbit.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
language: en-US # Default language
reviews:
# Core Review Settings
profile: "chill" # Less nitpicky feedback style
request_changes_workflow: false # Don't require resolving comments
high_level_summary: true
review_status: true
commit_status: true

# Features
poem: false # Disable poem generation to keep reviews focused
collapse_walkthrough: true # Better organization
sequence_diagrams: true # Helpful for understanding changes
changed_files_summary: true

# Filtering
path_filters:
- "!**/node_modules/**"
- "!**/*.lock"
- "!.next/**"
- "src/**"
- "apps/**"

# Path-specific instructions
path_instructions:
- path: "**/*.ts"
instructions: "Ensure strict TypeScript practices and proper type definitions. Prefer interfaces over types."
- path: "**/*.tsx"
instructions: "Follow React best practices. Ensure proper component typing and use of React.FC for functional components."

# Auto Review Settings
auto_review:
enabled: true
auto_incremental_review: true
ignore_title_keywords: ["wip", "draft"]
drafts: false
base_branches: ["main", "develop"]

# Tools Configuration
tools:
biome:
enabled: true
eslint:
enabled: true
markdownlint:
enabled: true
gitleaks:
enabled: true

# Knowledge Base Settings
knowledge_base:
learnings:
scope: "auto" # Use local for public repo
pull_requests:
scope: "auto" # Learn from repository history
3 changes: 3 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# These are supported funding model platforms

github: [haydenbleasel]
16 changes: 16 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
version: 2
updates:

# Maintain dependencies for GitHub Actions
- package-ecosystem: "github-actions"
directory: "/"
open-pull-requests-limit: 10
schedule:
interval: "monthly"

# Maintain dependencies for npm
- package-ecosystem: "npm"
directory: "/"
open-pull-requests-limit: 10
schedule:
interval: "monthly"
88 changes: 88 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
# Name of our action
name: Build

# The event that will trigger the action
on:
pull_request:
branches: [main]

# what the action will do
jobs:

build:
# The operating system it will run on
runs-on: ubuntu-latest
# This check needs to be in place to prevent a publish loop with auto and github actions
if: "!contains(github.event.head_commit.message, 'ci skip') && !contains(github.event.head_commit.message, 'skip ci')"
# The list of steps that the action will go through
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Prepare repository
run: git fetch --unshallow --tags

- uses: pnpm/action-setup@v4
name: Install pnpm
with:
run_install: false

- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 20
cache: pnpm

- name: Get pnpm store directory
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV
- uses: actions/cache@v4
name: Setup pnpm cache
with:
path: ${{ env.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-store-
- name: Install dependencies
run: pnpm install

- name: Create .env.local file
run: |
touch apps/app/.env.local
echo "CLERK_SECRET_KEY=sk_test_JA==" >> apps/app/.env.local
echo "CLERK_WEBHOOK_SECRET=whsec_test" >> apps/app/.env.local
echo "RESEND_AUDIENCE_ID=test" >> apps/app/.env.local
echo "[email protected]" >> apps/app/.env.local
echo "DATABASE_URL=postgresql://test:test@localhost:5432/test" >> apps/app/.env.local
echo "RESEND_TOKEN=re_test" >> apps/app/.env.local
echo "STRIPE_SECRET_KEY=sk_test" >> apps/app/.env.local
echo "STRIPE_WEBHOOK_SECRET=whsec_test" >> apps/app/.env.local
echo "BETTERSTACK_API_KEY=test" >> apps/app/.env.local
echo "BETTERSTACK_URL=https://test.com" >> apps/app/.env.local
echo "FLAGS_SECRET=FcnUGt7tT-4cOw-D_1GoXAH1bU7ljDBr01F5w4dxrdQ" >> apps/app/.env.local
echo "ARCJET_KEY=ajkey_test" >> apps/app/.env.local
echo "NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=pk_test_JA==" >> apps/app/.env.local
echo "NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in" >> apps/app/.env.local
echo "NEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up" >> apps/app/.env.local
echo "NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL=/" >> apps/app/.env.local
echo "NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL=/" >> apps/app/.env.local
echo "NEXT_PUBLIC_GA_MEASUREMENT_ID=G-test" >> apps/app/.env.local
echo "NEXT_PUBLIC_POSTHOG_KEY=phc_test" >> apps/app/.env.local
echo "NEXT_PUBLIC_POSTHOG_HOST=https://test.com" >> apps/app/.env.local
echo "NEXT_PUBLIC_APP_URL=http://localhost:3000" >> apps/app/.env.local
echo "NEXT_PUBLIC_WEB_URL=http://localhost:3001" >> apps/app/.env.local
echo "NEXT_PUBLIC_DOCS_URL=http://localhost:3004" >> apps/app/.env.local
echo "NEXT_PUBLIC_VERCEL_PROJECT_PRODUCTION_URL=http://localhost:3002" >> apps/app/.env.local
- name: Copy .env.local file
run: |
cp apps/app/.env.local apps/web/.env.local
cp apps/app/.env.local apps/api/.env.local
- name: Build
run: pnpm build
52 changes: 52 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# Name of our action
name: Release

# The event that will trigger the action
on:
push:
branches: [main]

# what the action will do
jobs:
release:
# The operating system it will run on
runs-on: ubuntu-latest
# This check needs to be in place to prevent a publish loop with auto and github actions
if: "!contains(github.event.head_commit.message, 'ci skip') && !contains(github.event.head_commit.message, 'skip ci')"
# The list of steps that the action will go through
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Prepare repository
run: git fetch --unshallow --tags

- name: Install Node.js
uses: actions/setup-node@v4

- uses: pnpm/action-setup@v4
name: Install pnpm
with:
run_install: false

- name: Get pnpm store directory
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV
- uses: actions/cache@v4
name: Setup pnpm cache
with:
path: ${{ env.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-store-
- name: Install dependencies
run: pnpm install

- name: Create Release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
run: npx auto shipit
41 changes: 41 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# Dependencies
node_modules
.pnp
.pnp.js

# Local env files
.env
.env.local
.env.development.local
.env.test.local
.env.production.local

# Testing
coverage

# Turbo
.turbo

# Vercel
.vercel

# Build Outputs
.next/
out/
build
dist


# Debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*

# Misc
.DS_Store
*.pem

# Sentry Config File
.env.sentry-build-plugin
62 changes: 62 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "Next.js: debug server-side",
"type": "node-terminal",
"request": "launch",
"command": "pnpm dev"
},
{
"name": "Next.js: debug client-side (app)",
"type": "chrome",
"request": "launch",
"url": "http://localhost:3000"
},
{
"name": "Next.js: debug client-side (web)",
"type": "chrome",
"request": "launch",
"url": "http://localhost:3001"
},
{
"name": "Next.js: debug client-side (api)",
"type": "chrome",
"request": "launch",
"url": "http://localhost:3002"
},
{
"name": "Next.js: debug client-side (email)",
"type": "chrome",
"request": "launch",
"url": "http://localhost:3003"
},
{
"name": "Next.js: debug client-side (app)",
"type": "chrome",
"request": "launch",
"url": "http://localhost:3004"
},
{
"name": "Next.js: debug client-side (studio)",
"type": "chrome",
"request": "launch",
"url": "http://localhost:3005"
},
{
"name": "Next.js: debug full stack",
"type": "node",
"request": "launch",
"program": "${workspaceFolder}/node_modules/.bin/next",
"runtimeArgs": ["--inspect"],
"skipFiles": ["<node_internals>/**"],
"serverReadyAction": {
"action": "debugWithEdge",
"killOnServerStop": true,
"pattern": "- Local:.+(https?://.+)",
"uriFormat": "%s",
"webRoot": "${workspaceFolder}"
}
}
]
}
27 changes: 27 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
{
"typescript.tsdk": "node_modules/typescript/lib",
"editor.defaultFormatter": "biomejs.biome",
"editor.formatOnSave": true,
"editor.formatOnPaste": true,
"emmet.showExpandedAbbreviation": "never",
"editor.codeActionsOnSave": {
"quickfix.biome": "explicit",
"source.organizeImports.biome": "explicit"
},
"[typescript]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[json]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[javascript]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[jsonc]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[typescriptreact]": {
"editor.defaultFormatter": "biomejs.biome"
},
"tailwindCSS.experimental.configFile": "./packages/design-system/tailwind.config.ts"
}
Loading

0 comments on commit cbdb008

Please sign in to comment.