Coder Social home page Coder Social logo

robots-module's Introduction

@nuxtjs/robots

npm version npm downloads Github Actions CI Codecov License

A Nuxt.js module that injects a middleware to generate a robots.txt file

Features

  • Nuxt 3 and Nuxt Bridge support
  • Generate robots.txt for static mode
  • Add middleware for robots.txt

Setup

  1. Add @nuxtjs/robots dependency to your project
yarn add @nuxtjs/robots # or npm install @nuxtjs/robots
  1. Add @nuxtjs/robots to the modules section of nuxt.config.js
export default {
  modules: [
    // Simple usage
    '@nuxtjs/robots',

    // With options
    ['@nuxtjs/robots', { /* module options */ }]
  ]
}

Using top level options

export default {
  modules: [
    '@nuxtjs/robots'
  ],
  robots: {
    /* module options */
  }
}

Options

configPath

  • Type: String
  • Default: robots.config

rules

  • Type: Object|Array
  • Default:
{
  UserAgent: '*',
  Disallow: ''
}

Robots config

If you need to use function in any rule, you need to create a config file through the configPath option

export default [
  { UserAgent: '*' },
  { Disallow: '/' },
  { BlankLine: true },
  { Comment: 'Comment here' },
      
  // Be aware that this will NOT work on target: 'static' mode
  { Sitemap: (req) => `https://${req.headers.host}/sitemap.xml` }
]

output:

User-agent: *
Disallow: /

# Comment here
Sitemap: https://robots.nuxtjs.org/sitemap.xml

The keys and values available:

  • UserAgent = User-agent
  • CrawlDelay = Crawl-delay
  • Disallow = Disallow
  • Allow = Allow
  • Host = Host
  • Sitemap = Sitemap
  • CleanParam = Clean-param
  • Comment = # Comment
  • BlankLine = Add blank line

Note: Don't worry, keys are parsed with case insensitivity and special characters.

Contributing

You can contribute to this module online with CodeSandBox:

Edit @nuxtjs/robots

Or locally:

  1. Clone this repository
  2. Install dependencies using pnpm install
  3. Prepare development server using pnpm dev:prepare
  4. Build module using pnpm build
  5. Launch playground using pnpm dev

License

MIT License

Copyright (c) - Nuxt Community

robots-module's People

Contributors

danielgroen avatar danielroe avatar dargmuesli avatar dependabot[bot] avatar emma-patriclundin avatar gekkedev avatar matt-clegg avatar renovate[bot] avatar ricardogobbosouza avatar rinu avatar weotch avatar williamdasilva avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.