+
+
+ setTransferToAddress(e.target.value)}
+ placeholder='To address...'
+ disabled={shouldDisable(transfer)}
+ />
+
+
+ {transferAmount !== undefined && (
+
+ {planckToDecimalFormatted(transferAmount, {
+ api: psp22.contract.api,
+ symbol: 'CLAMS',
+ })}
+
+ )}
+
+
+
+
+
+
+
+ setApproveSpender(e.target.value)}
+ placeholder='Spender address...'
+ disabled={shouldDisable(increaseAllowance)}
+ />
+
+
+ {transferAmount !== undefined && (
+
+ {planckToDecimalFormatted(approveAmount, {
+ api: psp22.contract.api,
+ symbol: 'CLAMS',
+ })}
+
+ )}
+
+
+
+
+
+
+
+ setApproveSpender(e.target.value)}
+ placeholder='Spender address...'
+ disabled={shouldDisable(decreaseAllowance)}
+ />
+
+
+ {transferAmount !== undefined && (
+
+ {planckToDecimalFormatted(approveAmount, {
+ api: psp22.contract.api,
+ symbol: 'CLAMS',
+ })}
+
+ )}
+
+
+
+
+
+
+
+ setTransferFromAddress(e.target.value)}
+ placeholder='From address...'
+ disabled={shouldDisable(transferFrom)}
+ />
+
+ setTransferFromToAddress(e.target.value)}
+ placeholder='To address...'
+ disabled={shouldDisable(transferFrom)}
+ />
+
+
+ {transferAmount !== undefined && (
+
+ {planckToDecimalFormatted(transferFromAmount, {
+ api: psp22.contract.api,
+ symbol: 'CLAMS',
+ })}
+
+ )}
+
+
+
+
+
+ );
+};
diff --git a/src/templates/frontends/psp22/src/components/WriteView/index.ts.hbs b/src/templates/frontends/psp22/src/components/WriteView/index.ts.hbs
new file mode 100644
index 00000000..98738aa5
--- /dev/null
+++ b/src/templates/frontends/psp22/src/components/WriteView/index.ts.hbs
@@ -0,0 +1 @@
+export * from './WriteView';
diff --git a/src/templates/frontends/psp22/src/components/index.ts.hbs b/src/templates/frontends/psp22/src/components/index.ts.hbs
new file mode 100644
index 00000000..2c112e17
--- /dev/null
+++ b/src/templates/frontends/psp22/src/components/index.ts.hbs
@@ -0,0 +1 @@
+export * from './Psp22';
diff --git a/src/templates/frontends/psp22/src/main.tsx.hbs b/src/templates/frontends/psp22/src/main.tsx.hbs
new file mode 100644
index 00000000..df24d5af
--- /dev/null
+++ b/src/templates/frontends/psp22/src/main.tsx.hbs
@@ -0,0 +1,27 @@
+import React from 'react';
+import ReactDOM from 'react-dom/client';
+import 'ui/style.css';
+import { UseInkProvider } from 'useink';
+import { RococoContractsTestnet } from 'useink/chains';
+import { NotificationsProvider } from 'useink/notifications';
+import metadata from '../assets/psp22.json';
+import App from './App.tsx';
+import './Global.css';
+
+ReactDOM.createRoot(document.getElementById('root') as HTMLElement).render(
+