diff --git a/.devcontainer/on-create.sh b/.devcontainer/on-create.sh
index a66491ef7..fbd5351f2 100755
--- a/.devcontainer/on-create.sh
+++ b/.devcontainer/on-create.sh
@@ -9,10 +9,5 @@ npm install
# Copy the env file
cp .env.example .env
-# Source the env file, export the variables
-set -a
-source .env
-set +a
-
# Run the migrations
-npm run -w @documenso/prisma prisma:migrate-dev
+npm run prisma:migrate-dev
diff --git a/.github/ISSUE_TEMPLATE/bug-report.md b/.github/ISSUE_TEMPLATE/bug-report.md
new file mode 100644
index 000000000..d12bdad59
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/bug-report.md
@@ -0,0 +1,50 @@
+---
+name: Bug Report
+about: Create a bug report to help us improve
+---
+
+
+
+## Issue Description
+
+
+
+## Steps to Reproduce
+
+
+
+
+1. Step 1
+2. Step 2
+3. ...
+
+## Expected Behavior
+
+
+
+## Current Behavior
+
+
+
+## Screenshots (optional)
+
+
+
+## Environment
+
+
+
+- OS: [e.g., Windows 10]
+- Browser: [e.g., Chrome, Firefox]
+- Version: [e.g., 2.0.1]
+
+## Checklist
+
+
+
+
+- [ ] I have searched the existing issues to make sure this is not a duplicate.
+- [ ] I have provided steps to reproduce the issue.
+- [ ] I have included relevant environment information.
+- [ ] I have included any relevant screenshots.
+- [ ] I understand that this is a voluntary contribution and that there is no guarantee of resolution.
diff --git a/.github/ISSUE_TEMPLATE/feature-request.md b/.github/ISSUE_TEMPLATE/feature-request.md
new file mode 100644
index 000000000..a850a7a9a
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/feature-request.md
@@ -0,0 +1,41 @@
+---
+name: Feature Request
+about: Suggest a new idea or enhancement for this project
+---
+
+
+
+## Feature Description
+
+
+
+
+## Use Case
+
+
+
+
+## Proposed Solution
+
+
+
+
+## Alternatives (optional)
+
+
+
+
+## Additional Context
+
+
+
+## Checklist
+
+
+
+
+- [ ] I have searched the existing feature requests to make sure this is not a duplicate.
+- [ ] I have provided a detailed description of the requested feature.
+- [ ] I have explained the use case or scenario for this feature.
+- [ ] I have included any relevant technical details or design suggestions.
+- [ ] I understand that this is a suggestion and that there is no guarantee of implementation.
diff --git a/.github/ISSUE_TEMPLATE/improvement.md b/.github/ISSUE_TEMPLATE/improvement.md
new file mode 100644
index 000000000..709d3441f
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/improvement.md
@@ -0,0 +1,41 @@
+---
+name: General Improvement
+about: Suggest a minor enhancement or improvement for this project
+---
+
+
+
+## Improvement Description
+
+
+
+
+## Rationale
+
+
+
+
+## Proposed Solution
+
+
+
+
+## Alternatives (optional)
+
+
+
+
+## Additional Context
+
+
+
+## Checklist
+
+
+
+
+- [ ] I have searched the existing issues and improvement suggestions to avoid duplication.
+- [ ] I have provided a clear description of the improvement being suggested.
+- [ ] I have explained the rationale behind this improvement.
+- [ ] I have included any relevant technical details or design suggestions.
+- [ ] I understand that this is a suggestion and that there is no guarantee of implementation.
diff --git a/.github/PULL_REQUEST_TEMPLATE/generic.md b/.github/PULL_REQUEST_TEMPLATE/generic.md
new file mode 100644
index 000000000..70b668b5c
--- /dev/null
+++ b/.github/PULL_REQUEST_TEMPLATE/generic.md
@@ -0,0 +1,49 @@
+---
+name: Pull Request
+about: Submit changes to the project for review and inclusion
+---
+
+## Description
+
+
+
+
+## Related Issue
+
+
+
+
+## Changes Made
+
+
+
+
+- Change 1
+- Change 2
+- ...
+
+## Testing Performed
+
+
+
+
+- Tested feature X in scenario Y.
+- Ran unit tests for component Z.
+- Tested on browsers A, B, and C.
+- ...
+
+## Checklist
+
+
+
+
+- [ ] I have tested these changes locally and they work as expected.
+- [ ] I have added/updated tests that prove the effectiveness of these changes.
+- [ ] I have updated the documentation to reflect these changes, if applicable.
+- [ ] I have followed the project's coding style guidelines.
+- [ ] I have addressed the code review feedback from the previous submission, if applicable.
+
+## Additional Notes
+
+
+
diff --git a/.github/PULL_REQUEST_TEMPLATE/test-addition.md b/.github/PULL_REQUEST_TEMPLATE/test-addition.md
new file mode 100644
index 000000000..f93c81493
--- /dev/null
+++ b/.github/PULL_REQUEST_TEMPLATE/test-addition.md
@@ -0,0 +1,40 @@
+---
+name: Test Addition
+about: Submit a new test, either unit or end-to-end (E2E), for review and inclusion
+---
+
+## Description
+
+
+
+
+## Related Issue
+
+
+
+
+## Test Details
+
+
+
+
+- Test Name: Name of the test
+- Type: [Unit / E2E]
+- Description: Brief description of what the test checks
+- Inputs: What inputs the test uses (if applicable)
+- Expected Output: What output or behavior the test expects
+
+## Checklist
+
+
+
+
+- [ ] I have written the new test and ensured it works as intended.
+- [ ] I have added necessary documentation to explain the purpose of the test.
+- [ ] I have followed the project's testing guidelines and coding style.
+- [ ] I have addressed any review feedback from previous submissions, if applicable.
+
+## Additional Notes
+
+
+
diff --git a/.github/dependabot.yml b/.github/dependabot.yml
index 74fcb319b..1269fd6c5 100644
--- a/.github/dependabot.yml
+++ b/.github/dependabot.yml
@@ -9,7 +9,7 @@ updates:
labels:
- "ci dependencies"
- "ci"
- open-pull-requests-limit: 2
+ open-pull-requests-limit: 0
- package-ecosystem: "npm"
directory: "/apps/marketing"
@@ -19,7 +19,7 @@ updates:
labels:
- "npm dependencies"
- "frontend"
- open-pull-requests-limit: 2
+ open-pull-requests-limit: 0
- package-ecosystem: "npm"
directory: "/apps/web"
@@ -29,4 +29,4 @@ updates:
labels:
- "npm dependencies"
- "frontend"
- open-pull-requests-limit: 2
+ open-pull-requests-limit: 0
diff --git a/.gitpod.yml b/.gitpod.yml
new file mode 100644
index 000000000..b03003160
--- /dev/null
+++ b/.gitpod.yml
@@ -0,0 +1,55 @@
+tasks:
+ - init: |
+ npm i &&
+ npm run dx:up &&
+ cp .env.example .env &&
+ set -a; source .env &&
+ export NEXTAUTH_URL="$(gp url 3000)" &&
+ export NEXT_PUBLIC_WEBAPP_URL="$(gp url 3000)" &&
+ export NEXT_PUBLIC_MARKETING_URL="$(gp url 3001)"
+ command: npm run d
+
+ports:
+ - port: 3000
+ visibility: public
+ onOpen: open-preview
+ - port: 3001
+ visibility: public
+ onOpen: open-preview
+ - port: 9000
+ visibility: public
+ onOpen: ignore
+ - port: 1100
+ visibility: private
+ onOpen: ignore
+ - port: 2500
+ visibility: private
+ onOpen: ignore
+ - port: 54320
+ visibility: private
+ onOpen: ignore
+
+
+github:
+ prebuilds:
+ master: true
+ pullRequests: true
+ pullRequestsFromForks: true
+ addCheck: true
+ addComment: true
+ addBadge: true
+
+vscode:
+ extensions:
+ - aaron-bond.better-comments
+ - bradlc.vscode-tailwindcss
+ - dbaeumer.vscode-eslint
+ - esbenp.prettier-vscode
+ - mikestead.dotenv
+ - unifiedjs.vscode-mdx
+ - GitHub.copilot-chat
+ - GitHub.copilot-labs
+ - GitHub.copilot
+ - GitHub.vscode-pull-request-github
+ - Prisma.prisma
+ - VisualStudioExptTeam.vscodeintellicode
diff --git a/README.md b/README.md
index 2795d206d..f488b4a63 100644
--- a/README.md
+++ b/README.md
@@ -179,7 +179,7 @@ git clone https://github.com/documenso/documenso
- NEXT_PRIVATE_SMTP_FROM_NAME
- NEXT_PRIVATE_SMTP_FROM_ADDRESS
-5. Create the database schema by running `npm run prisma:migrate-dev -w @documenso/prisma`
+5. Create the database schema by running `npm run prisma:migrate-dev`
6. Run `npm run dev` root directory to start
@@ -254,6 +254,22 @@ containers:
- '::'
```
+### I can't see environment variables in my package scripts
+
+Wrap your package script with the `with:env` script like such:
+
+```
+npm run with:env -- npm run myscript
+```
+
+The same can be done when using `npx` for one of bin scripts:
+
+```
+npm run with:env -- npx myscript
+```
+
+This will load environment variables from your `.env` and `.env.local` files.
+
## Repo Activity

diff --git a/apps/marketing/src/app/(marketing)/layout.tsx b/apps/marketing/src/app/(marketing)/layout.tsx
index 36241e8e2..365d8a5d1 100644
--- a/apps/marketing/src/app/(marketing)/layout.tsx
+++ b/apps/marketing/src/app/(marketing)/layout.tsx
@@ -2,6 +2,8 @@
import React, { useEffect, useState } from 'react';
+import { usePathname } from 'next/navigation';
+
import { cn } from '@documenso/ui/lib/utils';
import { Footer } from '~/components/(marketing)/footer';
@@ -13,6 +15,7 @@ export type MarketingLayoutProps = {
export default function MarketingLayout({ children }: MarketingLayoutProps) {
const [scrollY, setScrollY] = useState(0);
+ const pathname = usePathname();
useEffect(() => {
const onScroll = () => {
@@ -25,7 +28,11 @@ export default function MarketingLayout({ children }: MarketingLayoutProps) {
}, []);
return (
-