https://github.com/netcentric/eddys-collection
https://github.com/netcentric/eddys-collection
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/netcentric/eddys-collection
- Owner: Netcentric
- License: apache-2.0
- Created: 2024-02-19T14:03:16.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-03-21T01:02:34.000Z (about 1 year ago)
- Last Synced: 2025-02-26T11:08:24.479Z (2 months ago)
- Language: JavaScript
- Size: 362 KB
- Stars: 2
- Watchers: 11
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Contributing: docs/CONTRIBUTING.md
- License: LICENSE
- Code of conduct: docs/CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Adobe Experience Manager - Edge Delivery Services - Extension Collection
[](https://npmjs.org/package/@netcentric/eddys-video)
[](https://github.com/netcentric/eddys-video/actions)
[](https://github.com/netcentric/eddys-video/actions)
[](https://github.com/semantic-release/semantic-release)
[](https://opensource.org/licenses/Apache-2.0)This repository provides a set of extensions and documents best practises for projects based on the [AEM Boilderplate](https://github.com/adobe/aem-boilerplate).
The repository structure follows the [monorepo](https://en.wikipedia.org/wiki/Monorepo) approach, meaning it contains multiple sub-modules. All of those sub-modules aim to be usable standalone. Using them in your project should be a "choose and cherry-pick" rather than an all or nothing.
For demo purposes most of the modules are installed on https://github.com/netcentric/genom.
## Installation
As mentioned above each sub-module can be installed standalone but there is also a wrapper module to install all at once. Installation follows always the same approach documented in [TODO](TODO):
In your own AEM project repository directory run
`npm i @netcentric/eddys-`
The dependency will be downloaded and depending on its install script typically create a `/libs` folder containing all the necessary scripts to use it. Some modules have some additional instructions about manuel integration steps. For these please refer to the documentation of the individual modules.
## Modules
- [WebComponents / CustomElements](https://github.com/Netcentric/eddys-collection/tree/main/packages/scripts/eddys-custom-element)
- [SPA Router](https://github.com/Netcentric/eddys-collection/tree/main/packages/scripts/router)
- [Blocks](https://github.com/Netcentric/eddys-collection/tree/main/packages/blocks)
- [Advanced Forms](https://github.com/Netcentric/eddys-collection/tree/main/packages/blocks/eddys-form)## Best Practises & Examples
- [Dependency installation and updates](https://github.com/Netcentric/eddys-collection/tree/main/packages)
- [Extendable Blocks](https://github.com/Netcentric/eddys-collection/tree/main/packages/blocks)
- [SPA integration]([TODO](https://github.com/Netcentric/eddys-collection/tree/main/packages/scripts/router))
- [Closed User Groups and Permissions](https://github.com/Netcentric/envelop) (separate repository)## Contribution
### Workflows
- CI --> npm ci, test and build
- CodeQL --> Perform CodeQL Analysis (Security, etc.)
- Release --> semantic-release:
* Creates release notes
* Updates CHANGELOG
* Updates package.json version
* Creates Git tag/release
* Publish package to NPM
- Manual Release --> same as Release, but can be triggered manually in Actions tab### Release
- based on Angular Commit Message Conventions in commits -
https://github.com/angular/angular/blob/master/CONTRIBUTING.md#commit-message-header
- Commit message format is used to build:
* Release notes
* Changelog updates
* NPM package semver### Commit message Convention
```
():
│ │ │
│ │ └─⫸ Summary in present tense. Not capitalized. No period at the end.
│ │
│ └─⫸ Commit Scope (optional): project|based|list
│
└─⫸ Commit Type: build|ci|docs|feat|fix|perf|refactor|test
```