hackforla / hackforla/311-data

DEV - Evaluate JavaScript Documentation Generator

Open
#2,025 1 comment 0 reactions 0 assignees View on GitHub
Complexity: Medium Feature: Documentation Role: Frontend size: 3pt
Dominant language
JavaScript
Stars
73
Forks
74
PR merge metrics
No merged PRs in 30d

Description

### Overview

We need to choose between JSDoc and documentation.js as our standard API documentation tool for the project. The goal is to establish a consistent, maintainable docs pipeline that integrates seamlessly with our build and deployment processes.

### More Info (optional)

Our codebase currently lacks autogenerated API reference documentation.
JSDoc offers a mature ecosystem, deep customization, and strong TypeScript support.
documentation.js provides zero-config setup, built-in Markdown output, and modern defaults.
We should compare both on team familiarity, output quality, extensibility, and CI/CD integration.

### Action Items

- [ ] Research and prototype docs generation for both tools
- Install each (JSDoc + documentation.js)
- Configure basics (config files or CLI flags)
- Generate sample output for a representative module
- [ ] Evaluate generated outputs
- Compare readability, styling consistency, and completeness
- [ ] Assess and document integration effort
- CI/CD pipeline fit
- Static-site or GitHub Pages deployment
- [ ] Decide on the tool and gather team feedback
- [ ] Implement chosen tool
- Create/update `/docs` directory
- Commit config (`jsdoc.json` or `documentation.json`)
- Add `npm run docs` script and update README
- Hook into CI/CD for automatic builds
- [ ] Share final setup
- Record implementation details in this issue thread

### Resources/Instructions

- documentation.js docs: https://documentation.js.org/
- JSDoc docs: https://jsdoc.app/
- Sample JSDoc config guide: https://jsdoc.app/about-config.html
- Sample documentation.js config guide: https://github.com/documentationjs/documentation#configuration

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.