
Security News
The Changelog Podcast: Practical Steps to Stay Safe on npm
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.
@artsy/cohesion
Advanced tools
Requirements: Yarn
yarn install
yarn test
yarn docs
To view docs locally, visit the full filepath of docs/index.html in your browser, i.e, file:///Users/<MY_USER>/<MY_LOCAL_DIRECTORY>/cohesion/doc/index.html
The /Schema directory represents the Artsy's analytics schema, and describes expectations for data consumed by Redshift and Segment.
This schema is maintained by Artsy's data team, engineers should not expect to change these files.
Valid analytics events are described in /Schema/Events/index.ts, and individual event schemas live in the Schema/Events directory, divided by concern.
Typings for all allowed values, such as ContextModule, are exported for use by engineers in consuming projects.
Schema/Events, add the name of the new event. This name defines the corresponding downstream table's name in Redshift, and should use the lowerCamelCase naming convention.// Schema/Events/index.ts
export enum ActionType {
...
myNewEvent = "myNewEvent",
...
}
Schema/Events directory, create a new interface describing the shape of the new event, as it is received in Segment/Redshift.ActionType created in step 1, but use the UpperCamelCase naming convention.action key is required and should match the ActionType created in step 1.ContextModule, add new values to the existing typings in the Schema directory.// Schema/Events/MyNewEvent.ts
export interface MyNewEvent {
action: ActionType.myNewEvent
context_module: ContextModule
optional_property?: string
required_property: number
}
In Schema/Events/index.ts, add the new interface to the valid events main list, Event
Add descriptive comments with examples to explain the use of your new event. Our documentation is generated automatically from in-code comments, find more information on syntax in the typedoc docs.
If you have created any new files, add an export statement to Schema/index.ts like so:
// Schema/index.ts
export * from "./Events/MyNewEvent"
FAQs
Analytics schema
The npm package @artsy/cohesion receives a total of 6,877 weekly downloads. As such, @artsy/cohesion popularity was classified as popular.
We found that @artsy/cohesion demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 6 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.

Security News
Experts push back on new claims about AI-driven ransomware, warning that hype and sponsored research are distorting how the threat is understood.

Security News
Ruby's creator Matz assumes control of RubyGems and Bundler repositories while former maintainers agree to step back and transfer all rights to end the dispute.