Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

import-tag

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

import-tag

import-tag

  • 1.0.1
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
1
Maintainers
1
Weekly downloads
 
Created
Source

import-tag

Node script that transforms HTML to allows you to use <import src="./path/to/html"> syntax. This allows you to generate static HTML files from separate, smaller components.

Installation

$ npm i import-tag --save

Usage

Usage inside of Node will look something like this at the very least:

const path = require('path');
const importTag = require('import-tag');

(async () => {
  try {
    let compiledHtml = await importTag( path.join(__dirname, './index.html') );
    console.log(compiledHtml);
  } catch(e) {
    console.log(`Error: ${e}`);
  }
})();

Inside of your HTML file, usage looks like this:

<html>
  <body>        
    <h1>Hello World</h1>
    <import src="./test.html">
  </body>
</html>

The import tag does not have a closing tag, and the src attribute must point to a relative path. Nested imports are supported, so in this example test.html can also contain <import src=""> tags, and so on.

Note:

Each import tag src uses the relative directory of the current HTML file. Always use paths relative to the current file!

Example

Given these files:

<!-- index.html -->
<html>
  <body>        
    <h1>Hello World</h1>
    <import src="./components/content.html">
  </body>
</html>
<!-- content.html -->
<p>Welcome to my great site! It's nothing fancy.</p>
<import src="./picture.html">
<!-- picture.html -->
<img src="./path/to/some/pic.jpg" alt="An interesting image">

Assuming this structure:

.
├── components
│   ├── content.html
│   └── picture.html
└── index.html

The output will be:

<!-- index.html -->
<html>
  <body>        
    <h1>Hello World</h1>
    <!-- content.html -->
    <p>Welcome to my great site! It's nothing fancy.</p>
    <!-- picture.html -->
    <img src="./path/to/some/pic.jpg" alt="An interesting image">
  </body>
</html>

Caveats

File paths inside of any other element are not transformed. This means that any paths you use inside of an imported HTML file will be relative to the parent file. Imported HTML files just become one compiled file output, so please take that in to account when writing your JS and CSS as well.

Keywords

FAQs

Package last updated on 07 Nov 2017

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc