platform/templates
Alexey Zinoviev 211f4ed3c5
UBERF-7911: Branding worker (#6858)
Signed-off-by: Alexey Zinoviev <alexey.zinoviev@xored.com>
2024-10-11 22:44:16 +04:00
..
assets Update to svelte 4.2.12 and some template fixes (#4982) 2024-03-15 16:33:12 +07:00
cloud UBERF-7911: Branding worker (#6858) 2024-10-11 22:44:16 +04:00
default Migrate to hcengineering and publish to github packages (#2273) 2022-09-21 14:08:25 +06:00
model Update to svelte 4.2.12 and some template fixes (#4982) 2024-03-15 16:33:12 +07:00
node Update to svelte 4.2.12 and some template fixes (#4982) 2024-03-15 16:33:12 +07:00
package UBERF-7922: Split Server Storage to middlewares (#6464) 2024-09-09 13:40:49 +05:00
platform Bump package versions (#5728) 2024-06-05 12:46:40 +07:00
ui Update update-svelte-check and rush (#5446) 2024-04-24 21:36:17 +07:00
webpack Use direct typescript dependency to prevent 'compile ui' errors (#4691) 2024-02-19 10:14:12 +07:00
apply.js Bump package versions (#5728) 2024-06-05 12:46:40 +07:00
readme.md Update readme.md: Simply removing the extra letter in the word (#4540) 2024-02-06 09:52:26 +07:00

Project templates

Folder contains a project templates and functionality to apply template values to all projects inside rush multi repo.

Any folder with package.json inside templates are template, so it is possible to apply it.

Templates will be matched using peerDependencies entries should be available inside dependencies of project template is matched against.

So ui template with peer dependency to svelte, will be matched to any UI plugin.

If no template is matched for project then default template will be used.

Explicit template selection

If package.json contains "template" field, template from templates with matched name will be selected.

Apply rules

  • If file in template folder is pressent and file in project folder is not, it will be copied.
    • If package.json contain '#replaces' section with filename, file will be overriten in any case.
    • If filename in template starts with ~ then file in project will be removed instead of add.
  • package.json
    • dependencies - will be updated to contain all values from template package.json dependencies with exact same versions.
    • devDependencies - will be updated to contain all values from template package.json dependencies with exact same versions.
    • scripts - will be updated to contain all values from template package.json dependencies with exact same versions.