Publish package to npm Registry#70
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request prepares the project for public release on npm by adding publishing automation, improving package metadata, and specifying files to include or exclude from the npm package. The changes ensure that only the necessary files are published, the package has a clear license, and the publishing process is automated and secure.
Release automation:
.github/workflows/publish.yml) to automatically publish the package to npm when a new version tag is pushed. This workflow installs dependencies, runs linting, and securely publishes using a token.Package contents and configuration:
.npmignorefile to exclude development files, test outputs, configuration files, and unnecessary directories from the published npm package, ensuring a clean and minimal distribution.filesfield inpackage.jsonto explicitly include only the main executable, source files, README, and license in the published package.Metadata and licensing:
LICENSE) to clearly state the project's terms of use and distribution.package.jsonmetadata by adding a meaningful description, relevant keywords, author information, license type, and specifying the minimum required Node.js version.Closes #49