Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/11joselu/vite-plugin-ejs-engine

Vite plugin for EJS template engine
https://github.com/11joselu/vite-plugin-ejs-engine

Last synced: 14 days ago
JSON representation

Vite plugin for EJS template engine

Awesome Lists containing this project

README

        

# vite-plugin-ejs-engine

[![npm Downloads](https://img.shields.io/npm/dt/vite-plugin-ejs-engine)](https://www.npmjs.com/package/vite-plugin-ejs-engine)

[Vite](https://github.com/vitejs/vite) plugin for [Ejs](https://ejs.co/).

Supports:

- [Templates, Partials, variable declarations...](https://ejs.co/#features)

## Install

**Yarn**

```
yarn add vite-plugin-ejs-engine -D
```

or **npm**

```
npm i vite-plugin-ejs-engine --save-dev
```

## Usage

### Configuration

Use plugin in your Vite config (`vite.config.ts`)

```JavaScript
import ejs from 'vite-plugin-ejs-engine'

export default {
plugins: [
ejs(),
]
}
```

### Example

Input (`src/index.html`):

```html





Document


Hello world


<% var users = [{name: 'Jose'}, {name: 'Pedro'}]; %>



    <% users.forEach(function(user){ %> <%- include('user/show', {user: user}); %> <% }); %>

```

Template (`src/user/show.ejs`):

```html

  • <%= user.name %>

  • ```

    **Output** (`dist/index.html`)

    ```html





    Document


    Hello world



    • Jose

    • Pedro


    ```

    ### Configuration with data to ejs

    Use plugin in your Vite config (`vite.config.ts`) and pass you data as a Record with pais key=value

    ```JavaScript
    import ejs from 'vite-plugin-ejs-engine'

    export default {
    plugins: [
    ejs({
    text: 'Hello',
    __: (translation) => translation
    }),
    ]
    }
    ```