Hey, I'm qudo

Web developer and designer building things on the internet and sharing what I figure out.

Guides

Guides and tutorials I've written.


Obsidian Vault Syncing

Obsidian Vault Syncing

Dec 3, 2025

I sync my vault to GitHub, but the problem with that is everything can only be 100% private or 100% public. I found a slick way around this so I can use one vault for everything.

Upload Files On-Chain

Upload Files On-Chain

Mar 26, 2025

In this guide, we will learn how to upload files on-chain using Solana, Irys, and TypeScript.

Computer Setup

Computer Setup

Mar 18, 2025

Clone the repo and navigate to the directory.

Docker

Docker

Mar 18, 2025

Docker at its core is a tool for organizing virtual machines. In this guide I go over how I use it for developing and hosting all my projects.

Svelte Cloudflare Worker

Svelte Cloudflare Worker

Jun 29, 2023

A super small Svelte app with a companion Cloudflare worker as a backend when you need it. It's kinda like Sveltekit, but more modular and less guided.

Svelte Single File

Svelte Single File

Apr 24, 2023

Compile a Svelte project to a single index.html file.

Intro to Leptos

Intro to Leptos

Mar 22, 2023

I am new to this framework and Rust so DYOR, what do I know. But, I've experimented with a lot of state shapes in web dev using meta frameworks like SvelteKit and lately the closest thing to what I've wanted is tRPC + Tanstack Query + tRPC/Tanstack Adapter.

Signin w/Solana

Signin w/Solana

Dec 3, 2022

Full-stack SvelteKit example project showing "Sign in With Solana" patterns. - Use Solana wallet adapter & connect to wallet. - Request time-sensitive message from the backend. - Sign message using wallet. - Verify signature.

HTML NFT Art on Solana

HTML NFT Art on Solana

Oct 4, 2022

I figured out how to make an interactive HTML NFT game that's playable on @exchgART. Here's what I learned and how you can build one too!

Projects

A collection of projects I've worked on.


Jobs Board

Jobs Board

Oct 2, 2025

Developed jobs board with AI candidate screening and external integrations.

On-Chain User Profiles

On-Chain User Profiles

Oct 2, 2024

A user profiles protocol stored on Arweave, verified on Solana via compressed NFTs.

User Profiles

User Profiles

Oct 2, 2024

Lead development of cross-app authentication and user profiles that supported 150k accounts.

Dedoc

Dedoc

Mar 1, 2024

Decentralized on-chain documentation suitable for any project. Content is stored for eternity on Arweave and verified on Solana using Metaplex cNFTs. Users are their own creators and own 100% of their data.

Devnet Directory

Devnet Directory

Jan 6, 2024

On-chain directory of Solana developers.

The 76 Devs

The 76 Devs

Jul 16, 2023

Created a Discord community where developers can ask questions and share what they're working on during our live show n tells. We have ~3k+ members in Discord and 1.5k+ on Twitter.

Compressed Bananas

Compressed Bananas

Jun 12, 2023

A free cNFT dispenser in celebration of NYC Solana Hacker House and presented on demo day.

OPOS Outliers

OPOS Outliers

Apr 2, 2023

Mint a compressed NFT for free without a wallet using Solana and TipLink. Users are able to design an "OPOS Outlier" and mint it as a cNFT via Gmail-based claiming. The art and attributes were created by Web3 artists and brands.

XRAY Explorer

XRAY Explorer

Jun 3, 2022

Human-readable Solana blockchain explorer built with SvelteKit. Built for Grizzlython hackathon.

Calculate Merkle Tree

Calculate Merkle Tree

Mar 2, 2022

Calculate Merkle Tree For example, run "npx cnfts calculate 8" to view tree configs that work with max proof 8.

Gibwallet CLI

Gibwallet CLI

Mar 2, 2022

Create a TipLink wallet on the fly by running `npx gibwallet`

Matr Bot

Matr Bot

Mar 2, 2022

A Discord bot developed for The 76 Devs community. The bot supports tracking the price of solana, verifying users, and distributing devnet SOL to those who request it by running `!gibsol`.

Sketchy Wallet

Sketchy Wallet

Mar 2, 2022

Generate a Solana wallet and email the credentials to someone. Perfect for those times when you need a one off wallet with keys auto backed up. I used this for making a wallet for my toddler so I can send him NFTs.

Solana Terminal

Solana Terminal

Jan 2, 2022

Solana Terminal, an NFT explorer and utilities. Link your wallet and Discord, listen to music NFTs, render HTML NFTs, view your artwork, query NFTs by creator and more.

State Machine Snacks

State Machine Snacks

Jun 8, 2021

A framework built on XState that provides bite sized snacks for developing with state machine machines. 🍕 aims to increase state machine adoption in modern day web apps by providing a suite of tools and plugins to inspire development and new ways of thinking.

Art

NFT Art experiments.


Gists

Code snippets and snacks.


ts
import { createSession, invalidateSession } from "./session";
import { SESSION_COOKIE, SESSION_EXPIRATION_SECONDS } from

OAuth + Sessions

Mar 2, 2025

OAuth and session management patterns for SvelteKit.

ts
const hash = (text) => {
    let hash = 5381;
    let index = text.length;
    
    while (index) {
      hash = (hash *

33 Times Hash

Feb 2, 2025

This is Daniel J. Bernstein's popular 'times 33' hash function

ts
// Encryption utils
import crypto from 'crypto';

export const hash = (secret: string) => crypto.createHash('sha512').up

Encryptor

Jan 2, 2025

Class for handling encrypting/decrypting strings.

html
<script lang="ts">
    import {
      WalletModal,
      getShowConnectWallet,
      getWallets,
      hideConnectWallet

Irys in SvelteKit

Jan 2, 2025

Upload files on-chain using Irys and Sveltekit.

ts
// 2FA utils
import QRCode from 'qrcode';
import speakeasy from 'speakeasy';

export const generateSecret = async () => 

OTP

Jan 2, 2025

Utility for implementing and verifying OTPs.

html
<script lang="ts">
	import { onMount } from 'svelte';
	import { init } from '$lib/wagmi';

	onMount(init);
</script>

<s

Connect Eth Wallet

Nov 13, 2024

Add "Connect Ethereum Wallet" to a SvelteKit app.

ts
import {
  ALL_DEPTH_SIZE_PAIRS,
  getConcurrentMerkleTreeAccountSize,
} from "@solana/spl-account-compression";
import 

Calc Merkle Tree Size

Jun 7, 2023

Utility for calculating merkle tree size config when setting up a Solana compressed NFT project.

tsx
// Fetchable pattern used for all requests
type Fetchable<T> = {
  isFetched: boolean;
  isLoading: boolean;
  data: nul

React Fetchable

Invalid Date

Typed request handler for React that manages its own state.

ts
// to use this script"
// via the solana cli run "solana-keygen new -o upload.json"
// fund the solana wallet
// fund th

Upload Folder to Irys

Jan 2, 2022

Script for uploading a directory on-chain using Irys.

Get in touch