1.1.3 • Published 5 months ago

auth-my-library v1.1.3

Weekly downloads
-
License
MIT
Repository
github
Last release
5 months ago

Auth Library

A framework-agnostic Auth Library that automatically intercepts all API calls (Fetch & XHR) and adds an authentication token without requiring any changes in the application code.

Features

  • 🚀 Framework Agnostic – Works in any JavaScript/TypeScript project.
  • 🔄 Automatic Token Handling – Attaches a token to every API request.
  • 🔍 Intercepts All Requests – Works with both fetch and XMLHttpRequest.
  • No Dependencies – Lightweight and efficient.
  • 🔧 Zero Configuration – Works without modifying API requests in the application.

Installation

You can install the package via npm:

npm i auth-my-library

Or include it directly in an HTML file via CDN:

<script src="https://unpkg.com/auth-my-library/lib/api-interceptor.js"></script>

Usage

1. Import & Initialize

For JavaScript/TypeScript projects:

import { APIInterceptor } from "api-interceptor";
const interceptor = new APIInterceptor();

This automatically intercepts all API calls and appends the authorization token without requiring any manual modifications in API requests.

2. Making API Calls

After initializing, just use fetch or XMLHttpRequest as usual:

fetch("https://api.example.com/data")
  .then(response => response.json())
  .then(data => console.log(data));

The interceptor will automatically add the token to every request without requiring application-level modifications.

Configuration

If needed, you can customize token retrieval by extending the APIInterceptor class:

class CustomInterceptor extends APIInterceptor {
  async getToken(): Promise<string> {
    return "your-custom-token"; // Fetch token from your API or storage
  }
}
const interceptor = new CustomInterceptor();

Contributing

Contributions are welcome! Feel free to submit issues or pull requests.

Version

1.0.0 → 1.0.1 (Bug fixes) 1.0.0 → 1.1.0 (New features, backward compatible) 1.0.0 → 2.0.0 (Breaking changes)

Author

Abhishek Kumar Yadav
GitHub: github.com/kumaryabhi

License

This project is licensed under the MIT License. See the LICENSE file for details.

1.1.3

5 months ago

1.1.2

5 months ago

1.1.1

5 months ago

1.0.0

5 months ago