@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 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` -->