Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions components/LazerPriceIdTable.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ const LoadedLazerPriceIdTable = ({
<div>
<input
type="text"
placeholder="Search by symbol, name, description, or pyth lazer id (comma or space separated for multiple)..."
placeholder="Search by symbol, name, description, or pyth pro id (comma or space separated for multiple)..."
value={search}
onChange={updateSearch}
className="w-full p-2 mb-4 border border-gray-300 rounded-md"
Expand All @@ -106,7 +106,7 @@ const LoadedLazerPriceIdTable = ({
<th>Description</th>
<th>Name</th>
<th>Symbol</th>
<th>Pyth Lazer Id</th>
<th>Pyth Pro Id</th>
<th>Exponent</th>
</tr>
</thead>
Expand Down
25 changes: 25 additions & 0 deletions components/icons/ProductIcons.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,11 @@ import {
Clock,
ArrowsOutCardinal,
DiceSixIcon,
ListBullets,
Key,
Play,
BookOpen,
MoneyWavy,
} from "@phosphor-icons/react";

export function BarChartIcon() {
Expand Down Expand Up @@ -46,3 +51,23 @@ export function MultiChainIcon() {
export function DiceIcon() {
return <DiceSixIcon className="w-5 h-5" weight="regular" />;
}

export function ListIcon() {
return <ListBullets className="w-5 h-5" weight="regular" />;
}

export function KeyIcon() {
return <Key className="w-5 h-5" weight="regular" />;
}

export function PlayIcon() {
return <Play className="w-5 h-5" weight="regular" />;
}

export function BookIcon() {
return <BookOpen className="w-5 h-5" weight="regular" />;
}

export function MoneyWavyIcon() {
return <MoneyWavy className="w-5 h-5" weight="regular" />;
}
22 changes: 15 additions & 7 deletions next.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -118,20 +118,28 @@ const permanentRedirectArray = [
"/home/oracle-integrity-staking/reward-examples",
],
["/guides", "/price-feeds"],

// Lazer (top-level) to Pyth Pro Redirects - MUST come before general price-feeds redirects
["/lazer", "/price-feeds/pro"],
["/lazer/:path*", "/price-feeds/pro/:path*"],

// Explicitly map legacy lazer paths under /price-feeds to Pro - MUST come before general price-feeds redirects
["/price-feeds/lazer", "/price-feeds/pro"],
["/price-feeds/lazer/:path*", "/price-feeds/pro/:path*"],
// some other price feed redirects
["/price-feeds/sponsored-feeds", "/price-feeds/push-feeds"],
[
"/price-feeds/use-real-time-data/:path((?!pull-integration(?:/|$)).*)",
"/price-feeds/use-real-time-data/pull-integration/:path",
],

["/benchmarks", "/price-feeds/use-historic-price-data"],
[
"/benchmarks/how-to-create-tradingview-charts",
"/price-feeds/create-tradingview-charts",
],
["/benchmarks/api-instances", "/price-feeds/api-reference/"],
["/benchmarks/rate-limits", "/price-feeds/rate-limits/"],

["/price-feeds/sponsored-feeds", "/price-feeds/push-feeds"],

[
"/price-feeds/use-real-time-data/:path((?!pull-integration(?:/|$)).*)",
"/price-feeds/use-real-time-data/pull-integration/:path",
],
];

/** @type {import('next').NextConfig} */
Expand Down
5 changes: 0 additions & 5 deletions pages/_meta.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,6 @@
"type": "page"
},

"lazer": {
"title": "Lazer",
"type": "page"
},

"express-relay": {
"title": "Express Relay",
"type": "page"
Expand Down
5 changes: 0 additions & 5 deletions pages/home/_meta.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,6 @@
"href": "/price-feeds"
},

"Lazer": {
"title": "Lazer →",
"href": "/lazer"
},

"Express Relay": {
"title": "Express Relay →",
"href": "/express-relay"
Expand Down
15 changes: 0 additions & 15 deletions pages/home/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -33,20 +33,6 @@ Pyth Network is the leading oracle protocol that connects the owners of market d

{" "}

<ProductCard
badge="Lazer"
icon={<LightningIcon />}
title="Lazer"
description="High-performance, low-latency price feeds for institutional applications."
features={[
{ icon: <LightningIcon />, text: "Ultra-low latency" },
{ icon: <ShieldIcon />, text: "Institutional grade" },
{ icon: <BarChartIcon />, text: "High-frequency data" },
]}
ctaText="Learn About Lazer"
href="../lazer"
/>

{" "}

<ProductCard
Expand Down Expand Up @@ -83,7 +69,6 @@ Pyth Network is the leading oracle protocol that connects the owners of market d
Get started with Pyth Network by exploring our comprehensive documentation:

- **[Price Feeds Getting Started](../price-feeds/getting-started)** - Integrate real-time price data
- **[Lazer Documentation](../lazer)** - High-performance price feeds
- **[Express Relay Integration](../express-relay)** - Better orderflow mechanism to eliminate MEV
- **[Entropy Implementation](../entropy)** - Secure randomness generation

Expand Down
5 changes: 0 additions & 5 deletions pages/lazer/how-lazer-works.mdx

This file was deleted.

20 changes: 0 additions & 20 deletions pages/lazer/index.mdx

This file was deleted.

11 changes: 0 additions & 11 deletions pages/lazer/integrate-as-consumer.mdx

This file was deleted.

3 changes: 0 additions & 3 deletions pages/lazer/integrate-as-publisher.mdx

This file was deleted.

5 changes: 0 additions & 5 deletions pages/lazer/price-feed-ids.mdx

This file was deleted.

68 changes: 10 additions & 58 deletions pages/price-feeds/_meta.json
Original file line number Diff line number Diff line change
@@ -1,65 +1,17 @@
{
"documentation-home": {
"price": {
"title": "← Documentation Home",
"href": "/home"
},

"-- Price Feeds": {
"title": "Price Feeds",
"type": "separator"
"index": {
"title": "Introduction"
},
"index": "Introduction",
"getting-started": "Getting Started",

"-- Tutorials": {
"title": "Tutorials",
"type": "separator"
"pro": {
"title": "Pyth Pro →",
"href": "/pro"
},

"create-your-first-pyth-app": "Create Your First Pyth App",

"-- How-to Guides": {
"title": "How-To Guides",
"type": "separator"
},

"use-real-time-data": "Use Real-Time Price Data",
"use-historic-price-data": "Use Historic Price Data",
"fetch-price-updates": "Fetch Price Updates",
"schedule-price-updates": "Schedule Price Updates",
"create-tradingview-charts": "Create TradingView Charts",
"derive-cross-rate": "Derive Cross Rate",
"migrate-an-app-to-pyth": "Migrate an App to Pyth",
"use-pyth-for-morpho": "Use Pyth for Morpho Markets",
"publish-data": "Publish Data",
"troubleshoot": "Troubleshoot Errors",

"-- Reference Material": {
"title": "Reference Material",
"type": "separator"
},

"api-reference": "API Reference",
"price-feeds": "Price Feeds",
"current-fees": "Current Fees",
"push-feeds": "Push Feeds",
"market-hours": "Market Hours",
"best-practices": "Best Practices",
"error-codes": "Error Codes",
"api-instances-and-providers": "API Instances and Providers",
"contract-addresses": "Contract Addresses",
"pythnet-reference": "Pythnet Reference",

"examples": {
"title": "Example Applications ↗",
"href": "https://github.com/pyth-network/pyth-examples/tree/main/price_feeds"
},
"-- Understand Pyth": {
"title": "Understanding Pyth",
"type": "separator"
},

"pull-updates": "What is a Pull Oracle?",
"why-update-prices": "Why Update Prices",
"how-pyth-works": "How Pyth Works"
"core": {
"title": "Pyth Core →",
"href": "/core"
}
}
56 changes: 56 additions & 0 deletions pages/price-feeds/core/_meta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
{
"index": "Introduction",
"getting-started": "Getting Started",

"-- Tutorials": {
"title": "Tutorials",
"type": "separator"
},

"create-your-first-pyth-app": "Create Your First Pyth App",

"-- How-to Guides": {
"title": "How-To Guides",
"type": "separator"
},

"use-real-time-data": "Use Real-Time Price Data",
"use-historic-price-data": "Use Historic Price Data",
"fetch-price-updates": "Fetch Price Updates",
"schedule-price-updates": "Schedule Price Updates",
"create-tradingview-charts": "Create TradingView Charts",
"derive-cross-rate": "Derive Cross Rate",
"migrate-an-app-to-pyth": "Migrate an App to Pyth",
"use-pyth-for-morpho": "Use Pyth for Morpho Markets",
"publish-data": "Publish Data",
"troubleshoot": "Troubleshoot Errors",

"-- Reference Material": {
"title": "Reference Material",
"type": "separator"
},

"api-reference": "API Reference",
"price-feeds": "Price Feeds",
"current-fees": "Current Fees",
"push-feeds": "Push Feeds",
"market-hours": "Market Hours",
"best-practices": "Best Practices",
"error-codes": "Error Codes",
"api-instances-and-providers": "API Instances and Providers",
"contract-addresses": "Contract Addresses",
"pythnet-reference": "Pythnet Reference",

"examples": {
"title": "Example Applications ↗",
"href": "https://github.com/pyth-network/pyth-examples/tree/main/price_feeds"
},
"-- Understand Pyth": {
"title": "Understanding Pyth",
"type": "separator"
},

"pull-updates": "What is a Pull Oracle?",
"why-update-prices": "Why Update Prices",
"how-pyth-works": "How Pyth Works"
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import CopyAddress from "../../../components/CopyAddress";
import CopyAddress from "../../../../components/CopyAddress";

# Price Feed Contract Addresses on Aptos

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import CopyAddress from "../../../components/CopyAddress";
import CopyAddress from "../../../../components/CopyAddress";

# Price Feed Contract Addresses on EVM Networks

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import CopyAddress from "../../../components/CopyAddress";
import CopyAddress from "../../../../components/CopyAddress";

# Price Feed Contract Addresses on Fuel

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import CopyAddress from "../../../components/CopyAddress";
import CopyAddress from "../../../../components/CopyAddress";

# Price Feed Contract Addresses on Movement

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import CopyAddress from "../../../components/CopyAddress";
import CopyAddress from "../../../../components/CopyAddress";

# Program Addresses on Solana and other SVM chains

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import CopyAddress from "../../../components/CopyAddress";
import CopyAddress from "../../../../components/CopyAddress";

# Price Feed Contract Addresses on Starknet

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import CopyAddress from "../../../components/CopyAddress";
import CopyAddress from "../../../../components/CopyAddress";

# Price Feed Contract Addresses on TON

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ rm -r src/* test/* scripts/*
### Install the Pyth SDK

Pyth provides a Solidity SDK that can be used to interact with one-chain Pyth Price Feed contracts.
It exposes multiple [methods](/price-feeds/api-reference/evm) to read and interact with the contracts.
It exposes multiple [methods](/price-feeds/core/api-reference/evm) to read and interact with the contracts.

Use `npm` to add the Pyth SDK:

Expand Down Expand Up @@ -336,7 +336,7 @@ contract MyFirstPythContract {
```

The end of this function calls the `mint` function we defined before.
Before that, however, the function calls [`updatePriceFeeds`](../../api-reference/evm/updatePriceFeeds) on the Pyth contract.
Before that, however, the function calls [`updatePriceFeeds`](https://api-reference.pyth.network/price-feeds/evm/updatePriceFeeds) on the Pyth contract.
This function takes a payload of `bytes[]` that is passed into the function itself.
The Pyth contract requires a fee to perform this update; the code snippet above calculates the needed fee using [`getUpdateFee`](https://api-reference.pyth.network/price-feeds/evm/getUpdateFee).
The caller of this function can pass in a recent Pyth price update as this payload, guaranteeing that the `StalePrice` error won't occur.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ Paste the address from the command above into the faucet to get your ETH.
You can verify that the ETH has arrived in your wallet by running the command `cast balance $ADDRESS -r $RPC_URL -e`

The final step before deploying is to get the arguments for the contract's constructor:
the [Pyth contract address](https://docs.pyth.network/price-feeds/contract-addresses/evm#testnets) for Optimism Sepolia
the [Pyth contract address](https://docs.pyth.network/price-feeds/core/contract-addresses/evm#testnets) for Optimism Sepolia
and the [price feed id](https://docs.pyth.network/price-feeds/price-feeds) for ETH/USD.
We will also export these values as environment variables for convenience:

Expand Down
Loading
Loading