Ngast

screenshot of Ngast
angular

Parser for Angular projects.

Overview

Ngast is an innovative library designed to simplify the process of parsing Angular projects. Built on top of Ivy, it provides a user-friendly API that makes it easier for developers to analyze and understand their codebase. Whether you are looking to enhance your static code analysis or reverse engineer existing applications, ngast is set to help streamline your workflow.

This tool is particularly valuable for teams working on large Angular projects, as it allows for a comprehensive examination of the workspace. While the initial analysis may take some time—especially with larger projects—this library unlocks a wealth of information about decorated classes and routes, empowering developers to manage their applications more effectively.

Features

  • User-Friendly API: ngast offers a straightforward API tailored for ease of use, making it simple to integrate into any Angular project.
  • Built on Ivy: This library leverages the Ivy engine (ngtsc), ensuring it utilizes the latest features and optimizations found in modern Angular applications.
  • Workspace Analysis: Once connected to your tsconfig.json, ngast can find all decorated classes, providing critical insights into your project's structure.
  • Long Analysis Time: While effective, initial analysis may take over 10 seconds for smaller projects and potentially over 2 minutes for larger ones, highlighting the depth of its analysis.
  • Backward Compatibility: Version 0.4.0 supports the ViewEngine, allowing users with earlier Angular versions to benefit from its features.
  • Integration with Other Tools: Compatible with multiple projects like ngrev for reverse engineering, and codelyzer for static analysis, ngast enhances its utility when used in conjunction with other resources.
  • Open Source License: Released under the MIT license, ngast is freely available for use and modification, fostering a community-driven approach to development.
angular
Angular

Angular is a TypeScript-based open-source framework by Google for building dynamic single-page applications and cross-platform mobile apps with MVC architecture and a rich set of features.

rollup
Rollup

RollupJS is a popular and efficient JavaScript module bundler that takes the code from multiple modules and packages them into a single optimized file, minimizing the overall size of the application and improving its performance.

typescript
Typescript

TypeScript is a superset of JavaScript, providing optional static typing, classes, interfaces, and other features that help developers write more maintainable and scalable code. TypeScript's static typing system can catch errors at compile-time, making it easier to build and maintain large applications.