Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
bd9f819
chore: add design system, convert connector to @solana/connector
stevesarmiento Nov 16, 2025
5e558e2
chore: move context to connector package
stevesarmiento Nov 17, 2025
0bd0280
fix: a lot of things
stevesarmiento Nov 17, 2025
55241c6
chore: transaction signer migration
stevesarmiento Nov 17, 2025
ad6b481
chore: camel to kebab (#48)
stevesarmiento Nov 17, 2025
9b96e79
chore: formatting, linting, add missing deps
stevesarmiento Nov 17, 2025
6ff8270
chore: fix tests
stevesarmiento Nov 17, 2025
c25b2fb
chore: update connector button styling.
stevesarmiento Nov 17, 2025
8593272
chore: refactor page structures, implementing design system across co…
stevesarmiento Nov 22, 2025
f724054
chore: add step modal and alert dialog
stevesarmiento Nov 22, 2025
afd3d97
chore: card styles and alert styling
stevesarmiento Nov 25, 2025
f2b885a
chore: token empty state create button,
stevesarmiento Nov 25, 2025
ded0196
chore: implementing individual token page
stevesarmiento Nov 25, 2025
a638ee0
chore: add dark mode
stevesarmiento Nov 27, 2025
1a60dab
chore: move from global storage to creator based, add Zustand with pe…
stevesarmiento Nov 27, 2025
1f080e2
chore: cr review, improve modals, explorer links, and cluster handling
stevesarmiento Nov 27, 2025
17fa0c4
chore: fixed cluster URL propagation issue
stevesarmiento Nov 29, 2025
59a0025
chore: fix state management with dialogs and alert system
stevesarmiento Nov 29, 2025
8f448cc
chore: token page tabs styling
stevesarmiento Nov 29, 2025
eb90d83
chore" refactor token extensions UI and update styling
stevesarmiento Nov 29, 2025
0a5d0c0
feat: add token extension functionality (#51)
stevesarmiento Dec 4, 2025
18f76fb
chore: clean up ui nits from feedback (#53)
stevesarmiento Dec 5, 2025
1dee709
chore: remove gill, revert to kit (#54)
stevesarmiento Dec 5, 2025
9d5d43e
fix: unit tests (#55)
stevesarmiento Dec 5, 2025
61fdbaa
fix: integration tests
stevesarmiento Dec 6, 2025
3a93659
chore: formating and linting
stevesarmiento Dec 6, 2025
31fe0b2
fix: tests
stevesarmiento Dec 6, 2025
d682e51
new modal structure, clean up redundant forms
stevesarmiento Dec 7, 2025
9b9342d
chore: update custom flow styling, and clean up step functionality
stevesarmiento Dec 7, 2025
57bac40
chore: apply styling and functionality to remaining template flows
stevesarmiento Dec 7, 2025
35e0d80
chore: cr review
stevesarmiento Dec 7, 2025
b3e7632
chore: formatting and linting
stevesarmiento Dec 7, 2025
235ff48
nit: fix integration tests
stevesarmiento Dec 7, 2025
99cfb90
nit: really fix integration tests this time
stevesarmiento Dec 7, 2025
a5260e6
nit: third times charm?
stevesarmiento Dec 7, 2025
ab31dd2
chore: formatting
stevesarmiento Dec 7, 2025
ce47c3a
Merge branch 'main' into new-design-system
stevesarmiento Dec 10, 2025
b6a4d69
fix: integration tests
stevesarmiento Dec 10, 2025
e1a0f37
Merge branch 'new-design-system' of https://github.com/solana-foundat…
stevesarmiento Dec 10, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ logs
# Temporary files
.tmp/
.temp/
.pnpm-store/

# Solana specific
.anchor/
Expand All @@ -80,4 +81,5 @@ yarn.lock
#cursor
.cursor/

/commerce-kit/
#references
/references/
10 changes: 10 additions & 0 deletions apps/app/.env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Solana RPC URL
# Set this to use a custom Solana RPC endpoint (e.g., Helius, QuickNode, or your own node)
# If not set, defaults to https://api.devnet.solana.com
# This variable is exposed to the client-side and will be available in production builds
# Example values:
# - Devnet: https://api.devnet.solana.com
# - Testnet: https://api.testnet.solana.com
# - Mainnet: https://api.mainnet-beta.solana.com
# - Custom RPC: https://your-rpc-endpoint.com
NEXT_PUBLIC_SOLANA_RPC_URL=
8 changes: 6 additions & 2 deletions apps/app/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ src/
│ └─ sections/hero.tsx # Landing hero
├─ context/
│ ├─ ChainContextProvider.tsx # Cluster selection (devnet/testnet/mainnet)
│ ├─ RpcContextProvider.tsx # gill RPC + subscriptions
│ ├─ RpcContextProvider.tsx # @solana/kit RPC + subscriptions
│ └─ SelectedWalletAccount* # Selected wallet state
├─ lib/
│ ├─ issuance/* # High-level create flows using @mosaic/sdk
Expand All @@ -80,6 +80,10 @@ src/
- RPC/cluster: provided by `ChainContextProvider` and `RpcContextProvider` (Devnet/Testnet/Mainnet)
- SDK: all blockchain operations use `@mosaic/sdk`

### Environment Variables

- `NEXT_PUBLIC_SOLANA_RPC_URL`: Custom Solana RPC endpoint URL. If not set, defaults to `https://api.devnet.solana.com`. This variable is exposed to the client-side and available in production builds. See `.env.example` for more details.

## Development

```bash
Expand All @@ -99,4 +103,4 @@ pnpm start

- Next.js 15, React 18, TailwindCSS
- Wallet adapters (`@solana/wallet-adapter-*`)
- Mosaic SDK (`@mosaic/sdk`) and `gill` (`@solana/kit`)
- Mosaic SDK (`@mosaic/sdk`) and `@solana/kit`
1 change: 1 addition & 0 deletions apps/app/next-env.d.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
/// <reference types="next" />
/// <reference types="next/image-types/global" />
/// <reference path="./.next/types/routes.d.ts" />

// NOTE: This file should not be edited
// see https://nextjs.org/docs/app/api-reference/config/typescript for more information.
56 changes: 36 additions & 20 deletions apps/app/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,52 +4,68 @@
"type": "module",
"private": true,
"scripts": {
"dev": "next dev",
"build": "next build",
"dev": "next dev --turbopack",
"build": "next build --turbopack",
"start": "next start",
"lint": "next lint",
"type-check": "tsc --noEmit"
},
"dependencies": {
"@mosaic/sdk": "workspace:*",
"@radix-ui/react-accordion": "^1.2.12",
"@radix-ui/react-alert-dialog": "^1.1.15",
"@radix-ui/react-avatar": "^1.1.1",
"@radix-ui/react-checkbox": "^1.3.3",
"@radix-ui/react-dialog": "^1.1.2",
"@radix-ui/react-dropdown-menu": "^2.0.6",
"@radix-ui/react-hover-card": "^1.1.15",
"@radix-ui/react-label": "^2.1.0",
"@radix-ui/react-navigation-menu": "^1.2.14",
"@radix-ui/react-popover": "^1.1.15",
"@radix-ui/react-select": "^2.2.6",
"@radix-ui/react-separator": "^1.1.0",
"@radix-ui/react-slider": "^1.3.6",
"@radix-ui/react-slot": "^1.2.3",
"@solana/accounts": "^2.3.0",
"@solana/react": "^2.3.0",
"@solana/signers": "^2.3.0",
"@solana/wallet-adapter-base": "^0.9.27",
"@solana/wallet-adapter-react": "^0.15.39",
"@solana/wallet-adapter-react-ui": "^0.9.39",
"@solana/wallet-adapter-wallets": "^0.19.37",
"@radix-ui/react-switch": "^1.2.6",
"@radix-ui/react-tabs": "^1.1.13",
"@radix-ui/react-tooltip": "^1.2.8",
"@solana/accounts": "^5.0.0",
"@solana/connector": "0.1.4",
"@solana/react": "^5.0.0",
"@solana/kit": "^5.0.0",
"@solana-program/system": "^0.7.0",
"@solana-program/token-2022": "^0.5.0",
"@solana/sysvars": "^3.0.3",
"@tanstack/react-query": "^5.83.0",
"@token-acl/abl-sdk": "^0.1.2",
"@token-acl/abl-sdk": "^0.2.0",
"@wallet-standard/core": "^1.1.1",
"@wallet-standard/react": "^1.0.1",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"gill": "^0.10.2",
"gill-react": "^0.4.4",
"immer": "^10.1.1",
"lucide-react": "^0.294.0",
"next": "15.4.8",
"motion": "^11.11.17",
"next": "15.5.7",
"next-themes": "^0.2.1",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react": "^19.2.1",
"react-dom": "^19.2.1",
"sonner": "^2.0.7",
"symbols-react": "^1.2.7",
"tailwind-merge": "^2.6.0",
"tailwindcss-animate": "^1.0.7"
"tailwindcss-animate": "^1.0.7",
"zustand": "^5.0.8"
},
"devDependencies": {
"@eslint/eslintrc": "^3.2.0",
"@eslint/js": "^9.32.0",
"@tailwindcss/postcss": "^4.1.17",
"@types/node": "^20.10.0",
"@types/react": "^18.2.39",
"@types/react-dom": "^18.2.17",
"@types/react": "^19.0.0",
"@types/react-dom": "^19.0.0",
"@typescript-eslint/eslint-plugin": "^8.34.0",
"@typescript-eslint/parser": "^8.34.0",
"autoprefixer": "^10.4.21",
"eslint": "^9.32.0",
"eslint-config-next": "15.4.8",
"eslint-config-next": "15.5.7",
"eslint-plugin-import": "^2.32.0",
"postcss": "^8.5.6",
"tailwindcss": "^4.1.17",
Expand Down
167 changes: 0 additions & 167 deletions apps/app/src/app/dashboard/components/TokenCard.tsx

This file was deleted.

Loading