stuffbin - Compress and embed static files and assets into Go binaries and access them with a virtual file system in production

  •        44

stuffbin is a utility + package to compress and embed static files and assets into Go binaries for distribution. It supports falling back to the local file system when no embedded assets are available, for instance, in development mode. stuffbin is inspired by zgok but is much cleaner and leaner.

Go 1.16 introduced the //go:embed directive that allows embedding of files into Go binaries without any external utilities. stuffbin offers a few key advantages over native embedding in its current form. It compress all files, Dynamically embed files instead of static //go:embed directives, Custom path aliases and lot more.

https://github.com/knadh/stuffbin

Tags
Implementation
License
Platform

   




Related Projects

spm - Brand new static package manager.

  •    Javascript

Brand new static package manager for browser. SPM is available under the terms of the MIT License.

spack - A flexible package manager that supports multiple versions, configurations, platforms, and compilers

  •    Python

Spack is a multi-platform package manager that builds and installs multiple versions and configurations of software. It works on Linux, macOS, and many supercomputers. Spack is non-destructive: installing a new version of a package does not break existing installations, so many configurations of the same package can coexist. Spack offers a simple "spec" syntax that allows users to specify versions and configuration options. Package files are written in pure Python, and specs allow package authors to write a single script for many different builds of the same package. With Spack, you can build your software all the ways you want to.

QLVideo - This package allows macOS Finder to display thumbnails, static QuickLook previews, cover art and metadata for most types of video files

  •    Objective-C

This package allows macOS Finder to display thumbnails, static previews, cover art and metadata for most types of video files. QuickLook and Spotlight on macOS 10.9 and later understand a limited number of media files - mostly only MPEG audio and video codecs within MPEG container files. This package adds support for wide range of other codecs and "non-native" media file types, including .asf, .avi, .flv, .mkv, .rm, .webm, .wmf etc.

RPM - RPM Package Manager

  •    C

RPM is a powerful and mature command-line driven package management system capable of installing, uninstalling, verifying, querying, and updating Unix software packages. Each software package consists of an archive of files along with information about the package like its version, a description, and the like. There is also a library API, permitting advanced developers to manage such transactions from programming languages such as C, Perl or Python.

ZIPFoundation - Effortless ZIP Handling in Swift

  •    Swift

ZIP Foundation is a library to create, read and modify ZIP archive files. It is written in Swift and based on Apple's libcompression for high performance and energy efficiency. To learn more about the performance characteristics of the framework, you can read this blog post. Swift Package Manager is a dependency manager currently under active development. To learn how to use the Swift Package Manager for your project, please read the official documentation. The ZIP Foundation package uses the V4 Package Description API. To add ZIP Foundation as a dependency, you have to add it to the dependencies of your Package.swift file and refer to that dependency in your target.


gopm - Go Package Manager (gopm) is a package manager and build tool for Go.

  •    Go

Gopm (Go Package Manager) is a Go package manage and build tool for Go.News Try out gopm.io, the online version caching and package download service for Go.

Balls

  •    C

A dynamic package manager with a virtual file system interface. Keep track of files installed from a source tarball and easily remove those files. Simply copying files from /usr/src/{package name} will automaticly create a package.

Snakebasket - Recursive Python Package Installer

  •    Python

snakebasket is a recursive Python package installer that makes multi-package Python development a little easier. It's a layer on top of pip that can resolve and install an entire dependency graph with a single command: sb install. It recursively reads requirements from simple requirements.txt or old-school setup.ph files when sb install is run and decides between conflicting versions and installs the latest one.

Mint - A package manager that installs and runs Swift command line tools

  •    Swift

A package manager that installs and runs Swift command line tool packages. Mint is designed to be used with Swift command line tools that build with the Swift Package Manager. It makes installing, running and distributing these tools much easier.

OPAM - Source-based package manager for OCaml

  •    OCaml

OPAM is a source-based package manager for OCaml. It supports multiple simultaneous compiler installations, flexible package constraints, and a Git-friendly development workflow.

Eclipse Package Drone - Software Artifact Repository

  •    Java

Eclipse Package Drone is a software artifact repository. A system which stores software packages (like JAR files, Debian Packages, …), extracts information, transforms these and provide access via different repository interfaces. Package Drone's initial focus was on providing a repository system for the different repository formats (like P2, Maven, OBR and OSGi R5) with a focus on OSGi. Over the time the system was enhanced to allow pluggable adapters for other content types and repository adapters.

pacapt - An Arch's pacman-like package manager for some Unices

  •    Shell

pacapt - An Arch's pacman-like package manager for some Unices. Instead of remembering various options/tools on different OSs, you only need a common way to manipulate packages. Not all options of the native package manager are ported; the tool only provides a very basic interface to search, install, remove packages, and/or update the system.

brew - :beer::penguin: The Homebrew package manager for Linux

  •    Ruby

Linuxbrew is a fork of Homebrew, the macOS package manager, for Linux. It can be installed in your home directory and does not require root access. The same package manager can be used on both your Linux server and your Mac laptop. Installing a modern version of glibc and gcc in your home directory on an old distribution of Linux takes five minutes.

ni - 💡 Use the right package manager

  •    TypeScript

if the corresponding node manager is not present, this command will install it globally along the way. Before it runs, it will detect your yarn.lock / pnpm-lock.yaml / package-lock.json to know current package manager, and runs the corresponding commands.

runpkg - the online javascript package explorer

  •    Javascript

Runpkg turns a static file into an interactive and informative browsing experience. It lets you navigate any JavaScript package on npm thanks to unpkg.com, a popular and reliable CDN mirror of the npm registry. You can use this tool to learn more about the inner workings of your project's dependencies; find out how modules work, what they depend on, the size of specific imports as well as other useful metadata. You will be redirected to runpkg which will display the relevant package and file. You can navigate around the package using the 'Package' panel which contains a directory listing. The 'File' tab will also display any information uncovered during static analysis.

page-cache - Caches responses as static files on disk for lightning fast page loads.

  •    PHP

This package allows you to easily cache responses as static files on disk for lightning fast page loads. While static site builders such as Jekyll and Jigsaw are extremely popular these days, dynamic PHP sites still offer a lot of value even for a site that is mostly static. A proper PHP site allows you to easily add dynamic functionality wherever needed, and also means that there's no build step involved in pushing updates to the site.

Bash Package Manager

  •    

Bash Package Manager is a package manager like Portage written in bash. All packages are made in a sandbox so not to damage the file system in any way. It also supports dependency resolving if the package has any dependency set in the build file.

Cargo - Rust Language Package Manager

  •    Rust

Cargo is a Rust Language Package Manager.

gpm - Barebones dependency manager for Go.

  •    Shell

Go Package Manager (or gpm, for short) is a tool that helps achieve reproducible builds for Go applications by specifying the revision of each external Go package that the application depends on.Being simple and unobstrusive are some of the most important design choices for gpm: go get already provides a way to fetch dependencies, and relies on versions control systems like Git to do it, gpm adds the additional step of setting each dependency repo to the desired revision, neither Go or your application even know about any of this happening, it just works.

nimble - Package manager for the Nim programming language.

  •    Nim

Nimble is a beta-grade package manager for the Nim programming language.Interested in learning how to create a package? Skip directly to that section here.






We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.