nodejs / nodejs/doc-kit

Implement real-time (on-load) updates to API docs live-environment

Aperta
#327 5 commenti 1 reazione 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Web Generator
Lingua principale
JavaScript
Stelle
65
Fork
71
Merge medio
2g 17h
PR unite (30g)
31

Descrizione

Enter your suggestions in details:

One of the "flaws" (intentionally designed as-is) of our API docs is that once a release is done, docs cannot be udpated for said release or iterated over. This is due to the nature of our API docs release process and how its hosting is independent and completely static. There are advantages and disadvantages to this model.

For example, one of the disadvantages is, we cannot apply our global announcement banners over the course of time.

This proposal implements a static (resides on this repository or nodejs/node) api-docs.config.json that contains a map of entries for any given version of the Node.js API docs; Where the key is the current "major" the API doc was built and the value are the possible overrides such as:

  • header banners (same mechanism from the website)

And then also global entries (not specific to version-specific changes):

  • header banners (stays on top of the version-based banners)

And then the API Docs can also pool https://nodejs.org/dist/index.json or even https://nodejs.org/en/next-data/release-data to asynchronously completement the release dropdown with newer versions. So that people can navigate to newer versions of the docs.

All this data is loaded asynchronously and non-blocking.


Example structure of api-docs.config.json:

{
  "global": {
    "banner": {
      "startDate": "2025-05-14T03:00:00.000Z",
      "endDate": "2025-05-21T03:00:00.000Z",
      "text": "May Security Release is available",
      "link": "https://nodejs.org/en/blog/vulnerability/may-2025-security-releases",
      "type": "warning"
    }
  }
  "v24": {
    "banner": {
      "startDate": "2025-05-14T03:00:00.000Z",
      "endDate": "2025-05-21T03:00:00.000Z",
      "text": "May Security Release is available",
      "link": "https://nodejs.org/en/blog/vulnerability/may-2025-security-releases",
      "type": "warning"
    }
  }
}

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Non sono indicati file sorgente o test. Inizia individuando il codice dell'ambiente live della documentazione dell'API, quindi segui il modo in cui vengono renderizzati i banner e il menu a discesa delle release; confronta gli endpoint disponibili per i dati delle release di Node.js. Il lavoro è completo quando il caricamento non bloccante supporta banner globali e specifici per versione e versioni più recenti della documentazione, senza rompere la documentazione statica.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
javascript
Ambito
documentation, web-dev
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Tranquilla
Chiarezza
Abbastanza chiara
Idoneità per principianti
42/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.