Skip to content

liamlingo/etpost

etpost

etpost is an early-stage open-source toolkit for article and content publishing workflow automation.

The project starts with a small Markdown readiness checker and will grow toward repeatable publishing workflows for maintainers, writers, and small teams.

Why etpost?

Publishing content across platforms usually involves repeated manual checks: frontmatter, titles, body content, metadata, release notes, and platform-specific formatting. etpost aims to make those checks scriptable, reviewable, and easy to run in CI.

Current Features

  • Check whether a Markdown article has YAML frontmatter.
  • Validate that required publishing metadata exists.
  • Detect empty article bodies.
  • Provide a small CLI that can be used locally or in automation.

Install

npm install

From GitHub Packages:

npm install @liamlingo/etpost --registry=https://npm.pkg.github.com

Usage

npm run check -- path/to/article.md

Or after linking the package locally:

npm link
etpost check path/to/article.md

Check more than one file:

etpost check articles/*.md

Print machine-readable output for CI or other automation:

etpost check articles/*.md --json

Example output:

Ready to publish: article.md

Configuration

Create .etpostrc.json in your project root to customize publishing readiness checks:

{
  "requiredFields": ["title", "description"],
  "maxTitleLength": 80,
  "maxDescriptionLength": 160
}

Supported options:

  • requiredFields: frontmatter fields that must be present.
  • maxTitleLength: maximum allowed title length.
  • maxDescriptionLength: maximum allowed description length.

Development

npm test

Roadmap

See ROADMAP.md.

Contributing

Contributions are welcome. Please read CONTRIBUTING.md before opening an issue or pull request.

Security

Please report security issues through the process in SECURITY.md.

License

MIT

About

etpost etpost etpost

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors