Skip to content

Commit 8ca0ae4

Browse files
Merge pull request #1 from justcoded/develop
Update license and code
2 parents d598eae + ed6dda2 commit 8ca0ae4

3 files changed

Lines changed: 49 additions & 3 deletions

File tree

Dockerfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ FROM node:24-bookworm-slim
33
# Install chromium and fonts
44
RUN apt-get update && apt-get install -y \
55
chromium \
6+
curl \
67
fonts-freefont-ttf \
78
--no-install-recommends \
89
&& rm -rf /var/lib/apt/lists/*

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
MIT License
22

3-
Copyright (c) 2021 JustCoded
3+
Copyright (c) 2026 JustCoded
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

server.js

Lines changed: 47 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,59 @@ const server = prerender({
99
'--disable-gpu',
1010
'--remote-debugging-port=9222',
1111
'--hide-scrollbars',
12-
'--disable-dev-shm-usage'
12+
'--disable-dev-shm-usage',
13+
'--ignore-certificate-errors',
14+
'--allow-insecure-localhost'
1315
]
1416
});
1517

1618
process.env.CACHE_MAXSIZE = process.env.CACHE_MAXSIZE || 1000;
1719
process.env.CACHE_TTL = process.env.CACHE_TTL || 43200;
1820

21+
server.use({
22+
tabCreated: (req, res, next) => {
23+
const tab = req.prerender.tab;
24+
25+
if (tab) {
26+
tab.Console.enable();
27+
tab.Network.enable();
28+
29+
tab.Console.messageAdded((params) => {
30+
console.log('🟡 Browser log:', params.message.text);
31+
});
32+
33+
tab.Network.loadingFailed((params) => {
34+
console.log('🔴 Network Failed:', params.errorText, params.url);
35+
});
36+
37+
tab.Runtime.enable();
38+
tab.Runtime.exceptionThrown((exception) => {
39+
console.log('💥 JS Exception:', exception.exceptionDetails.text);
40+
});
41+
}
42+
43+
next();
44+
}
45+
});
46+
47+
server.use({
48+
beforeSend: (req, res, next) => {
49+
if (req.prerender.res) {
50+
const body = req.prerender.res.body || '';
51+
req.prerender.res.headers = {
52+
'content-type': 'text/html; charset=utf-8',
53+
'content-length': Buffer.byteLength(body, 'utf8'),
54+
// 'cache-control': 'public, max-age=600'
55+
};
56+
}
57+
next();
58+
}
59+
});
60+
61+
62+
server.use(prerender.removeScriptTags());
63+
1964
server.use(memoryCache);
2065

2166
console.log('Prerender on Node 24 is starting...');
22-
server.start();
67+
server.start();

0 commit comments

Comments
 (0)