# VISP Technical Foundation

VISP, developed by Vingt.io, is a decentralized DeFi asset management platform that enables users to manage on-chain tokenized indexes and strategies. This permissionless platform utilizes fully collateralized crypto-assets represented as on-chain tokens. These index tokens interact with various protocols, following specific strategies set by managers. Investors can replicate these strategies by minting or purchasing the index tokens.

VISP features a modular architecture with smart contract suites, allowing integration with decentralized exchanges, automated market makers, and asset protocols. The platform will evolve to support advanced strategies such as yield farming, perpetual swaps, and margin trading. The modular design includes core contracts, modules, adapters, and ancillary contracts, with product-specific contracts like SetToken, BaseManagerV2, and FeeSplitExtension relying on general-purpose resources such as DebtIssuanceModuleV2, StreamingFeeModule, and IntegrationRegistry.

## Core Contracts:

**SetToken**: The standard token that represents a user's position in the structured product, enabling privileged modules to modify positions and invoke functions.\
**SetTokenCreator**: A factory contract to deploy new SetTokens and register them within the system.\
**Controller**: Manages system contracts, sets, modules, and resources (e.g., price oracles), and handles protocol fee configurations.\
**IntegrationRegistry**: Stores state related to modules and their integrations, allowing governance updates.

## Modules:

**BasicIssuanceModule**: Enables issuance and redemption of SetTokens for default-only positions.\
**TradeModule**: Allows SetTokens to perform atomic trades via DEXs like Pancakeswap.\
**StreamingFeeModule**: Accrues and rewards streaming fees for managers as Set inflation.\
**DebtIssuanceModuleV2**: Manages the creation and redemption of debt positions, allowing managers to issue collateralized debt to investors.

## Flash Mint & Leverage Flash Mint:

**Flash Mint** allows the minting and burning of index tokens, along with purchasing underlying assets, all in one transaction, improving capital efficiency and cutting transaction costs. **Leverage Flash Mint** builds on this by issuing leveraged tokens in a single transaction, applying leverage to underlying assets for greater exposure and potential returns.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://vingt-io.gitbook.io/vingt.io/technical-guide/visp-technical-foundation.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
