@svelte-bin/seo
TypeScript icon, indicating that this package has built-in type declarations

0.0.1 • Public • Published

@svelte-bin/seo

Enhance the search engine and social media optimization of your Svelte application effortlessly using SEO. This user-friendly and potent package streamlines the process by incorporating crucial elements such as meta tags, Open Graph, Twitter Card tags, and JSON-LD into your pages. Elevate your website's visibility and search result ranking with Svelte SEO.

Installation

npm install -D @svelte-bin/seo

Usage

Basic Usage

To add basic meta tags like "title" and "description" you can import the package and use it like this:

<script>
	import { SvelteSeo } from '@svelte-bin/seo';
</script>

<SvelteSeo title="Simple page title" description="Simple description about a page" />

Advanced Usage

<script>
	import { SvelteSeo } from '@svelte-bin/seo';
</script>

<SvelteSeo
	title="Primal Movement | Natural Movement for Better Health"
	description="Learn about primal movement exercises and how they can benefit your fitness."
	canonical="https://www.primal-movement.com/"
	keywords="primal movement, natural movement, squatting, lunging, crawling, jumping, fitness"
	openGraph={{
		title: 'Primal Movement | Natural Movement for Better Health',
		description: 'Learn about primal movement exercises and how they can benefit your fitness.',
		image: 'https://www.primal-movement.com/images/squatting.jpg',
		url: 'https://www.primal-movement.com/',
		type: 'website',
		images: [
			{
				url: 'https://www.primal-movement.com/images/squatting.jpg',
				width: 800,
				height: 600,
				alt: 'Squatting'
			},
			{
				url: 'https://www.primal-movement.com/images/lunging.jpg',
				width: 900,
				height: 800,
				alt: 'Crawling'
			},
			{
				url: 'https://www.primal-movement.com/images/crawling.jpg',
				alt: 'Jumping'
			},
			{
				url: 'https://www.primal-movement.com/images/jumping.jpg'
			}
		],
		site_name: 'Primal Movement'
	}}
	twitter={{
		card: 'summary_large_image',
		site: '@primalmovement',
		title: 'Primal Movement | Natural Movement for Better Health',
		description: 'Learn about primal movement exercises and how they can benefit your fitness.',
		image: 'https://www.primal-movement.com/images/squatting.jpg'
	}}
	facebook={{
		appId: '1234567890'
	}}
/>

Properties

Property Type Description
title string A page title that will appear in search results.
description string A page description that will appear in search results.
keywords string Keywords that give search engines more information about the content of the page.
base string A default URL and target for all links on a page.
applicationName string The name of the web application that the page represents.
themeColor string A suggested color that user agents should use to customize the display of the page or the surrounding user interface.
nofollow boolean (default false) Prevents Googlebot from following any links on the page.
noindex boolean (default false) Prevents the page from being included in the index.
nositelinkssearchbox boolean (default false) Opt out of Google's Sitelinks search box.
notranslate boolean Prevents Google from translating the page.
canonical string The canonical URL of the page.
amp string A URL to the AMP version of the webpage.
manifest string The URL to a JSON file that tells the browser about your Progressive Web App and how it should behave when installed on the user's desktop or mobile device.
languageAlternates Array<{ hreflang: string; href: string }> Provides Google with information about the variations of your content in other languages.
twitter.title string The title of the content, maximum 70 characters.
twitter.description string A description of the content, maximum 200 characters.
twitter.image string The URL of an image to use in the Twitter card. Images must be less than 5MB in size.
twitter.imageAlt string A text description of the image conveying its essential nature to visually impaired users. Maximum 420 characters.
twitter.card "summary" , "summary_large_image" , "player" , "app" The type of Twitter card to use.
twitter.site string The @username of the website.
twitter.creator string The @username of the content creator.
twitter.player string The HTTPS URL of the player iframe.
twitter.playerWidth string The width of the iframe in pixels.
twitter.playerHeight string The height of the iframe in pixels.
twitter.playerStream string The URL to the raw video or audio stream.
twitter.appNameIphone string The name of your iPhone app.
twitter.appUrlIphone string The custom URL scheme for your app on iPhone (include ”://” after your scheme name)
twitter.appNameIpad string The name of your iPad-optimized app
twitter.appIdIpad string Your app's ID in the iTunes App Store
twitter.appNameGoogleplay string The name of your Android app
twitter.appIdGoogleplay string Your app's ID in the Google Play Store
twitter.appUrlGoogleplay string The custom URL scheme for your app on Google Play
facebook.appId string A unique number that identifies your app when you request ads from Audience Network, known as a Facebook App ID
openGraph.title string The title of your object as it should appear within the graph
openGraph.type string The type of your object, such as "video.movie". Depending on the type, other properties may also be required.
openGraph.url string The canonical URL of your object that will be used as its permanent ID in the graph
openGraph.audio string An audio file to accompany the content.
openGraph.audioSecure_url string An alternate URL to use if the webpage requires HTTPS
openGraph.audioType string The MIME type for the audio
openGraph.description string A one- or two-sentence description of your object
openGraph.determiner string The word that appears before the title, e.g., "the" or "a".
openGraph.locale string The locale of the content, e.g., "en_US".
openGraph.localeAlternate string[] Alternate locales for the content. https://ogp.me/#array
openGraph.site_name string The name of the website where the content is hosted.
openGraph.images Array Properties about images related to the web page.
openGraph.videos OpenGraphVideo Properties about videos related to the web page.
openGraph.music OpenGraphMusic OpenGraph for music files.
openGraph.movie OpenGraphMovie OpenGraph for a movie.
openGraph.article OpenGraphArticle OpenGraph for an article.
openGraph.book OpenGraphBook OpenGraph for a book.
openGraph.profile OpenGraphProfile OpenGraph for a profile.

Open Graph

Svelte SEO supports the following Open Graph object types: basic, music, movie, article, book, and profile. For the full specification, please check out http://ogp.me/.

Twitter

Svelte SEO supports all Twitter Card Tags. For more information, check out the Twitter documentation at https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/markup.

twitter={{
	card: 'summary_large_image',
	site: '@primalmovement',
	title: 'Primal Movement | Natural Movement for Better Health',
	description: 'Learn about primal movement exercises and how they can benefit your fitness.',
	image: 'https://www.primal-movement.com/images/squatting.jpg',
	imageAlt: 'Squatting'
}}

Facebook

facebook={{
	appId: '1234567890'
}}

JSON-LD

JSON-LD provides a more customizable and detailed representation of content in search results. With Svelte SEO, you can implement all available JSON-LD types. Here is a basic example:

jsonLd={{
	'@context': 'https://schema.org',
	'@type': 'WebSite',
	name: 'Primal Movement | Natural Movement for Better Health',
	description: 'Learn about primal movement exercises and how they can benefit your fitness.',
	url: 'https://www.primal-movement.com'
}}

Package Sidebar

Install

npm i @svelte-bin/seo

Weekly Downloads

0

Version

0.0.1

License

none

Unpacked Size

39.9 kB

Total Files

18

Last publish

Collaborators

  • binsarjr