Skip to content

Commit 6fe00be

Browse files
committed
feat: esp idf template
1 parent 8e011f1 commit 6fe00be

File tree

6 files changed

+22
-7
lines changed

6 files changed

+22
-7
lines changed

CHANGELOG.md

+6
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# Change log
22

3+
## 1.9
4+
5+
### 1.9.0
6+
7+
- Feat: allow code generator for esp-idf
8+
39
## 1.8
410

511
### 1.8.1

README.md

+3-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@ I often make small to medium-sized microcontroller solutions that run on ESP32 o
1010

1111
In order to be able to easily update OTA, it is important - from the users' point of view - that the update file **consists of one file**. I can't use the SPIFFS/LittleFS solution for this. It is necessary that the WebUI files are included inline in the Arduino or PlatformIO c++ code.
1212

13-
This npm package provides a solution for **inserting any JS client application into the ESP web server** (PsychicHttp and also ESPAsyncWebServer (https://github.com/ESP32Async/ESPAsyncWebServer) available, PsychicHttp is the default). For this, JS, html, css, font, assets, etc. files must be converted to binary byte array. Npm mode is easy to use and easy to **integrate into your CI/CD pipeline**.
13+
This npm package provides a solution for **inserting any JS client application into the ESP web server** (PsychicHttp and also ESPAsyncWebServer (https://github.com/ESP32Async/ESPAsyncWebServer) and ESP-IDF available, PsychicHttp is the default). For this, JS, html, css, font, assets, etc. files must be converted to binary byte array. Npm mode is easy to use and easy to **integrate into your CI/CD pipeline**.
14+
15+
> Starting with version v1.9.0, code generator for esp-idf is available
1416
1517
> Starting with version v1.8.0, use the new and maintained ESPAsyncWebserver available at https://github.com/ESP32Async/ESPAsyncWebServer
1618

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
"dev:async": "nodemon src/index.ts -- -e async -s ./demo/svelte/dist -o ./demo/esp32/include/svelteesp32.h --etag=true --gzip=true --cachetime=86400 --version=v$npm_package_version",
3232
"dev:psychic": "nodemon src/index.ts -- -e psychic -s ./demo/svelte/dist -o ./demo/esp32/include/svelteesp32.h --etag=false --gzip=false --version=v$npm_package_version",
3333
"dev:psychic2": "nodemon src/index.ts -- -e psychic2 -s ./demo/svelte/dist -o ./demo/esp32/include/svelteesp32.h --etag=false --gzip=false --version=v$npm_package_version",
34-
"test:all": "./package.script && ~/.platformio/penv/bin/pio run -d ./demo/esp32",
34+
"test:all": "./package.script && ~/.platformio/penv/bin/pio run -d ./demo/esp32 && ~/.platformio/penv/bin/pio run -d ./demo/esp32idf",
3535
"clean": "tsc --build --clean",
3636
"build": "tsc --build --clean && tsc --build --force",
3737
"format:check": "prettier --check .",

package.script

+10
Original file line numberDiff line numberDiff line change
@@ -27,3 +27,13 @@ npx tsx src/index.ts -e psychic2 -s ./demo/svelte/dist -o ./demo/esp32/include/e
2727
npx tsx src/index.ts -e psychic2 -s ./demo/svelte/dist -o ./demo/esp32/include/ec/svelteesp32psychic2.h --etag=compiler --gzip=false --cachetime=86400
2828
npx tsx src/index.ts -e psychic2 -s ./demo/svelte/dist -o ./demo/esp32/include/ecg/svelteesp32psychic2.h --etag=compiler --gzip=true --cachetime=86400
2929
npx tsx src/index.ts -e psychic2 -s ./demo/svelte/dist -o ./demo/esp32/include/ecgc/svelteesp32psychic2.h --etag=compiler --gzip=compiler --cachetime=86400
30+
31+
npx tsx src/index.ts -e espidf -s ./demo/svelte/dist -o ./demo/esp32idf/include/_/svelteesp32espidf.h --etag=false --gzip=false --cachetime=86400
32+
npx tsx src/index.ts -e espidf -s ./demo/svelte/dist -o ./demo/esp32idf/include/g/svelteesp32espidf.h --etag=false --gzip=true --cachetime=86400
33+
npx tsx src/index.ts -e espidf -s ./demo/svelte/dist -o ./demo/esp32idf/include/gc/svelteesp32espidf.h --etag=false --gzip=compiler --cachetime=86400
34+
npx tsx src/index.ts -e espidf -s ./demo/svelte/dist -o ./demo/esp32idf/include/e/svelteesp32espidf.h --etag=true --gzip=false --cachetime=86400
35+
npx tsx src/index.ts -e espidf -s ./demo/svelte/dist -o ./demo/esp32idf/include/eg/svelteesp32espidf.h --etag=true --gzip=true --cachetime=86400
36+
npx tsx src/index.ts -e espidf -s ./demo/svelte/dist -o ./demo/esp32idf/include/egc/svelteesp32espidf.h --etag=true --gzip=compiler --cachetime=86400
37+
npx tsx src/index.ts -e espidf -s ./demo/svelte/dist -o ./demo/esp32idf/include/ec/svelteesp32espidf.h --etag=compiler --gzip=false --cachetime=86400
38+
npx tsx src/index.ts -e espidf -s ./demo/svelte/dist -o ./demo/esp32idf/include/ecg/svelteesp32espidf.h --etag=compiler --gzip=true --cachetime=86400
39+
npx tsx src/index.ts -e espidf -s ./demo/svelte/dist -o ./demo/esp32idf/include/ecgc/svelteesp32espidf.h --etag=compiler --gzip=compiler --cachetime=86400

src/cppCode.ts

+2-5
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
import { compile as handlebarsCompile, HelperOptions } from 'handlebars';
22

33
import { cmdLine } from './commandLine';
4-
5-
import { espidfTemplate } from './template_espidf';
4+
import { espidfTemplate } from './cppCodeEspIdf';
65

76
export type CppCodeSource = {
87
filename: string;
@@ -579,7 +578,6 @@ void {{methodName}}(AsyncWebServer * server) {
579578
{{/each}}
580579
}`;
581580

582-
583581
const getTemplate = (engine: string): string => {
584582
switch (engine) {
585583
case 'psychic':
@@ -591,8 +589,7 @@ const getTemplate = (engine: string): string => {
591589
default:
592590
return asyncTemplate;
593591
}
594-
}
595-
592+
};
596593

597594
let switchValue: string;
598595
export const getCppCode = (sources: CppCodeSources, filesByExtension: ExtensionGroups): string =>
File renamed without changes.

0 commit comments

Comments
 (0)