
Security News
Risky Biz Podcast: Making Reachability Analysis Work in Real-World Codebases
This episode explores the hard problem of reachability analysis, from static analysis limits to handling dynamic languages and massive dependency trees.
@dashpilot/s3-ssg
Advanced tools
Static Site Generator/build script for files stored in an S3 Bucket
Static Site Generator (SSG) for files stored in an S3 Bucket
Git-based static site generators are awesome, but the build step can take (a lot of) time, which isn't ideal if you use it in combination with a CMS where users expect instant previews. This static site generator aims to provide the best of both worlds: the file-based workflow, developer freedom and fast static hosting of the git-based approach, and the instant feedback and reliability of S3 hosting.
npm install @dashpilot/s3-ssg
The example below takes a template from src/template.html
and json data from src/data.json
, renders the template and saves it to index.html
in your bucket. The example uses handlebars for the template engine, and json for the data, but you can use any template engine or data source. You could also use an external data source, whatever you like!
const S3_SSG = require('@dashpilot/s3-ssg');
const ssg = new S3_SSG(s3_key, s3_secret, s3_bucket, s3_prefix, s3_acl, s3_endpoint);
const tpl_path = "src/template.html";
const data_path = "src/data.json";
const save_path = "index.html";
// get the template and the data
ssg.get(tpl_path).then(tpl => {
console.log(tpl);
ssg.get(data_path).then(data => {
data = JSON.parse(data);
console.log(data);
// do something with the data
var template = Handlebars.compile(tpl);
var html = template(data);
// save the new html
ssg.save(save_path, html).then(result => {
console.log(result);
});
});
});
s3_key (required): your S3 API key
s3_secret (required): your S3 API secret
s3_bucket (required): your S3 bucket
s3_prefix (optional): optional file prefix or subfolder (for the latter end with a slash). default "";
s3_acl (optional): ACL (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl). Default: "private", set to "public-read" if you want your data to be public (to use with a client-side app).
s3_endpoint (optional): change the endpoint if you use Digitalocean Spaces, Linode Object Storage, Backblaze B2, etc. Default: false.
Don't forget to press the :star: button to let me know I should continue improving this project.
FAQs
Static Site Generator/build script for files stored in an S3 Bucket
The npm package @dashpilot/s3-ssg receives a total of 10 weekly downloads. As such, @dashpilot/s3-ssg popularity was classified as not popular.
We found that @dashpilot/s3-ssg demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
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.
Security News
This episode explores the hard problem of reachability analysis, from static analysis limits to handling dynamic languages and massive dependency trees.
Security News
/Research
Malicious Nx npm versions stole secrets and wallet info using AI CLI tools; Socket’s AI scanner detected the supply chain attack and flagged the malware.
Security News
CISA’s 2025 draft SBOM guidance adds new fields like hashes, licenses, and tool metadata to make software inventories more actionable.