# A crew directory for yacht charter.

> Seafarers fill in profile and career, the company searches them and generates PDF CVs, anonymous ones too, without asking for a second login.

- Sector: Marine
- Practice: Software engineering
- Year: 2021-2022
- URL: https://cloudfactory.it/en/work/yacht-crew-directory/

## In brief

For a yacht charter and marine services company we built a crew directory. Seafarers log in with their WordPress site account and fill in profile and career: role, vessel, shipyard, length, flag, sailing areas and duties. The company searches profiles and generates PDF CVs, full or anonymous, to send to owners.

- **13** on-board roles, from master to steward
- **30** maritime certificates
- **252** selectable countries

## Context

The company proposes crews to yacht owners and received CVs in all kinds of formats, hard to compare.

## The problem

CVs had to be rewritten by hand and stripped of personal data before being sent. And asking seafarers for a second account on top of the site's would have cut sign-ups.

## What we did

1. **One login.** A middleware reads the WordPress authentication cookie: whoever is logged into the site is logged into the directory.
2. **Structured profiles.** Roles, certificates, seaman's book types, flags and areas as predefined lists, so profiles compare.
3. **CVs in two versions.** From the admin panel you generate the full PDF or the anonymous one, ready to send to an owner.
4. **Automated deploys.** Every push to the main branch deploys through GitHub Actions and Deployer.

## How it went

Profiles arrive in one format and an anonymous CV is generated in one click instead of being cleaned up by hand.

## Tools

Laravel 9, Laravel Nova, DomPDF, Tailwind, MySQL, GitHub Actions, Deployer, WordPress

## FAQ

### Why an app separate from the WordPress site?

To have a real data model and PDF generation, while keeping a single login with the site.

### What does the anonymous CV hide?

Personal and contact details: professional experience stays, which is what the owner needs to assess.

---

Cloudfactory S.r.l., Rome. Contact: hello@cloudfactory.it
