@bigbinary/neeto-api-keys-frontend
TypeScript icon, indicating that this package has built-in type declarations

2.2.3 • Public • Published

neeto-api-keys-nano

The neeto-api-keys-nano facilitates the administration of API keys within neeto applications. The nano exports the @bigbinary/neeto-api-keys-frontend NPM package and neeto-api-keys-engine Rails engine for development.

Contents

  1. Development with Host Application

  2. Instructions for Publishing

Development with Host Application

Engine

The engine is used to manage API keys across neeto products. It also provides concerns to handle common logic related to NeetoApiKeysEngine::ApiKey model.

Installation

  1. Add this line to your application's Gemfile:
    source "NEETO_GEM_SERVER_URL" do
      # ..existing gems
    
      gem 'neeto-api-keys-engine'
    end
  2. And then execute:
    bundle install
  3. Add this line to your application's config/routes.rb file:
    mount NeetoApiKeysEngine::Engine => "/neeto_api_keys_engine"
  4. Run the command to bring in all migrations required from the engine to the host application:
    bundle exec rails neeto_api_keys_engine:install:migrations
  5. Add the migrations to the database:
    bundle exec rails db:migrate

Usage

  1. Add NeetoApiKeysEngine::ApiKeysHandler concern to organization model.

    class Organization < ActiveRecord::Base
      # Include the following concern
      include NeetoApiKeysEngine::ApiKeysHandler

    The NeetoApiKeysEngine::ApiKeysHandler concern is a module that provides functionality related to API keys within the host application. It establishes associations, methods, and logic for working with API keys.

  2. Add the NeetoApiKeysEngine::Authenticatable concern to the controller that requires API key authentication. Utilize the neeto_api_keys_authenticate_using_api_key method within a before_action callback to authenticate the necessary actions.

class Api::V1::PublicApiController < ActionController::Base
  # Include the following concern and callback
  include NeetoApiKeysEngine::Authenticatable

  before_action :neeto_api_keys_authenticate_using_api_key

By default, this method expects the API key in the "X-Api-Key" key in the header. For different keys or implementations, define a token method in the controller that returns the token.

Example:

def token
  request.headers["neeto-Api-Key"]
end

Frontend package

Installation

Install the latest NeetoApiKeysNano package using the below command:

yarn add @bigbinary/neeto-api-keys-frontend

Instructions for development

Check the Frontend package development guide for step-by-step instructions to develop the frontend package.

Components

ApiKeys(source code)

This component is used for managing API keys in a web application. It provides functionality for viewing, creating, updating, and deleting API keys. The component includes a table for displaying API key data, as well as options to add new keys, edit existing ones, and delete keys. It also features a search bar for easily finding specific API keys.

Props
  • noDataProps: Props for handling scenarios when there is no data to display.
  • headerProps: Props for configuring the header section of the component.
  • titleHelpPopoverProps: Props for configuring the help popover in the title section.
Usage
import React from "react";

import { ApiKeys } from "@bigbinary/neeto-api-keys-frontend";

const App = () => <ApiKeys />;

export default App;

Instructions for Publishing

Consult the building and releasing packages guide for details on how to publish.

Readme

Keywords

none

Package Sidebar

Install

npm i @bigbinary/neeto-api-keys-frontend

Weekly Downloads

1,082

Version

2.2.3

License

UNLICENSED

Unpacked Size

160 kB

Total Files

13

Last publish

Collaborators

  • neetohq
  • bigbinarybot
  • neerajdotname