en

How it works

Need Any Help For Business?

Contact us for a personal offer on FinMV that is customized to your needs.

Your technology, not our history

FinMV has historically been built in PHP. That is a fact about our past, not a requirement for your platform. The specification, the business rules and the test suite are defined independently of any one framework, so an implementation can be produced on the target that fits the team who will live with it.

Supported implementation targets

These are the targets FinMV delivers and supports today. We do not list a technology we cannot stand behind, and the list is deliberately shorter than "anything you like".

  • Recommended by FinMV — No preference? This is the sensible default. Choosing a stack is our job, not a question a founder should have to answer.
  • TypeScript, Next.js — Next.js — PostgreSQL / MongoDB, Redis, RabbitMQ / Kafka
  • TypeScript, Node.js, NestJS — React / Angular — PostgreSQL / MongoDB, Redis, RabbitMQ / Kafka
  • Java, Spring Boot — React / Angular — PostgreSQL / MongoDB, Redis, RabbitMQ / Kafka
  • Kotlin, Spring Boot — React / Angular — PostgreSQL / MongoDB, Redis, RabbitMQ / Kafka
  • C#, ASP.NET Core — React / Angular — PostgreSQL / MongoDB, Redis, RabbitMQ / Kafka
  • Go, Gin, Echo, Fiber — React / Angular — PostgreSQL / MongoDB, Redis, RabbitMQ / Kafka
  • Python, FastAPI, Django — React / Angular — PostgreSQL / MongoDB, Redis, RabbitMQ / Kafka
  • PHP, Laravel — React / Vue.js — PostgreSQL / MongoDB, Redis, RabbitMQ / Kafka

How the layers fit together

Backend carries the domain — offerings, investments, money movement, compliance gates and the audit trail. This is the choice that matters most, because it is the code your engineers will maintain.

Frontend covers the investor portal, the issuer or project area and the back office. CSS frameworks such as Tailwind belong here: they are a styling layer, not a technology stack, and they never determine how the platform behaves.

Data. PostgreSQL is the system of record. Financial state, positions and audit history need transactions and constraints, and that is what a relational database is for.

Cache and coordination. Redis, where low-latency caching or coordination is genuinely required.

Asynchronous work. Queues handle what should not block a user. A dedicated broker such as RabbitMQ or Kafka is introduced when throughput or integration topology justifies it — this is an implementation decision we make from your requirements, not a question we put to you.

How to choose

Pick the target your engineering organisation can hire for, review and operate. If you already have a team, that answer is usually obvious. If you do not yet, take the recommended option — it can be revisited before implementation starts.

The stack does not decide the price on its own. Cost moves when the implementation target genuinely changes the work, the amount we can reuse, the support burden, the deployment and security profile or the delivery risk. You are paying for a verified outcome, scope, risk and ownership — not for lines of code in a particular language.

Architecture is a separate question from technology, and we answer it the same way: see how we choose architecture.