Overview
Parch explores a simple idea: your allocation becomes an asset of its own. A portfolio brings several supported tokenized equities together as one coherent owned position.
This website is a functional front-end preview. It supports optional browser-wallet connection for address and network inspection. It has no asset custody, smart contracts, live pricing or transaction submission.
Concepts
A constituent is an asset in a portfolio. Its allocation is a percentage of the whole. A composition is the complete list of constituents and their weights.
A position is the intended ownable identity of that portfolio. The chrome object is a visual interpretation of the composition, not a token, valuation or certificate of ownership.
Example portfolios
CORE 01, COMPUTE 02, EXPANSION 03, MAG 7, CLOUD, CONSUMER and CHIP are interface examples. Their constituents and methodologies are defined in one data module. None is a live financial product or an investment recommendation.
Use the explorer filters or search by name or constituent. Comparison shows target weights and their overlap. Overlap is the sum of the smaller weight for each shared asset; it is not a prediction of correlation, volatility or returns.
The expandable estimated-composition panel multiplies a hypothetical USD amount by each weight. It does not quote token prices, purchase quantities, fees or a funding asset. Customize weights opens the builder with the selected composition.
Composition
Select at least one asset. Every selected asset must have a weight above zero and no greater than 100%. Weights support two decimal places and must total exactly 100%. Each weight is independent. Under- and over-allocation are displayed explicitly and block preview; other selections are never silently rebalanced.
Auto balance explicitly distributes the allocation to two decimal places, assigning any rounding remainder across the first constituents. Changing the composition updates the visual object. No automated rebalancing or trading occurs.
Supported assets
The preview includes NVIDIA (NVDA), Apple (AAPL), Microsoft (MSFT), Amazon (AMZN), Alphabet (GOOGL), Meta (META), AMD (AMD) and Tesla (TSLA) as illustrative equity identifiers.
These names do not establish support for any issuer, token, network or exchange. There is no connected asset registry. Actual availability, legal eligibility and trading conditions require verification before launch.
Connect a wallet
Open Connect wallet in the workspace, builder or preview panel. Choose a provider detected in your browser, then approve account access in that wallet. Parch reads the shared address and chain ID. It does not request signatures, token approvals or transactions.
Connection uses EIP-6963 discovery with an EIP-1193 browser-wallet fallback. No QR relay service is configured. If no wallet appears, use a compatible extension or wallet browser. Rejected requests display a retry message.
The selected provider identifier is stored locally. On a later visit, eth_accounts checks whether permission still exists without opening a request. Disconnect clears the site session; revoke persistent permissions in your wallet's own settings.
If the operator configures an expected chain, a mismatch shows Wrong network. With no deployment configured, the UI reports the wallet's chain ID without claiming Parch supports transactions on that chain.
Portfolio lifecycle
Select illustrative assets, assign weights, check that the total is exactly 100%, review the composition and choose Preview creation.
A saved preview is kept in this browser. Open the app to reload it, edit its composition, export a JSON copy, or prepare a transfer simulation. Saving another preview replaces the previous saved portfolio.
Application states
Edit: select assets and change weights. Review: inspect a valid allocation. Saved: a local preview has been created and may be exported.
Wallet connection: choose a detected browser provider and approve account access in the wallet. Declined or unavailable connections do not block the preview. Transfer prepared: a simulation has been recorded locally. Storage unavailable: you can continue for this session, but reloading loses the preview.
Invalid or unreadable stored data is rejected and replaced with a fresh example on screen. Browser storage is limited to one saved portfolio and its latest 30 activity entries.
Position and account model
The proposed model separates a wallet, a portfolio identity, an account that would hold assets and underlying exposures. The custody contract, permission model and transfer semantics must be defined and independently reviewed before this becomes a live protocol.
This repository implements only the presentation and local composition layers. Wallet connection does not authenticate a backend session, create an account, or associate a saved preview with an address. Browser storage is shared by users of that browser profile.
Tokenized exposure does not necessarily provide voting rights, dividends, shareholder registration or direct ownership of corporate shares. Those rights depend on the issuer and legal documentation of each instrument.
Ownership
The proposed product model gives a portfolio a coherent identity and a single owner. A future implementation must define the exact relationship between ownership, custody and control of the underlying assets.
A local preview grants no legal or financial rights. Its name and visual form do not establish ownership of equities, tokens or an onchain account. No contract deployment is configured in this repository.
Transfers
The intended model transfers the portfolio position with its composition intact. Specific transaction mechanics, permissions, networks and costs remain undefined.
In the preview, save a valid composition before preparing a transfer. Enter a fictional recipient label. A local activity record is added, but no ownership changes and no assets move. No completed transfer events are fabricated.
Execution and redemption
No transaction submission, token approval, mint, transfer execution or redemption is implemented. There are no pending/success transaction screens because no transaction can occur here.
In-kind redemption is not available. A future implementation would need verified asset custody, withdrawal permissions, issuer restrictions and tested failure handling. No exit mechanism or liquidity guarantee is implied.
Wallet safety
Only share public account access with a wallet you recognize. Extension-supplied provider names are not verified identities. Never enter seed phrases, private keys or wallet passwords into this site.
Connecting does not require a signature or approval. If another window requests a transfer while you are only connecting, inspect it independently. This interface does not initiate such requests.
Market loss, token issuer failures, smart-contract vulnerabilities and network outages would remain risks in a future live product. Wallet access alone does not make a portfolio safe or create enforceable share ownership.
Risk & limitations
The examples are not investment advice and have no live valuations or performance. Equity names do not imply endorsement or affiliation.
A future tokenized-asset product may expose users to market loss, issuer and custody risk, smart-contract failure, network disruption, liquidity constraints and transfer restrictions. Specific protections cannot be assessed until an implementation exists.
Do not enter sensitive information or wallet secrets into this preview. Read the risk disclosures before considering a future live product.
Developer reference
No contracts, addresses, ABIs, RPC endpoints, audit reports or indexers are configured. This repository must not be treated as a deployed protocol SDK. Deployment information is centralized in src/config/protocol.ts.
The web application uses Next.js App Router, React, TypeScript, GSAP/ScrollTrigger and Lenis. Portfolio and asset examples live under src/lib/data; allocation validation is in src/lib/allocation.ts. The read-only wallet controller is in src/lib/wallet/controller.ts.
NEXT_PUBLIC_SITE_URL configures the canonical origin. NEXT_PUBLIC_WALLET_CHAIN_ID optionally sets an expected wallet chain for connection feedback only. It does not enable execution. No RPC key or WalletConnect project ID is required for injected-wallet connection.
NEXT_PUBLIC_LEGAL_OPERATOR and NEXT_PUBLIC_LEGAL_CONTACT must be supplied by the operator before public launch. See the repository deployment guide for the full release checklist.
FAQ
Can I buy a portfolio here? No. The preview does not handle money or assets.
Does saving create a token? No. It saves a JSON representation in your browser only.
Where are my previews stored? In localStorage on the current browser and origin. Clearing browser data removes them. An exported JSON file provides a readable copy, but importing is not implemented.
What happens when a company price moves? No live prices are connected here, so static target weights do not drift. In a live product, market movements would change actual exposure unless a defined rebalancing mechanism acted.
Why connect a wallet? Connection shares a public address and network only; portfolio previews work without it. Copy address copies to your local clipboard. Disconnect ends the site session.
Are the example allocations recommendations? No. They are interface examples with invented weights, not advice or curated investment products.
Is Parch audited? This repository contains no deployed contracts or audit reports. It makes no audit or security certification claims.