A boilerplate template for creating Atomic packages.
This repository provides a minimal starting point for creating your own Atomic packages. Atomic packages are self-contained, versioned software packages that can be deployed and managed independently.
manifest.json- Package configuration fileLICENSE- Apache 2.0 license- Basic directory structure
The manifest.json file defines your package's metadata and configuration:
{
"name": "your-package-name",
"version": "0.0.1",
"node_modules": "$PKG_PATH/node_modules",
"override_env": {
"YOUR_ENV_VAR": "value"
},
"ld_library_path": ["$PKG_PATH/lib"]
}- name: The unique identifier for your package
- version: Semantic version number (e.g., 1.0.0)
- node_modules: Path to Node.js dependencies (uses
$PKG_PATHvariable) - override_env: Environment variables to set when the package is loaded
- ld_library_path: Array of paths for shared library loading
-
Clone this repository:
git clone <repository-url> cd atomic-package-boilerplate
-
Customize the
manifest.json:- Update the
namefield with your package name - Adjust the
versionas needed - Add any environment variables your package requires
- Configure library paths if needed
- Update the
-
Add your package content:
- Create a
lib/directory for shared libraries - Create a
node_modules/directory for Node.js dependencies - Add your application code and assets
- Create a
-
Build and package your atomic package according to your deployment requirements
atomic-package-boilerplate/
├── manifest.json # Package configuration
├── LICENSE # Apache 2.0 license
├── README.md # This file
├── lib/ # (Optional) Shared libraries
└── node_modules/ # (Optional) Node.js dependencies
The $PKG_PATH variable is automatically set to the package installation directory and can be used in your manifest configuration to reference package-relative paths.
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
Contributions are welcome. Please feel free to submit issues or pull requests.