JSDoc
Angular
JSDoc | Angular | |
---|---|---|
68 | 699 | |
14,767 | 94,599 | |
0.6% | 0.3% | |
9.3 | 10.0 | |
2 days ago | 6 days ago | |
JavaScript | TypeScript | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
JSDoc
-
Figma's Journey to TypeScript
You may like JSDoc[1] if you just want some type-safety from the IDE without the compilation overhead.
It’s done wonders when I’ve had to wrangle poorly commented legacy JavaScript codebases where most of the overhead is tracing what type the input parameters are.
Personally, I’m impartial to TypeScript or JSDoc at this point. But I’d rather have either over plain JavaScript.
[1] https://jsdoc.app/
-
Eloquent JavaScript 4th edition (2024)
I wholeheartedly agree. At most, I introduce JSDoc[1] to newer developers as standardising how parameters and whatnot are commented at least gets you better documentation and _some_ safety without adding any TS knowledge overhead.
[1] https://jsdoc.app/
-
Learn how to document JavaScript/TypeScript code using JSDoc & Typedoc
This is where JSDoc comes to save the day.
-
Add typing to your Javascript code (without Typescript, kinda) ✍🏼
The best way to do this, of course, is with JSDoc. But something I always found awkward about jsdoc is defining the object types in the same file. So, after a lot of reading, I found a way to combine JSDoc with declaration type files from Typescript. Let me give you an example:
-
What is JSDoc and why you may not need typescript for your next project?
There is a lot of specific symbols presented on the JSDOC specification that can be found here: https://jsdoc.app
-
TypeScript Might Not Be Your God: Case Study of Migration from TS to JSDoc
JSDoc is a specification for the comment format in JavaScript. This specification allows developers to describe the structure of their code, data types, function parameters, and much more using special comments. These comments can then be transformed into documentation using appropriate tools.
-
Adding a search feature to my app
Working with new features, frameworks, and tools, the experience of reading documentation is a critical part of it. I have been lucky to work with projects that feature really easy to read documentation such as USWDS and Bun, but I've also had the misfortune to work with pretty terrible documentation like JSDoc. The JSDoc documentation lacks a search field which makes searching for specific items an ordeal and also does not cover many hidden use cases. It provides less than the bare minimum for what it needs to do - a lot of the time I am forced to rely on external user documentation elsewhere to use JSDoc effectively. That was why I was drawn to the search field in particular in Docusaurus.
-
JavaScript First, Then TypeScript
The Svelte team followed suit but motivated by the maintainer's developer experience as they migrated the project away from TypeScript in favor of plain JSDoc comments for type annotations instead.
-
No comments. Now what?
Even more relevant, tools like Javadoc, JSDoc, Doxygen, etc. read comments in a specific format to generate documentation. These comments do not affect readability. On the contrary, Javadocs are great for explaining how to use these entities. Combined with tools like my dear Doctest, we even get guarantees of accuracy and correctness!
-
The Complete 2023 Guide to Learning TypeScript - From Beginner to Advanced
Document types with JSDoc annotations
Angular
-
Angular Signals, Reactive Context, and Dynamic Dependency Tracking
/** * https://github.com/angular/angular/blob/75a186e321cb417685b2f13e9961906fc0aed36c/packages/core/src/render3/reactivity/untracked.ts#L15 * * packages/core/src/render3/reactivity/untracked.ts * **/ export function untracked(nonReactiveReadsFn: () => T): T { const prevConsumer = setActiveConsumer(null); try { return nonReactiveReadsFn(); } finally { setActiveConsumer(prevConsumer); } }
- Episode 24/15: Wiz behind the curtain, Copilot in VSCode
-
Always unsubscribe. No exceptions. Debate closed.
source: https://github.com/angular/angular/issues/46542
-
Angular Signals: Best Practices
Besides the dangers, mentioned by Angular docs (infinite loops, change detection errors), there is another thing, that might be quite nasty: effects are executed in a reactive context, and any code you call in effect, will be executed in a reactive context. If that code reads some signals, they will be added as dependencies to your effect. Here Alex Rickabaugh explains the details.
-
Understanding control flow syntax in Angular 17
In June 2023, the Angular team raised a new RFC to implement control flow syntaxes within Angular. They gave the following rationale for introducing control flow syntax:
- Episode 24/09: Testing without TestBed, SSR & Hydration
-
Preparing our Code for Zoneless Angular
For scheduling, I use awesome code I found in the Angular source code.
-
⏰ It’s time to talk about Import Map, Micro Frontend, and Nx Monorepo
Just to give you more context, I led the migration of several AngularJS applications to the newer Angular Framework. My client finally decided to make that move following the AngularJS deprecation announcement (stay up to date please 🙏)️.
-
Conventional commit specification
Link — angular/CONTRIBUTING.md
-
Angular Control Flow: the complete guide
Angular v17 was released some months ago with a ton of new features, a brand new logo and the new blog angular.dev.
What are some alternatives?
ESDoc - ESDoc - Good Documentation for JavaScript
Next.js - The React Framework
documentation.js - :book: documentation for modern JavaScript
qwik - Instant-loading web apps, without effort
Docusaurus - Easy to maintain open source documentation websites.
SvelteKit - web development, streamlined
apiDoc - RESTful web API Documentation Generator.
Alpine.js - A rugged, minimal framework for composing JavaScript behavior in your markup.
YUIDoc - YUI Javascript Documentation Tool
solid - A declarative, efficient, and flexible JavaScript library for building user interfaces.
storybook - Storybook is a frontend workshop for building UI components and pages in isolation. Made for UI development, testing, and documentation.
lit - Lit is a simple library for building fast, lightweight web components.