Socket
Socket
Sign inDemoInstall

@coffeekraken/s-frontspec

Package Overview
Dependencies
13
Maintainers
1
Versions
22
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @coffeekraken/s-frontspec

A simple class to handle (read) frontspec.json files. A frontspec.json file is a list of things (css, js, styles, etc...) that your frontend project expose and can be used by a backend like wordpress for example...


Version published
Maintainers
1
Created

Readme

Source

@coffeekraken/s-frontspec

MIT 2.0.0-alpha.20 - Git repository

size downloads license discord

A simple class to handle (read) frontspec.json files. A frontspec.json file is a list of things (css, js, styles, etc...) that your frontend project expose and can be used by a backend like wordpress for example...

Install

npm i @coffeekraken/s-frontspec

SFrontspec

This package expose a simple SFrontspec class that allows you to represent the frontspec.json file at the root of your project.

Features

  • Read the frontspec.json file
  • Apply en env to get the adapted frontspec result
  • Add a default frontspec.json file to your project
  • And more...

What is a frontspec?

A frontspec is a simple file that describe what your frontend has to offer like the assets (js, css, etc...), the typography styles available (h1, h2, h3, etc...), and more.

Note that for now this is a work un progress specification. More information will be available later...

Anatomy of a frontspec.json

Here's an example of frontspec.json:

export default {
  metas: {
    lang: 'en',
    title: 'Coffeekraken',
    description: 'Hello world',
    themeColor: '#FFBB00',
    author: {
      name: 'Olivier Bossel',
      email: 'olivier.bossel@gmail.com',
      url: 'https://olivierbossel.com',
    },
    og: {
      title: 'Coffeekraken',
      description: 'wiufhweiufh wiuehfiuwehf',
      type: 'website',
      url: 'https://olivierbossel.com',
      image: '/cool-image.jpg',
    },
  },
  assets: {
    js: {
      dev: {
        id: 'dev',
        type: 'module',
        defer: true,
        src: '/src/js/index.ts',
        env: 'development',
      },
      module: {
        id: 'module',
        type: 'module',
        defer: true,
        src: '/dist/js/module.es.js',
        env: 'production',
      },
      main: {
        id: 'main',
        nomodule: true,
        defer: true,
        src: '/dist/js/index.iife.js',
        env: 'production',
      },
    },
    css: {
      main: {
        id: 'main',
        defer: true,
        src: '/dist/css/index.css',
      },
    },
    html: {
      manifest: {
        id: 'manifest',
        src: './dist/favicon/favicon.html',
      },
    },
  },
  head: {},
};

Usage

Here's a simple example how to use the SFrontspec class:

import __SFrontspec from '@coffeekraken/s-frontspec';
const frontspec = new __SFrontspec();
const result = await frontspec.read();

Or Using the sugar CLI:

# read the frontspec
sugar frontspec.read
# add default frontspec to your project
sugar frontspec.add

Read parameters

SFrontspecReadParamsInterface
env

Specify the environment for which to read the frontspec for

API

For more information about the API, please check out the API documentation

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Here's all the ways you can contact us listed:

discord email

FAQs

Last updated on 15 Sep 2023

Did you know?

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc