Skip to content

Marcus-V-Freitas/MVFC.Connectors

Repository files navigation

MVFC.Connectors

A collection of .NET connectors for integrating external services and REST APIs with a consistent, reusable, and testable approach.

NuGet Downloads License CI codecov Platform

English | Português


Features

  • Modular connector architecture organized by domain
  • Reusable HTTP abstractions with authentication and logging handlers
  • Typed API interfaces for external service integration
  • Designed for testability with dedicated test coverage
  • Domains covered: finance, geolocation, government, AI, education, developer tools, and more

Packages

Package Service Downloads
MVFC.Connectors.BancoData Raw and transformed bank data from Banco Central do Brasil Downloads
MVFC.Connectors.BrasilApi BrasilAPI: CEP, CNPJ, banks, FIPE, IBGE, holidays, PIX, and more Downloads
MVFC.Connectors.Commons Shared handlers, providers, interfaces, and HTTP settings Downloads
MVFC.Connectors.Conversores Google Translator, Dictionary API, HTML to PDF Downloads
MVFC.Connectors.Developer IP lookup, email validation, key-value store, MySQL Explain Downloads
MVFC.Connectors.Educacao Education data via Hipolabs API Downloads
MVFC.Connectors.Financas BCB institutions, Yahoo Finance, Reddit stocks Downloads
MVFC.Connectors.Geo Geolocation and address resolution: ViaCEP, Geocoding, GeoNet Downloads
MVFC.Connectors.IA AI connectors: Pollinations image and text generation Downloads
MVFC.Connectors.Justica Legal data via DataJud judicial records Downloads
MVFC.Connectors.Sicoob Sicoob banking: billing, boleto, payment, and webhooks Downloads

Installation

Install the meta-package for all connectors:

dotnet add package MVFC.Connectors

Or install only the package you need:

dotnet add package MVFC.Connectors.BrasilApi
dotnet add package MVFC.Connectors.Sicoob
dotnet add package MVFC.Connectors.Geo

Quick Start

Register your desired connectors in your service collection:

var builder = WebApplication.CreateBuilder(args);

builder.Services.AddBrasilApi();
builder.Services.AddSicoob(options =>
{
    options.ClientId = "your-client-id";
    options.ClientSecret = "your-client-secret";
});

var app = builder.Build();

Consuming a connector via dependency injection:

public class MyService(ICepBrasilApi cepApi)
{
    public async Task<CepDto> GetAddressAsync(string cep, CancellationToken ct)
    {
        return await cepApi.ObterAsync(cep, ct);
    }
}

Design Principles

  • Explicit over magic — no hidden reflection or opaque abstractions
  • Composable — each connector is independent and self-contained
  • Reusable infrastructure — authentication and HTTP handled via shared handlers in Commons
  • Domain-driven organization — packages are grouped by responsibility
  • Testability first — every connector ships with test coverage

Tests

All connectors are covered by integration tests located in tests/MVFC.Connectors.Tests.

dotnet test

Contributing

Read CONTRIBUTING.md before opening issues or pull requests.


Security

If you discover a vulnerability, please refer to SECURITY.md.


License

Distributed under the license available in LICENSE.

Packages

 
 
 

Contributors

Languages