Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
@cod3x/openapi
Advanced tools
The @cod3x/openapi
package is a comprehensive library that provides a set of APIs for interacting with various blockchain networks and decentralized finance (DeFi) protocols. This package includes support for Ethereum, Bitcoin, Bitcoin Cash, Dogecoin, Litecoin, EOS, Solana, Cosmos, Tron, and more.
npx swagger-typescript-api -p swagger.json -o ./src/lib --modular --route-types --unwrap-response-data --sort-types --sort-routes --enum-names-as-values --extract-request-params --extract-request-body --extract-response-body --extract-response-error --extract-enums --single-http-client
To use the Cod3x API package, first install it to a project:
{% tabs %} {% tab title="npm" %}
npm install @cod3x/openapi
{% endtab %}
{% tab title="yarn" %}
yarn add @cod3x/openapi
{% endtab %}
{% tab title="pnpm" %}
pnpm add @cod3x/openapi
{% endtab %} {% endtabs %}
To use the @cod3x/openapi
package, you'll first need to install it using a package manager like npm or Yarn. Once you've installed the package, you can import the classes and methods you need into your project.
Here's an example of how to use the Accounts
class to create a new Ethereum account and transfer ETH:
import { HttpClient, Accounts } from '@cod3x/openapi';
// Initialize the HttpClient with your API base URL and security worker
const http = new HttpClient({
baseUrl: 'https://beta.usemoon.ai',
securityWorker: async (securityData) => {
return {
headers: {
Authorization: `Bearer ${securityData.token}`,
},
};
},
});
// Create an instance of the Accounts class
const accounts = new Accounts(http);
// Create a new Ethereum account
const createAccountData = await accounts.createAccount({ private_key: 'your_private_key' });
console.log('New account created:', createAccountData.address);
// Transfer ETH from the new account to another account
const transferEthData = await accounts.transferEth(createAccountData.name, {
to: '0xAnotherAccountAddress',
value: '1000000000000000000', // 1 ETH in wei
});
console.log('Transfer successful:', transferEthData.transactionHash);
This example demonstrates how to use the Accounts
class to create a new Ethereum account and transfer ETH to another account. The HttpClient
class is used to make HTTP requests to the API, and the securityWorker
function is used to add an authorization header to the requests.
To use the @cod3x/openapi
package, you'll first need to initialize an HttpClient
object with your API base URL and security worker. The security worker is a function that returns the headers to be included in the API requests. In this case, it returns an authorization header with a bearer token.
Here's an example of how to initialize the HttpClient
object:
import { HttpClient } from '@cod3x/openapi';
const http = new HttpClient({
baseUrl: 'https://beta.usemoon.ai',
securityWorker: async (securityData) => {
return {
headers: {
Authorization: `Bearer ${securityData.token}`,
},
};
},
});
In this example, the baseUrl
property is set to the URL of the API, and the securityWorker
property is set to a function that returns an authorization header with a bearer token. The securityData
object is passed to the securityWorker
function, which can be used to retrieve the bearer token.
Once you've initialized the HttpClient
object, you can use it to create instances of the classes provided by the @cod3x/openapi
package. For example:
import { Accounts } from '@cod3x/openapi';
const accounts = new Accounts(http);
In this example, the Accounts
class is imported from the @cod3x/openapi
package, and an instance of the class is created using the HttpClient
object.
The package is organized into several files, each containing a class that provides methods for interacting with a specific blockchain network or DeFi protocol. The main files in the package are:
\
Provides methods for creating and managing Ethereum accounts, deploying contracts, signing messages and transactions, and transferring ETH.
Provide methods for creating and managing Bitcoin accounts, and signing transactions
Provide methods for creating and managing Bitcoin Cash accounts, and signing transactions
Provide methods for interacting with the Cosmos blockchain networks, including creating and managing accounts, and signing transactions.
Provide methods for creating and managing Dogecoin accounts, and signing transactions
Provides methods for interacting with the Ethereum Name Service (ENS), including registering and resolving domain names.
Provide methods for interacting with the EOS blockchain networks, including creating and managing accounts, and signing transactions.
Provide methods for interacting with Ethereum-based tokens, including transferring tokens, checking balances, and approving contracts.
Provide methods for interacting with Ethereum-based tokens, including transferring tokens, checking balances, and approving contracts.
Provide methods for interacting with Ethereum-based tokens, including transferring tokens, checking balances, and approving contracts.
Provide methods for creating and managing Litecoin accounts, and signing transactions
Provides methods for interacting with the Onramper fiat onramp service, allowing users to buy cryptocurrencies with fiat currency.
Provides methods for interacting with the Ripple blockchain network, including creating and managing accounts, and sending and receiving payments.
Provides methods for interacting with the Solana blockchain network, including creating and managing accounts, and sending and receiving tokens.
Provides methods for interacting with the TRON blockchain network, including creating and managing accounts, and sending and receiving tokens.
Provide methods for interacting with the Uniswap decentralized exchange (DEX) protocols, including swapping tokens and checking prices
Overall, the @cod3x/openapi
package is a powerful and flexible library that provides a wide range of APIs for interacting with various blockchain networks and DeFi protocols. Whether you're building a simple wallet application or a complex decentralized finance platform, this package has the tools you need to get the job done.
We welcome contributions to the @cod3x/openapi package! Here's how you can help:
If you find a bug or have a suggestion for improving the package:
main
.npm install
npm test
npm run lint:fix
npm run prettier:fix
main
branch.npm run build
: Build the packagenpm run dev
: Build and watch for changesnpm test
: Run testsnpm run coverage
: Run tests with coverage reportnpm run lint
: Check for linting errorsnpm run lint:fix
: Fix linting errorsnpm run prettier
: Check code formattingnpm run prettier:fix
: Fix code formattingnpm run verify
: Run linter and prettier checksnpm run verify:fix
: Fix linter and prettier issuesPlease follow the existing coding style. We use ESLint and Prettier to maintain code quality and consistency.
By contributing to @cod3x/openapi, you agree that your contributions will be licensed under its MIT License.
Thank you for your interest in improving @cod3x/openapi!
FAQs
## @cod3x/openapi Package Documentation
We found that @cod3x/openapi demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.