Astro Theme Pure

Back

Advanced Components

Advanced components with advanced docs

Web Content Render#

Quote#

The Quote component is a simple component that displays a random quote.

import { Quote } from 'astro-pure/advanced'

<Quote />
jsx

Renders:

Loading...

Config:

src/site.config.ts
export const integ: IntegrationUserConfig = {
  // Add a random quote to the footer (default on homepage footer)
  quote: {
    // https://github.com/lukePeavey/quotable
    server: 'https://api.quotable.io/quotes/random?maxLength=60', 
    target: `(data) => data[0].content || 'Error'`
  }
}
ts

Quotable is a open-source API that provides random English quotes.

For Chinese quotes, you can use Hitokoto.

src/site.config.ts
export const integ: IntegrationUserConfig = {
  quote: {
    // https://developer.hitokoto.cn/sentence/#%E8%AF%B7%E6%B1%82%E5%9C%B0%E5%9D%80
    server: 'https://v1.hitokoto.cn/?c=i', 
    target: `(data) => data.hitokoto || 'Error'`
  }
}
ts

GitHub Card#

The GithubCard component is a simple component that displays a GitHub user card.

import { GithubCard } from 'astro-pure/advanced'

<GithubCard repo='cworld1/astro-theme-pure' />
jsx

Render:

cworld1 / astro-theme-pure

Waiting for api.github.com...

???
???
???
?????

Preview any link inserted in the content.

import { LinkPreview } from 'astro-pure/advanced'

<LinkPreview href='https://www.cloudflare.com/' />
// `zoomable` option will control mediumzoom tag
// <LinkPreview href='https://www.cloudflare.com/' zoomable={false} />
<LinkPreview href='https://www.cloudflare.com/' hideMedia />
jsx

Render:

Data Transformer#

QRCode#

import { QRCode } from 'astro-pure/advanced'

// <QRCode /> // default to render current page link
<QRCode
  content='https://github.com/cworld1/astro-theme-pure'
  class='inline-flex max-w-44 p-3 bg-muted rounded-lg border' />
jsx

Render:

Medium Zoom#

See Other Integrations#medium-zoom.

Individual Server Integration#

Comment System#

See Comment#Usage.