Skip to main content

FrontMan - Frontend Library Manager

Tool to help manage frontend dependencies (javascript, css)

Inspired by AspNet Library Manager

Installation

pip install frontman

Usage

  1. Create the manifest file frontman.json
{
  "provider": "jsdelivr",
  "destination": "assets",
  "packages": [
    {
      "name": "jquery",
      "version": "3.5.1",
      "provider": "cdnjs",
      "files": [
        {
          "name": "jquery.min.js",
          "destination": "jquery"
        }
      ]
    },
    {
      "name": "@popperjs/core",
      "version": "2.6.0",
      "path": "dist/umd",
      "destination":"popper",
      "files": [
        {
          "name": "popper.min.js",
          "rename": "popper.js"
        }
      ]
    },
    {
      "name": "bootstrap",
      "version": "4.6.0",
      "path": "dist",
      "destination": "bootstrap",
      "files": [
        "js/bootstrap.min.js",
        "css/bootstrap.min.css"
      ]
    }
  ]
}
  1. Execute FrontMan
frontman install

You should see an output like this:

OK   https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js -> assets/jquery/jquery.min.js
OK   https://cdn.jsdelivr.net/npm/@popperjs/core@2.6.0/dist/umd/popper.min.js -> assets/popper/popper.js
OK   https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/js/bootstrap.min.js -> assets/bootstrap/js/bootstrap.min.js
OK   https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/css/bootstrap.min.css -> assets/bootstrap/css/bootstrap.min.css

Force package download

By default, files that already have been downloaded will be skipped. To force download these files, use the --force (or -f) flag:

frontman install --force

Manifest Format

provider: The server we will download the files from. It can be cdnjs, jsdelivr or unpkg.

destination: Directory where the files will be downloaded.

packages: List of packaged to be downloaded.

Each package item have the following format:

name: Name of the package, according to the chosen provider.

version: Version of the package.

path (Optional): The provider may serve the files in a sub path (eg. "dist"). Setting this option will strip the path from the downloaded file path.

destination (Optional): Directory inside the top level destination where the files from this package will be downloaded.

provider (Optional): Provider to use for this package.

files: List of files to download for this package.

The files can be specified as string containing the path to the file. The path specified here will be present in the final destination (eg. "js/bootstrap.min.js" will be downloaded to "{destination}/js/bootstrap.min.js")

Files can also be specified as objects with the following format:

name: Name of the file to download.

destination: Directory to be appended to the previous destination.

rename: Change the name of the downloaded file.

Release files for frontman 0.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for frontman 0.3.1
File Size Uploaded
frontman-0.3.1.tar.gz 5.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for frontman 0.3.1
File Interpreter ABI Platform
frontman-0.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 12.3 kB

Release files / frontman-0.3.1.tar.gz

Download URL frontman-0.3.1.tar.gz
Size 5.7 kB
Tags Source
SHA-256 checksum
How to use checksums
2e9cb418876d1d22cd09853136970bdb4f34a138615263e14603c7198d7374ba
BLAKE2b-256 checksum
How to use checksums
574fee507a5812a8aec07d3abe148427c643feb695e070815d53ac680d8af6a0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.13 CPython/3.10.5 Windows/10

Release files / frontman-0.3.1-py3-none-any.whl

Download URL frontman-0.3.1-py3-none-any.whl
Size 6.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a28ea3ff3b12f56dc4b0e668388354d034cd01f82c1301007fbc6b293508aa02
BLAKE2b-256 checksum
How to use checksums
7c1eb78acba7c3c591e5b0521798252f68249a6118402b172bbbd5cf1989d537
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.13 CPython/3.10.5 Windows/10

Release history Release notifications | RSS feed

This release

0.3.1 This release

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page