🚀 I just published my own Angular library to npm! Over the last few days, I’ve been working on something that solves a common pain in Angular projects — repetitive, boilerplate-heavy API service code. Today, I released ngx-auto-api-decorators, a decorator-based API client generator that makes API integration cleaner, faster, and more maintainable. Here’s what it brings: ✨ @ApiClient, @Get, @Post, @Put, @Delete decorators ✨ Automatic HttpClient wiring (no more manual service setup) ✨ Built-in caching with TTL ✨ Offline-safe POST/PUT/DELETE (request queue + auto-retry) ✨ Clean, typed API classes with zero repeated boilerplate ✨ Production-ready, DI-friendly design You can try it with: npm install ngx-auto-api-decorators This project pushed me deeper into Angular internals, decorators, dependency injection, packaging, and open-source publishing. I'm continuously improving it - feedback, suggestions, PRs are welcome! 🙌 #Angular #WebDevelopment #OpenSource #NPM #Typescript #Frontend #Developer #Programming #TechCommunity #opensourceproject #AngularDeveloper #SoftwareEngineering
Published ngx-auto-api-decorators, an Angular library for API integration
More Relevant Posts
-
How Standalone Components Changed Our Angular Workflow? 🧩 Why we moved to standalone components With Angular’s recent updates, the move towards module-less architecture became more than just a feature — it’s a shift in how we build scalable applications. We wanted to reduce boilerplate, improve reusability, and make onboarding easier for new developers. ⚙️ What changed Earlier, every new feature required a dedicated NgModule setup, even for simple UI components. Now, using standalone components, we can: Import dependencies directly into components. Skip unnecessary module declarations. Build smaller, self-contained, and testable units of code. Improve lazy loading and route-based optimisations. This drastically simplified our project structure and component isolation. 🚀 How it improved our workflow Faster development with fewer files to manage. Cleaner dependency graph — no more chasing module imports. Easier code reviews and maintenance. Reusable shared components across projects without module coupling. We also integrated Angular CLI v17+ with ESBuild and Signals, which further enhanced developer experience. 🧠 Advice for teams adopting it Start small — convert one or two feature modules to standalone first. Watch for library compatibility (some older modules may still expect NgModules). Once your team gets comfortable, you’ll notice how much lighter and cleaner your architecture feels. #Angular #Angular17 #WebDevelopment #Frontend #JavaScript #AngularTips #WebDev #Programming #SoftwareEngineering #CleanCode #AngularCommunity
To view or add a comment, sign in
-
-
Angular Fundamentals - My Input/Output Binding Story! While building a dashboard, I struggled with component communication between parent and child components. What i was doing wrong in it? I was using shared services but when it just turned into a tedious task rather than a simple one. I changed my strategy and simply applied Input/Output bindings and violà the issue was resolved! #AngularTip Start with the simplest Angular communication patterns first before moving on to adding complexities with service and state management. #Angular #Typescript #WebDevelopment #Components #Frontend #Codetips #Debugging
To view or add a comment, sign in
-
-
Mastering Angular Signals => All Methods You Should Know (With Examples) If you're working with Angular 16+, Signals are one of the biggest game changers for state management, component reactivity, and performance. Here’s a clean breakdown of every important Angular Signal method with simple examples to help you understand and implement them faster. ~ Core Signal APIs signal() => Create a reactive value computed() => Create derived reactive values effect() => Run side effects when signals change ~ Writable Signal Methods set() => Replace the value update() => Update based on previous value mutate() => Modify arrays/objects in-place peek() => Read without dependency tracking asReadonly() => Expose a readonly version ~ Interoperability toSignal() => Convert Observable => Signal toObservable() => Convert Signal => Observable isSignal() => Check if a value is a signal ~ Angular 17+ Additions model() => Two-way bound signals batch() => Group signal updates with single recompute untracked() => Run code without tracking dependencies #Angular #AngularSignals #Angular16 #Angular17 #AngularDevelopers #Frontend #FrontendDevelopment #WebDevelopment #JavaScript
To view or add a comment, sign in
-
Excited to dive deeper into Angular's lifecycle superpowers! 🌟 Introducing the new destroyed property on DestroyRef DestoryRef is a mechanism introduced earlier in Angular (since v16) that allows reacting to the lifecycle of an instance (e.g., component, service) without needing to implement ngOnDestroy() Why it matters: Prevents unnecessary API calls or DOM updates after component destruction Avoids ExpressionChangedAfterItHasBeenCheckedError Cleaner, more predictable lifecycle management Works seamlessly with takeUntilDestroyed() and manual checks Perfect for search inputs, real-time filters, or any async operation tied to component lifetime. Angular keeps getting smarter! 🚀 #Angular #WebDev #Frontend #TypeScript #JavaScript #ReactiveProgramming
To view or add a comment, sign in
-
-
🚀 Angular 15+ Tip: Reuse Components Without a SharedModule Ever hit this error? ❌ "Type ButtonComponent is part of the declarations of 2 modules..." In Angular <15, we’d create a SharedModule to reuse a component across multiple modules. Extra boilerplate, extra hassle. With Angular 15+, standalone components make life easier. Declare a component as standalone: true and import it directly wherever you need it — no SharedModule required. @Component({ selector: 'app-shared-button', standalone: true, imports: [CommonModule], template: `<button>Click Me</button>` }) export class SharedButtonComponent {} Now use it in any component: imports: [SharedButtonComponent] ✅ Clean, modular, and fully reusable — across modules, without duplication. Pro Tip: Standalone components are the future of Angular development! #Angular #Frontend #WebDevelopment #CodeWithImran #AngularTips
To view or add a comment, sign in
-
🚀 Just wrapped up one of the most detailed Angular Notes I’ve ever created – covering everything from setup, lifecycle hooks, components, directives, services, routing, guards, observables, to reactive forms & custom pipes. What started as quick revision notes turned into a comprehensive Angular guide – perfect for beginners and even a handy refresher for experienced developers. 💻✨ Key highlights you’ll find inside: ✅ Angular setup & CLI basics ✅ Lifecycle methods explained simply ✅ Components, data binding & directives with examples ✅ Dependency injection & services best practices ✅ Routing, guards & resolvers ✅ Observables, RxJS & subjects ✅ Template-driven vs Reactive forms ✅ Pipes & custom pipes 📄 I’m sharing this PDF openly so it can help fellow developers speed up their Angular journey. 💡 Whether you’re preparing for interviews or building scalable apps, this will be a solid quick reference. 👉 Drop a “📥” in the comments if you’d like me to share the file with you! #Angular #WebDevelopment #Frontend #JavaScript #TypeScript #Learning
To view or add a comment, sign in
-
⚙️ Understanding Angular & ngx-bootstrap Version Compatibility While working with Angular, many developers face dependency issues when installing ngx-bootstrap. The most common reason? — Version mismatch between Angular and ngx-bootstrap. Here’s the correct version alignment to avoid those frustrating ERESOLVE errors during installation: Angular 14 → ngx-bootstrap 9.x Angular 15 → ngx-bootstrap 10.x Angular 16 → ngx-bootstrap 11.x Angular 17 → ngx-bootstrap 12.x If you’re using Angular 15 (for example), make sure to install it with: 👉 npm install ngx-bootstrap@10.2.0 --save This small step can save a lot of debugging time and ensure smooth integration with Bootstrap components in Angular projects. #Angular #NgxBootstrap #WebDevelopment #Frontend #CodingTips #DeveloperCommunity
To view or add a comment, sign in
-
-
Quick comparison: Class-based DI vs InjectionToken pattern in Angular 🔧 Made this slide deck showing how both approaches work with a simple LoggerService example. The interface + token approach gives you more flexibility when you need to: Swap implementations without touching components Mock services for testing Use different strategies per environment Not saying one is always better - just sharing both patterns with actual code so you can pick what fits your use case. Swipe through for the full breakdown with examples 👉 Which pattern do you typically reach for? #Angular #DependencyInjection #DI #TypeScript #WebDevelopment #Frontend
To view or add a comment, sign in
-
Ever wondered how Angular knows when to create, check, or destroy a component? 🤔 That’s where Lifecycle Hooks come in! They allow developers to tap into the life events of a component and run code at the right time. Here’s the complete sequence 👇 --- 🧩 Angular Lifecycle Hooks (in order) 1️⃣ ngOnChanges() — Detects input value changes 2️⃣ ngOnInit() — Runs once on initialization 3️⃣ ngDoCheck() — Custom change detection 4️⃣ ngAfterContentInit() — Content projection completed 5️⃣ ngAfterContentChecked() — Projected content checked 6️⃣ ngAfterViewInit() — View fully initialized 7️⃣ ngAfterViewChecked() — View rechecked 8️⃣ ngOnDestroy() — Cleanup before component is removed --- 🧠 Pro Tips: Use ngOnInit() for API calls or setup logic Use ngOnDestroy() to unsubscribe from observables Avoid heavy logic in ngDoCheck() — it runs frequently! --- 💬 Final Thought: Understanding lifecycle hooks helps you write optimized, predictable, and maintainable Angular components. Know your hooks — and your components will thank you! 😄 #Angular #FrontendDevelopment #WebDevelopment #Coding #RxJS #JavaScript #AngularDeveloper #TechCommunity
To view or add a comment, sign in
-
Standalone simplicity Modern Angular(v15+) no longer leans on heavy NgModules. With standalone components, you can build and use components, directives and pipes without registering them in a module. Since Angular 19 standalone is a default and don't need to explicitly set it to true. The official docs note that these standalone APIs “aim to streamline the authoring experience by reducing the need for NgModule” and can be adopted incrementally without breaking changes. That means less boilerplate and a lower barrier to entry. The real game changer is lazy loading. In the past you had to create a module for every feature you wanted to lazy‑load, which discouraged modular design. Standalone components make it trivial: instead of a loadChildren module, you use loadComponent and Angular splits each screen into its own bundle. One team even saw their main bundle shrink by half after migrating to standalone components. Routing, bootstrapping and dependency declarations are all simplified. These self‑contained components promote better reuse and testability. You can mix standalone and NgModule‑based components in the same project(but why would you? 😁), bootstrap the app with a single component, and import only the directives and pipes you need. Tools like the Angular Language Service handle imports automatically, and the new control‑flow syntax (@if, @for, @switch) and signals fit naturally into the standalone model. If Angular once felt complex, take another look. Standalone components strip away unnecessary abstractions, make lazy loading effortless and align the framework more closely with modern JavaScript. It’s a clear step toward a leaner, more approachable Angular. #Angular #WebDevelopment #FrontendDeveloper #ModernJavaScript
To view or add a comment, sign in
Explore content categories
- Career
- Productivity
- Finance
- Soft Skills & Emotional Intelligence
- Project Management
- Education
- Technology
- Leadership
- Ecommerce
- User Experience
- Recruitment & HR
- Customer Experience
- Real Estate
- Marketing
- Sales
- Retail & Merchandising
- Science
- Supply Chain Management
- Future Of Work
- Consulting
- Writing
- Economics
- Artificial Intelligence
- Employee Experience
- Workplace Trends
- Fundraising
- Networking
- Corporate Social Responsibility
- Negotiation
- Communication
- Engineering
- Hospitality & Tourism
- Business Strategy
- Change Management
- Organizational Culture
- Design
- Innovation
- Event Planning
- Training & Development