@hubol/smooch 1.0.0-beta.2 → 1.0.0-beta.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +56 -0
- package/index.js +44808 -86821
- package/package.json +7 -3
- package/schema.json +20 -4
- package/template-api.d.ts +185 -48
- package/templates/audio-convert.js +13 -13
- package/templates/json-aggregate.js +11 -11
- package/templates/texture-pack.js +15 -15
package/README.md
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
Opinionated asset transformer and aggregator.
|
|
2
|
+
|
|
3
|
+
----------------
|
|
4
|
+
|
|
5
|
+
When creating computer games, certain assets need to be destructively transformed in order for the game engine to consume them. For example; textures must be packed into texture atlases, and sound files need to be converted to formats digestible by modern browsers. **smooch** supports transforming directories of assets based on configuration.
|
|
6
|
+
|
|
7
|
+
In addition, it is much more pleasurable to work in environments with a type system. To this end, **smooch** supports generating code files from asset files using configurable template programs.
|
|
8
|
+
|
|
9
|
+
## Usage
|
|
10
|
+
|
|
11
|
+
<!-- smooch commands -->
|
|
12
|
+
`smooch`
|
|
13
|
+
|
|
14
|
+
Start in watch mode. Aggregates and transforms assets as file changes are detected.
|
|
15
|
+
Probably should be used while developing!
|
|
16
|
+
|
|
17
|
+
`smooch init`
|
|
18
|
+
|
|
19
|
+
Initialize a **smooch.json** configuration file.
|
|
20
|
+
|
|
21
|
+
`smooch copy-program <program> <dst>`
|
|
22
|
+
|
|
23
|
+
Copy a default template JavaScript program **program** to **dst**. Available programs are
|
|
24
|
+
- texture-pack
|
|
25
|
+
- json-aggregate
|
|
26
|
+
- audio-convert
|
|
27
|
+
|
|
28
|
+
`smooch build`
|
|
29
|
+
|
|
30
|
+
Aggregate and transform assets according to your **smooch.json**. Probably should be used on a CI server!
|
|
31
|
+
|
|
32
|
+
`smooch init-native-deps`
|
|
33
|
+
|
|
34
|
+
Produce a **smooch-native-deps.json** configuration file.
|
|
35
|
+
This is for a bizarre subsystem that sidesteps your **package-lock.json**.
|
|
36
|
+
You probably won't need to touch this!
|
|
37
|
+
|
|
38
|
+
`smooch help`
|
|
39
|
+
|
|
40
|
+
List these commands!
|
|
41
|
+
<!-- smooch commands end -->
|
|
42
|
+
|
|
43
|
+
## Design goals
|
|
44
|
+
|
|
45
|
+
- Not slow
|
|
46
|
+
- Simple installation
|
|
47
|
+
- Zero dependencies
|
|
48
|
+
- Informative console output
|
|
49
|
+
- Watches directories
|
|
50
|
+
- Recovers gracefully from IO errors
|
|
51
|
+
- Supports configurable templates
|
|
52
|
+
- Keeps a cache for faster start-up
|
|
53
|
+
- Build tool agnostic
|
|
54
|
+
- Config file with schema
|
|
55
|
+
|
|
56
|
+
<!-- To publish, use e.g. `npm version 1.0.0-beta.11` -->
|