Services and platforms

B2B country risk portal

The portal lets corporate subscribers find security events for their countries on their own, and lets analysts publish materials and manage access

Next.js 15TypeScriptPostgreSQL 16Prisma ORM 5Auth.js v5Argon2D3topojsonworld-atlasexceljsDocker ComposeCaddy 2
B2B country risk portal

Project at a glance

Problem

A travel risk management consulting company prepared its analytics in Excel and sent weekly digests to corporate subscribers. All clients received the same mailing, and custom analytics exports were put together by hand. The company needed a private portal where subscribers could find information on their assigned countries themselves. Analysts needed a single place to maintain events, publish materials and manage client access.

What we did
  • Event search with filters by country and risk level
  • Country pages and event cards with ratings and recommendations
  • Separate risk ratings for employees and the business
  • World map and interactive globe
Result
2 weeksTime to MVP launch

Want the same for your business? Tell us about your task — we’ll propose a solution and estimate the timeline.

Self-service search instead of a shared mailing

We built a client area with search and filters by country and risk level. Subscribers can find the events they need, open a country page and put together a selection for their geography.

The results can be exported to XLSX or CSV. The export respects the selected filters and the countries available to the client — there is no longer any need to ask an analyst for a custom selection.

Each event comes with a risk assessment

The event card holds the date, location, source and description, along with the impact on employees and on the business. It also shows risk ratings and recommendations when they have been prepared. This gives subscribers the context to assess the situation.

We kept the model the analysts were used to: risk to employees and risk to the business are rated separately on a five-level scale. The overall rating is the higher of the two, and the client area shows it on a High, Medium and Low scale.

A world map and an interactive globe help view events in their geographic context.

A workspace for analysts

In the admin panel, analysts maintain countries, regions and events, manage clients and assign them the geography they can access. Material can be prepared as a draft and published when it is ready: subscribers see only published events.

To migrate the data, we added XLSX import using the company’s template, with support for the region hierarchy. Prepared spreadsheets can be uploaded to the portal without re-entering each event by hand.

Access within the subscription

Each corporate client is assigned the countries it receives analytics for. These limits apply to search, exports and direct links to a country or an event.

Sign-in is protected against password brute-forcing. An activity log makes it possible to trace changes to materials, publications, and access being granted and revoked.

Technical details

Technical details

The portal is built with Next.js 15 and TypeScript, and the data is stored in PostgreSQL 16. The map and the globe use D3, topojson and world-atlas; spreadsheets are handled with exceljs.

The MVP was deployed on the company’s VPS. The portal is ready to onboard corporate clients and runs on the company’s own infrastructure, with no dependence on the studio’s hosting.

Goals

  • Move analytics from Excel and mailings to a private portal
  • Give subscribers self-service search and export of events
  • Limit each client’s access to its assigned countries
  • Bring publishing and access management together

Target audience

  • Corporate subscribers to country risk analytics
  • The consulting company’s analysts

What users need

Job to be done — from situation to outcome

Situation

I received a weekly digest of security events and was limited to what was in it. I couldn’t look up information on the countries my company works with on my own.

Need

I want to assess the risks to our employees and business in our geography, based on event descriptions and the analysts’ recommendations.

Outcome

I find information on the countries I need myself and put together selections for my work. The event description, its consequences and the recommendations are all available together.

What’s inside

1

Event search with filters by country and risk level

2

Country pages and event cards with ratings and recommendations

3

Separate risk ratings for employees and the business

4

World map and interactive globe

5

Event drafts and publishing

6

XLSX import using the company’s template

7

XLSX and CSV export that respects filters and access rights

8

Assigning countries to each client

9

Sign-in protection and an admin activity log

How we worked

1

Building the admin panel and the client area

2

Adding the map, the globe and spreadsheet handling

3

Access control by role and country

4

Deploying the MVP on the company’s infrastructure

Need a similar project?

Tell us about your task — we’ll estimate the scope, timeline and cost and propose a solution.