@tropykus/tropykus-widget
TypeScript icon, indicating that this package has built-in type declarations

0.1.2 • Public • Published

Tropykus Widget

This widget is the gateway for third parties to access the savings and borrowing products of Tropykus in few lines of codes

Installation as an standalone component

This project was built using ReactJS v18.2 and it works as a widget that can be rendered using simple HTML

<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="UTF-8" />
		<meta name="viewport" content="width=device-width, initial-scale=1.0" />
		<title>Tropykus Widget</title>

		<!-- Your code -->
	</head>
	<body>
		<!-- ... Your code ...  -->
		<!-- You can add custom styles for the container-->
		<style>
			.widget-container {
				border: 1px solid #ccc;
				padding: 10px;
				margin-bottom: 20px;
			}
		</style>
		<div class="widget-container">
			<div id="root"></div>
			<!-- The widget will mount here -->
			<script
				type="module"
				src="https://unpkg.com/tropykus-widget/dist/standalone/main.js"
			></script>
		</div>
		<!-- ... Your code ...  -->
	</body>
</html>

Installation as react in React or NextJS component

Install the widget ussing npm

npm install tropykus-widget

In the destination app import the widget and render it:

import TropykusWidget from 'tropykus-widget'

function App() {

  return (
    <>
      {/*  Rest of your code ... */}
      <TropykusWidget />
      {/*  ... Rest of your code */}

Tropykus team will provide you with a CLIENT_ID, an API_KEY and an API_AUTH_URL so you can get an Auth Token that you will have to pass it as a parameter in the TropykusWidget Component: This is an example using React:

import axios from 'axios'
//@ts-expect-error Types not ready yet
import TropykusWidget from '@tropykus/tropykus-widget'
import { useEffect, useState} from 'react'

function App() {
  const [token, setToken] = useState('')

  const API_KEY= import.meta.env.VITE_WIDGET_API_KEY
  const CLIENT_ID= import.meta.env.VITE_WIDGET_CLIENT_ID
  const API_AUTH_URL= import.meta.env.VITE_WIDGET_API_AUTH_URL

  useEffect(() => {
    const clientToken= async()=>{
      const res = await axios.post( API_AUTH_URL, 
        {apiKey: API_KEY,
          clientId: CLIENT_ID})
          setToken(res.data.token)
        }
        clientToken() 
  }, [API_AUTH_URL, API_KEY, CLIENT_ID])

  return (
    <>
      <TropykusWidget   token={token}/>
    </>
  )
}

Configuration

For a custom configuration please contact the Tropykus team at contact@tropykus.com

Tests

Run units tests locally with any of these commands:

npm run test

npm run test-verbose

CI

Every time a PR is opened from any branch to "develop", tests are performed automatically

Readme

Keywords

none

Package Sidebar

Install

npm i @tropykus/tropykus-widget

Weekly Downloads

3

Version

0.1.2

License

none

Unpacked Size

11.6 MB

Total Files

57

Last publish

Collaborators

  • champilas
  • dacarva
  • nataliadev