Skip to content

Instantly share code, notes, and snippets.

View TABASCOatw's full-sized avatar
💜
At Particle, we're building Modular Chain Abstraction Infrastructure.

TABASCO TABASCOatw

💜
At Particle, we're building Modular Chain Abstraction Infrastructure.
  • Particle Network
  • Denver, CO
  • 06:21 (UTC -07:00)
  • X @TABASCOweb3
View GitHub Profile
@TABASCOatw
TABASCOatw / solana_repositories.json
Created May 5, 2023 19:10
Indexed Solana Repositories April 2023 (expect 2% false positives)
{
"chainify": "https://github.com/liquality/chainify",
"solana-chat-app": "https://github.com/jsoneaday/solana-chat-app",
"wallet-adapter": "https://github.com/solana-labs/wallet-adapter",
"audius-protocol": "https://github.com/AudiusProject/audius-protocol",
"raydium-ui": "https://github.com/raydium-io/raydium-ui",
"espresso-cash-public": "https://github.com/espresso-cash/espresso-cash-public",
"backpack": "https://github.com/coral-xyz/backpack",
"projects": "https://github.com/solidproof/projects",
"protocol-v1": "https://github.com/drift-labs/protocol-v1",
@TABASCOatw
TABASCOatw / solana_repositories.json
Last active June 24, 2023 21:21
Indexed Solana Repositories June 2023 (expect 2% false positives)
{
"chainify": "https://github.com/liquality/chainify",
"solana-chat-app": "https://github.com/jsoneaday/solana-chat-app",
"wallet-adapter": "https://github.com/solana-labs/wallet-adapter",
"audius-protocol": "https://github.com/AudiusProject/audius-protocol",
"raydium-ui": "https://github.com/raydium-io/raydium-ui",
"espresso-cash-public": "https://github.com/espresso-cash/espresso-cash-public",
"backpack": "https://github.com/coral-xyz/backpack",
"projects": "https://github.com/solidproof/projects",
"protocol-v1": "https://github.com/drift-labs/protocol-v1",
@TABASCOatw
TABASCOatw / App.tsx
Created October 9, 2023 07:48
Example of native wallet-adapter support for Particle social logins
import React, { FC, ReactNode, useMemo } from 'react';
import {
ConnectionProvider,
WalletProvider,
} from '@solana/wallet-adapter-react';
import { WalletModalProvider, WalletMultiButton } from '@solana/wallet-adapter-react-ui';
import { ParticleAdapter } from '@solana/wallet-adapter-wallets';
import '@solana/wallet-adapter-react-ui/styles.css';
import './App.css';
@TABASCOatw
TABASCOatw / App.tsx
Last active October 13, 2023 05:29
Sample application for constructing and sending userops with Particle & Biconomy
import React, { useState, useEffect } from 'react';
import Web3 from 'web3';
import { ParticleNetwork } from '@particle-network/auth';
import { AvalancheTestnet } from "@particle-network/chains";
import { ParticleProvider } from "@particle-network/provider";
import { SmartAccount } from '@particle-network/aa';
import './App.css';
const App = () => {
const [userInfo, setUserInfo] = useState(null);
@TABASCOatw
TABASCOatw / App.tsx
Last active October 13, 2023 05:29
Sending user operations through ethers.js provider wrapper (via. Particle & Biconomy)
import React, { useState, useEffect } from 'react';
import { ParticleNetwork } from '@particle-network/auth';
import { EthereumGoerli } from "@particle-network/chains";
import { ParticleProvider } from "@particle-network/provider";
import { AAWrapProvider, SmartAccount, SendTransactionMode } from '@particle-network/aa';
import { ethers } from 'ethers';
import './App.css';
const App = () => {
const [userInfo, setUserInfo] = useState(null);
@TABASCOatw
TABASCOatw / App.tsx
Created October 10, 2023 22:41
Building a user operation with Particle (+ Biconomy for paymaster) and sending to Pimlico's bundler
import React, { useState, useEffect } from 'react';
import Web3 from 'web3';
import { ParticleNetwork } from '@particle-network/auth';
import { AvalancheTestnet } from "@particle-network/chains";
import { ParticleProvider } from "@particle-network/provider";
import { SmartAccount } from '@particle-network/aa';
import './App.css';
const config = {
projectId: process.env.REACT_APP_PROJECT_ID,
@TABASCOatw
TABASCOatw / App.tsx
Last active October 13, 2023 05:28
AA demo leveraging Particle WaaS for account management and using Pimlico as the bundler + paymaster
import React, { useState, useEffect } from 'react';
import axios from 'axios';
import { ethers } from 'ethers';
import { ParticleNetwork } from '@particle-network/auth';
import { ParticleProvider } from '@particle-network/provider';
import { EthereumGoerli } from '@particle-network/chains';
import { createPublicClient, createClient, http } from 'viem';
import { pimlicoBundlerActions, pimlicoPaymasterActions } from 'permissionless/actions/pimlico';
import { getAccountNonce, getUserOperationHash, bundlerActions } from 'permissionless';
import { goerli } from 'viem/chains';
@TABASCOatw
TABASCOatw / accountkit-example.ts
Created October 13, 2023 05:25
Leveraging Particle WaaS as a signer within Alchemy's Account Kit
import { ParticleNetwork } from '@particle-network/auth';
import { ParticleProvider } from '@particle-network/provider';
import { AlchemyProvider } from "@alchemy/aa-alchemy";
import { LightSmartContractAccount } from "@alchemy/aa-accounts";
import { polygonMumbai } from "viem/chains";
import { createWalletClient, custom } from "viem";
import { WalletClientSigner, SmartAccountSigner } from "@alchemy/aa-core";
const particle = new ParticleNetwork({
projectId: process.env.REACT_APP_PROJECT_ID as string,
@TABASCOatw
TABASCOatw / App.ts
Created October 24, 2023 08:37
Particle Native SmartAccount implementation (v1, pre-SA upgrade)
import { ParticleNetwork } from '@particle-network/auth';
import { ParticleProvider } from '@particle-network/provider';
import { EthereumGoerli } from '@particle-network/chains';
import { AAWrapProvider, SmartAccount, SendTransactionMode } from '@particle-network/aa';
import { ethers } from 'ethers';
const config = {
projectId: process.env.REACT_APP_PROJECT_ID,
clientKey: process.env.REACT_APP_CLIENT_KEY,
appId: process.env.REACT_APP_APP_ID,
@TABASCOatw
TABASCOatw / App.tsx
Created October 25, 2023 04:23
Ethereum Goerli Biconomy smart account implementation with Smart WaaS (modular SA update)
import React, { useState, useEffect } from 'react';
import { ParticleNetwork } from '@particle-network/auth';
import { ParticleProvider } from '@particle-network/provider';
import { EthereumGoerli } from '@particle-network/chains';
import { AAWrapProvider, SmartAccount, SendTransactionMode } from '@particle-network/aa';
import { ethers } from 'ethers';
const config = {
projectId: process.env.REACT_APP_PROJECT_ID,
clientKey: process.env.REACT_APP_CLIENT_KEY,