-
Notifications
You must be signed in to change notification settings - Fork 621
Gi/portal knowledge base #6993
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Gi/portal knowledge base #6993
Conversation
|
|
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
How to use the Graphite Merge QueueAdd either label to this PR to merge it via the merge queue:
You must have a Graphite account in order to use the merge queue. Sign up using this link. An organization admin has enabled the Graphite Merge Queue in this repository. Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue. |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #6993 +/- ##
=======================================
Coverage 55.59% 55.59%
=======================================
Files 901 901
Lines 58121 58121
Branches 4064 4064
=======================================
Hits 32313 32313
Misses 25703 25703
Partials 105 105
🚀 New features to boost your workflow:
|
size-limit report 📦
|
MananTank
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM - just fix the lint error
<!--
## title your PR with this format: "[SDK/Dashboard/Portal] Feature/Fix: Concise title for the changes"
If you did not copy the branch name from Linear, paste the issue tag here (format is TEAM-0000):
## Notes for the reviewer
Anything important to call out? Be sure to also clarify these in your comments.
## How to test
Unit tests, playground, etc.
-->
<!-- start pr-codex -->
---
## PR-Codex overview
This PR primarily focuses on enhancing the `thirdweb Knowledge Base` by adding new troubleshooting guides, updating existing resources, and improving documentation structure for better user support.
### Detailed summary
- Added a new troubleshooting guide for `Nebula`.
- Introduced detailed steps for resolving `device link errors` in `thirdweb CLI`.
- Updated support links in `Header.tsx`.
- Created new sections for `batch upload issues` and `airdrop contract troubleshooting`.
- Improved layout in `layout.tsx` with `DocLayout`.
- Removed unused `ContractsIcon` from `page.tsx`.
- Enhanced the `knowledge base` sidebar structure.
- Added visual guides and images in multiple `mdx` files for clarity.
- Improved metadata for better SEO and documentation clarity.
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Introduced a comprehensive Knowledge Base with structured navigation, guides, and troubleshooting for web3 development and thirdweb support.
- Added detailed documentation on deploying NFT mint sites, creating soulbound tokens, sharing console errors, and resolving CLI device link errors.
- Launched troubleshooting guides for airdrop contracts, batch upload issues, embed feature changes, and Nebula-specific support.
- **Improvements**
- Updated navigation links to add a Nebula API reference and consolidated support links to internal resources.
- **Removals**
- Removed the "Contracts" article card from the learning resources section.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
c679db9 to
b64ffe3
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
♻️ Duplicate comments (1)
apps/portal/src/app/knowledge-base/troubleshoot/contracts/batch-upload/page.mdx (1)
23-23: Use internal route for the support linkTo maintain consistent internal navigation (as updated in
Header.tsx), please replace the external support URL with the corresponding internal path:- If you’ve tried these steps and still encounter issues, [contact our support team](https://thirdweb.com/support). + If you’ve tried these steps and still encounter issues, [contact our support team](/knowledge-base).
🧹 Nitpick comments (14)
apps/portal/src/app/knowledge-base/page.mdx (1)
61-63: Refine call-to-action wording.
Consider strengthening the verb for a more professional tone.- You can [submit a ticket](https://thirdweb.com/support), and we’ll be happy to help you! + You can [submit a ticket](https://thirdweb.com/support), and we’ll be happy to assist you!🧰 Tools
🪛 LanguageTool
[style] ~63-~63: Consider using a different verb to strengthen your wording.
Context: ...web.com/support), and we’ll be happy to help you!(HELP_ASSIST)
apps/portal/src/app/knowledge-base/troubleshoot/contracts/batch-upload/page.mdx (2)
1-2: Add front matter metadata for SEO and consistencyThis MDX page currently lacks a metadata block (e.g.,
title,description). To align with other KB articles and improve SEO, please add a front-matter section at the very top:--- title: "Batch Upload Issues" description: "Troubleshooting guide for large batch uploads in drop contracts" ---
13-13: Refine the spelling of “antivirus”Standard usage is to write “antivirus” as a single word. Update the line to:
- **Anti-virus software** can also interfere—pause it while you upload. + **Antivirus software** can also interfere—pause it while you upload.🧰 Tools
🪛 LanguageTool
[misspelling] ~13-~13: This word is normally spelled as one.
Context: ...quests—turn them off temporarily. - Anti-virus software can also interfere—pause it ...(EN_COMPOUNDS_ANTI_VIRUS)
apps/portal/src/app/knowledge-base/get-started/page.mdx (3)
1-4: Remove unused imports
The file imports several icons (WalletIcon,FileIcon, etc.) and UI components (DocImage,FeatureCard, etc.) fromlucide-reactand@doc, as well asExternalLink, but none are used in this MDX page. Unused imports increase bundle size and can be confusing. Please trim the imports to only what’s needed.Suggested diff:
-import { WalletIcon, FileIcon, MessageCircleIcon, BracesIcon, BotIcon, BlocksIcon } from "lucide-react"; -import { DocImage, createMetadata, FeatureCard, GithubTemplateCard, Stack, Grid, ArticleCard, ArticleIconCard } from "@doc"; -import { ExternalLink } from "lucide-react"; +import { createMetadata } from "@doc";
22-28: Use theExternalLinkcomponent for external URLs
You’ve importedExternalLinkbut are using plain markdown links for all external resources. To ensure consistent styling and include the external-link icon automatically, consider replacing markdown links with the<ExternalLink>component from your design system.
63-63: Refine wording for stronger verb
LanguageTool flags “help” as a weak verb here. Consider swapping it for “assist” to make the call to action more compelling.Proposed change:
- You can [submit a ticket](https://thirdweb.com/support), and we’ll be happy to help you! + You can [submit a ticket](https://thirdweb.com/support), and we’ll be happy to assist you!🧰 Tools
🪛 LanguageTool
[style] ~63-~63: Consider using a different verb to strengthen your wording.
Context: ...web.com/support), and we’ll be happy to help you!(HELP_ASSIST)
apps/portal/src/app/knowledge-base/how-to/creating-soulbound-nfts/page.mdx (5)
11-11: Fix spelling and heading style
The heading “## How to make your tokens Soulbound or Non-Transferrable” contains a typo—Transferrable should be Transferable. For consistency and readability, consider Title Case and hyphenation:## How to Make Your Tokens Soulbound or Non-Transferable
13-13: Enhance external link attributes
The link to the external guide opens in the same tab. For better UX and security, addtarget="_blank"andrel="noopener noreferrer":-The easiest way is via the **Permissions** tab ... [guide on making NFTs non-transferable](https://blog.thirdweb.com/...). +The easiest way is via the **Permissions** tab ... [guide on making NFTs non-transferable](https://blog.thirdweb.com/...){"target":"_blank" rel="noopener noreferrer"}.
30-33: Use a fenced code block for the bytes32 example
Inline backticks can be hard to scan for long hashes. A fenced block improves readability:0x8502233096d909befbda0999bb8ea2f3a6be3c138b9fbf003752a4c8bce86f6c
40-41: Addalttext to the first DocImage
For accessibility, include a descriptivealtprop on<DocImage>:-<DocImage src={Soulbound} /> +<DocImage src={Soulbound} alt="Explorer interface showing revokeRole function" />
45-46: Addalttext to the second DocImage
Similarly, add analtprop here:-<DocImage src={Permissions} /> +<DocImage src={Permissions} alt="Permissions tab after revoking TRANSFER_ROLE" />apps/portal/src/app/knowledge-base/how-to/deploy-mint-template/page.mdx (3)
2-8: Improve import variable naming consistency.
The image import variables use mixed conventions (deployGithub,newProject,newProjectName,newVercel,createVercel,variablesVercel,deployVercel). Adopting a consistent pattern (e.g.,actionSubjectlikeimport addNewVercelorimport deployGitHubBtn) will enhance readability.Example:
- import newVercel from "../../assets/add-new-vercel.png"; + import addNewVercel from "../../assets/add-new-vercel.png";
28-29: Add alt attributes for accessibility on DocImage components.
To comply with accessibility best practices, include descriptivealttext for each image.- <DocImage src={deployGithub} /> + <DocImage src={deployGithub} alt="Deploy with Vercel button on GitHub" /> - <DocImage src={newProject} /> + <DocImage src={newProject} alt="Selecting your Git provider project" /> - <DocImage src={newProjectName} /> + <DocImage src={newProjectName} alt="Naming your GitHub repository" /> - <DocImage src={newVercel} /> + <DocImage src={newVercel} alt="Adding a new project in Vercel" /> - <DocImage src={createVercel} /> + <DocImage src={createVercel} alt="Creating a project in Vercel dashboard" /> - <DocImage src={variablesVercel} /> + <DocImage src={variablesVercel} alt="Configuring environment variables in Vercel" /> - <DocImage src={deployVercel} /> + <DocImage src={deployVercel} alt="Vercel deployment in progress" />Also applies to: 38-39, 51-52, 65-65, 73-73
58-58: Use consistent image component for external screenshot.
Raw markdown () is used here. For uniform rendering and styling, convert this to the<DocImage>component and add alt text.-  + <DocImage src="https://prod-files-secure.s3.us-west-2.amazonaws.com/f6d1ff84-8c0e-4bcb-8dd6-edab3b3c175b/3ce22022-f27e-46cf-b460-2038d5e61dbe/image.png" alt="Vercel environment variables configuration screenshot" />
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (17)
apps/portal/src/app/knowledge-base/assets/add-new-vercel.pngis excluded by!**/*.pngapps/portal/src/app/knowledge-base/assets/context-filters.pngis excluded by!**/*.pngapps/portal/src/app/knowledge-base/assets/create-project-vercel.pngis excluded by!**/*.pngapps/portal/src/app/knowledge-base/assets/deploy-github.pngis excluded by!**/*.pngapps/portal/src/app/knowledge-base/assets/deploy-vercel.pngis excluded by!**/*.pngapps/portal/src/app/knowledge-base/assets/inspect-console.pngis excluded by!**/*.pngapps/portal/src/app/knowledge-base/assets/keys.pngis excluded by!**/*.pngapps/portal/src/app/knowledge-base/assets/new-project-github.pngis excluded by!**/*.pngapps/portal/src/app/knowledge-base/assets/new-project-name-github.pngis excluded by!**/*.pngapps/portal/src/app/knowledge-base/assets/new-project.pngis excluded by!**/*.pngapps/portal/src/app/knowledge-base/assets/permissions-soulbound.pngis excluded by!**/*.pngapps/portal/src/app/knowledge-base/assets/screenshot-console.pngis excluded by!**/*.pngapps/portal/src/app/knowledge-base/assets/set-approval-forall.pngis excluded by!**/*.pngapps/portal/src/app/knowledge-base/assets/soulbound-explorer.pngis excluded by!**/*.pngapps/portal/src/app/knowledge-base/assets/streamed-response.pngis excluded by!**/*.pngapps/portal/src/app/knowledge-base/assets/tab-console.pngis excluded by!**/*.pngapps/portal/src/app/knowledge-base/assets/variables-vercel.pngis excluded by!**/*.png
📒 Files selected for processing (15)
apps/portal/src/app/Header.tsx(2 hunks)apps/portal/src/app/knowledge-base/get-started/page.mdx(1 hunks)apps/portal/src/app/knowledge-base/how-to/console-error-sharing/page.mdx(1 hunks)apps/portal/src/app/knowledge-base/how-to/creating-soulbound-nfts/page.mdx(1 hunks)apps/portal/src/app/knowledge-base/how-to/deploy-mint-template/page.mdx(1 hunks)apps/portal/src/app/knowledge-base/layout.tsx(1 hunks)apps/portal/src/app/knowledge-base/onchain-common-errors/thirdweb-cli/device-link-error/page.mdx(1 hunks)apps/portal/src/app/knowledge-base/page.mdx(1 hunks)apps/portal/src/app/knowledge-base/sidebar.tsx(1 hunks)apps/portal/src/app/knowledge-base/troubleshoot/contracts/airdrop-contract/page.mdx(1 hunks)apps/portal/src/app/knowledge-base/troubleshoot/contracts/batch-upload/page.mdx(1 hunks)apps/portal/src/app/knowledge-base/troubleshoot/contracts/embed-feature-not-found/page.mdx(1 hunks)apps/portal/src/app/knowledge-base/troubleshoot/page.mdx(1 hunks)apps/portal/src/app/page.tsx(0 hunks)apps/portal/src/icons/products/ContractsIcon.tsx(0 hunks)
💤 Files with no reviewable changes (2)
- apps/portal/src/icons/products/ContractsIcon.tsx
- apps/portal/src/app/page.tsx
✅ Files skipped from review due to trivial changes (1)
- apps/portal/src/app/knowledge-base/troubleshoot/contracts/embed-feature-not-found/page.mdx
🚧 Files skipped from review as they are similar to previous changes (7)
- apps/portal/src/app/Header.tsx
- apps/portal/src/app/knowledge-base/onchain-common-errors/thirdweb-cli/device-link-error/page.mdx
- apps/portal/src/app/knowledge-base/troubleshoot/page.mdx
- apps/portal/src/app/knowledge-base/sidebar.tsx
- apps/portal/src/app/knowledge-base/layout.tsx
- apps/portal/src/app/knowledge-base/troubleshoot/contracts/airdrop-contract/page.mdx
- apps/portal/src/app/knowledge-base/how-to/console-error-sharing/page.mdx
🧰 Additional context used
🪛 LanguageTool
apps/portal/src/app/knowledge-base/get-started/page.mdx
[style] ~63-~63: Consider using a different verb to strengthen your wording.
Context: ...web.com/support), and we’ll be happy to help you!
(HELP_ASSIST)
apps/portal/src/app/knowledge-base/how-to/creating-soulbound-nfts/page.mdx
[grammar] ~26-~26: This is normally spelled as one word.
Context: ...plorer** tab. 4. Choose revokeRole under write The revokeRole function requir...
(UNDER_COMPOUNDS)
apps/portal/src/app/knowledge-base/how-to/deploy-mint-template/page.mdx
[uncategorized] ~59-~59: Loose punctuation mark.
Context: ...) - NEXT_PUBLIC_THIRDWEB_CLIENT_ID: Your thirdweb Client ID - `THIRDWEB...
(UNLIKELY_OPENING_PUNCTUATION)
apps/portal/src/app/knowledge-base/page.mdx
[style] ~63-~63: Consider using a different verb to strengthen your wording.
Context: ...web.com/support), and we’ll be happy to help you!
(HELP_ASSIST)
apps/portal/src/app/knowledge-base/troubleshoot/contracts/batch-upload/page.mdx
[misspelling] ~13-~13: This word is normally spelled as one.
Context: ...quests—turn them off temporarily. - Anti-virus software can also interfere—pause it ...
(EN_COMPOUNDS_ANTI_VIRUS)
⏰ Context from checks skipped due to timeout of 90000ms (8)
- GitHub Check: E2E Tests (pnpm, esbuild)
- GitHub Check: Unit Tests
- GitHub Check: E2E Tests (pnpm, webpack)
- GitHub Check: Size
- GitHub Check: E2E Tests (pnpm, vite)
- GitHub Check: Build Packages
- GitHub Check: Lint Packages
- GitHub Check: Analyze (javascript)
🔇 Additional comments (8)
apps/portal/src/app/knowledge-base/page.mdx (6)
1-4: Imports look good.
The necessary icons and UI components are correctly imported for use in this MDX page.
5-10: Metadata is well-defined.
Thetitleanddescriptionaccurately summarize the purpose of the Knowledge Base page and will support SEO objectives.
12-15: Introduction section is clear and concise.
The heading and lead-in text effectively welcome users and set expectations for the support content.
18-29: Resources section is comprehensive.
All key thirdweb resources are listed with descriptive link text, making it easy for users to find documentation, changelogs, status updates, and more.
32-40: "How to Request Support" steps are actionable.
The instructions clearly guide users on ticket submission and encourage minimal repros or PR contributions for faster resolution.
43-58: Response time expectations are well-segmented by plan.
Defining separate SLAs for Starter, Growth & Accelerate, and Scale & Pro customers sets clear expectations and highlights premium support channels.apps/portal/src/app/knowledge-base/get-started/page.mdx (1)
5-7: Align page heading with metadata
The metadata title is “thirdweb Knowledge Base” but the H1 reads “Welcome to thirdweb Support!”. These could confuse users or impact SEO consistency. Please verify whether the H1 should match the metadata or be adjusted (e.g., “Get Started with thirdweb Knowledge Base”).Also applies to: 12-12
apps/portal/src/app/knowledge-base/how-to/creating-soulbound-nfts/page.mdx (1)
1-4: Add metadata export for SEO and verify imported asset paths
This MDX file currently lacks anexport const metadatablock (e.g., title, description) that other KB pages include for SEO and clarity. Please add metadata at the top.
Also confirm that../../assets/soulbound-explorer.pngand../../assets/permissions-soulbound.pngexist and resolve correctly from this file’s location.
|
|
||
| ### 3. Create Thirdweb Project | ||
|
|
||
| - Go to the [thirdweb dashboard](https://thirdweb.com/team/~/~/) and create a new project |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Verification agent
🧩 Analysis chain
Verify and update the thirdweb dashboard link.
The URL uses placeholder segments (~/~/), which likely resolves to a broken link. Please confirm the correct dashboard path (e.g., https://thirdweb.com/dashboard or your actual team/project URL) and update the markdown accordingly.
🏁 Script executed:
#!/bin/bash
# Check HTTP status for the placeholder dashboard link
curl -o /dev/null -s -w "HTTP STATUS: %{http_code}\n" https://thirdweb.com/team/~/~/Length of output: 103
🏁 Script executed:
#!/bin/bash
# Follow redirects to determine the final dashboard URL
curl -s -o /dev/null -w "Final URL: %{url_effective}\n" -L https://thirdweb.com/team/~/~/Length of output: 150
Update the thirdweb dashboard link
The current placeholder URL (https://thirdweb.com/team/~/~/) redirects to a broken login path. Please replace it with the correct dashboard URL or your actual team/project URL. For example:
- Go to the [thirdweb dashboard](https://thirdweb.com/dashboard) and create a new project 🤖 Prompt for AI Agents
In apps/portal/src/app/knowledge-base/how-to/deploy-mint-template/page.mdx at
line 44, the thirdweb dashboard link uses placeholder segments (`~/~/`) which
lead to a broken or incorrect URL. Replace the current URL with the correct
dashboard link, such as `https://thirdweb.com/dashboard`, to ensure the link
directs users to the proper thirdweb dashboard page.
PR-Codex overview
This PR focuses on enhancing the
thirdweb Knowledge Baseby adding new troubleshooting guides, updating existing content, and modifying the layout for better user experience. It also removes unused assets and links.Detailed summary
Nebula Troubleshoot Guide.apisLinksinHeader.tsxto includeNebula.layout.tsx.ContractsIconfrompage.tsx.knowledge-base:sidebar.tsxwith new links for guides and troubleshooting.Summary by CodeRabbit
New Features
Improvements
Removals