Package Exports
- nuxt-tradingview
Readme
Nuxt TradingView
Use the TradingView Widgets in your Nuxt 3 Application
Features
- Nuxt 3 Ready
- Multiple Widgets in Single Page
- No registration or API for TradingView
Documentation
We're preparing the documentation and playground, it will be added soon.
But you should also check the Tradingview Docs for more info and about of the widgets.
Quick Setup
- Add
nuxt-tradingview
dependency to your project
# Using yarn
yarn add nuxt-tradingview
# Using npm
npm install nuxt-tradingview
# Using pnpm
pnpm add nuxt-tradingview
- Add
nuxt-tradingview
to themodules
section ofnuxt.config.ts
export default defineNuxtConfig({
modules: [
'nuxt-tradingview'
]
})
That's it! You can now use TradingView Widgets in your Nuxt app ✨
Widgets Built-in
When you add this module, the following widget components are automatically imported into the project.
- Chart
- CompanyProfile
- CryptoHeatMap
- CryptoMarket
- EconomicCalendar
- ForexCrossRates
- ForexHeatMap
- FundamentalData
- MarketData
- MarketOverview
- MiniChart
- Screener
- SingleTicker
- Snaps
- StockMarket
- SymbolInfo
- SymbolOverview
- TechnicalAnalysis
- Ticker
- TickerTape
Nuxt 3 Example
<template>
<Chart />
<CryptoMarket />
<Snaps/>
<Screener/>
</template>
If you want to use multiple charts in single vue file, you should define unique class for every widget.
<template>
<Chart class="apple-chart"/>
<Chart class="nvidia"/>
</template>
Widget Options
The built-in widget components have default options based on Tradingview. Check available options on Tradingview Docs
<template>
<Chart
:options="{
theme: 'dark',
autosize: true,
symbol: 'NASDAQ:AAPL',
timezone: 'Etc/UTC',
}"
/>
</template>
Or, you can pass variable into it:
<template>
<Chart
:options="options"
/>
</template>
<script lang="ts" setup>
const options = {
theme: 'dark',
autosize: true,
symbol: 'NASDAQ:AAPL',
timezone: 'Etc/UTC',
};
</script>
Module Options
With module options, you can set prefix to every component. You must add tradingview
config to nuxt.config.ts
, here's the example:
export default defineNuxtConfig({
modules: [
'nuxt-tradingview'
],
tradingview: {
prefix: 'TV' // if it's not defined, you can use the components as shown as in the docs.
}
})
Then you can use the components as:
<template>
<TVChart />
<TVCryptoMarket />
<TVSnaps/>
<TVScreener/>
</template>
Development
# Install dependencies
npm install
# Generate type stubs
npm run dev:prepare
# Develop with the playground
npm run dev
# Build the playground
npm run dev:build
# Run ESLint
npm run lint
# Release new version
npm run release