{
  "name": "Nolane",
  "fullName": "Nolane BRULLEFERT",
  "version": "8.0.0",
  "siteCreated": "2026-04-24",
  "seo": {
    "fr": {
      "title": "Nolane BRULLEFERT — Développeur Full-Stack JS freelance · Portfolio terminal",
      "description": "Nolane BRULLEFERT — Développeur Full-Stack JavaScript freelance. React, React Native, TypeScript, Node.js. 7 ans d'expérience (TheFork, Dior, PickMe…)."
    },
    "en": {
      "title": "Nolane BRULLEFERT — Full-Stack JS freelance developer · Terminal portfolio",
      "description": "Nolane BRULLEFERT — Full-Stack JavaScript freelance developer. React, React Native, TypeScript, Node.js. 7 years of experience (TheFork, Dior, PickMe…)."
    }
  },
  "social": [],
  "role": {
    "en": "Full-Stack JS Developer",
    "fr": "Développeur Full-Stack JS"
  },
  "years": 7,
  "location": "Remote · Europe",
  "tagline": {
    "en": [
      "Seven years",
      "shipping web, mobile,",
      "APIs, and",
      "the occasional game."
    ],
    "fr": [
      "Sept ans",
      "à livrer web, mobile,",
      "APIs, et",
      "parfois un jeu."
    ]
  },
  "bio": {
    "en": "Full-Stack JavaScript developer with 7 years shipping web, mobile, and backend work across the stack. I co-founded and ran my own company for 2 years. Currently freelancing on the Design System team at TheFork (Tripadvisor) and building a card game in Godot / GDScript on the side.",
    "fr": "Développeur Full-Stack JavaScript depuis 7 ans — web, mobile, APIs. J'ai cofondé et tenu ma propre société pendant 2 ans. Actuellement en freelance dans l'équipe Design System de TheFork (Tripadvisor), et je construis un jeu de cartes sous Godot / GDScript en parallèle."
  },
  "stack": [
    {
      "name": "TypeScript",
      "years": 6,
      "cat": "language"
    },
    {
      "name": "Node.js",
      "years": 7,
      "cat": "backend"
    },
    {
      "name": "React",
      "years": 7,
      "cat": "frontend"
    },
    {
      "name": "React Native",
      "years": 7,
      "cat": "mobile"
    },
    {
      "name": "GraphQL",
      "years": 5,
      "cat": "backend"
    },
    {
      "name": "PostgreSQL",
      "years": 5,
      "cat": "data"
    },
    {
      "name": "Next.js",
      "years": 2.5,
      "cat": "frontend"
    },
    {
      "name": "Godot / GDScript",
      "years": 1.5,
      "cat": "games"
    }
  ],
  "timeline": [
    {
      "year": {
        "en": "Apr 2018",
        "fr": "Avr 2018"
      },
      "from": {
        "y": 2018,
        "m": 4
      },
      "to": {
        "y": 2018,
        "m": 9
      },
      "company": "Frichti",
      "type": "internship",
      "role": {
        "en": "Back-End Developer",
        "fr": "Développeur Back-End"
      },
      "body": {
        "en": "Node.js features across logistics, preparation, inventory, orders, and customer-facing. Also built internal React tools for various teams.",
        "fr": "Développement Node.js sur plusieurs domaines : logistique, préparation, stocks, commandes et client final. Outils React internes pour différentes équipes."
      }
    },
    {
      "year": {
        "en": "Oct 2018",
        "fr": "Oct 2018"
      },
      "from": {
        "y": 2018,
        "m": 10
      },
      "to": {
        "y": 2020,
        "m": 6
      },
      "company": "Waveup",
      "type": "founder",
      "role": {
        "en": "CEO / Co-Founder",
        "fr": "CEO / Cofondateur"
      },
      "body": {
        "en": "Co-founded Waveup — a collaborative playlist app that lets everyone pick the music at parties. Complete React Native mobile app, full Node.js API, a realtime socket server, and server ops on an OVH VPS. Two years end-to-end.",
        "fr": "Cofondation de Waveup — une application de playlist collaborative permettant à chacun de choisir la musique en soirée. Application mobile React Native complète, API Node.js, serveur sockets temps réel, et gestion de serveur (VPS OVH). Deux ans de bout en bout."
      }
    },
    {
      "year": {
        "en": "Aug 2020",
        "fr": "Août 2020"
      },
      "from": {
        "y": 2020,
        "m": 8
      },
      "to": {
        "y": 2020,
        "m": 10
      },
      "company": "Weglot",
      "type": "cdi",
      "role": {
        "en": "Full-Stack JS Developer",
        "fr": "Développeur Full-Stack JS"
      },
      "body": {
        "en": "Short engagement on the translation API that auto-detects website content and renders it in any language. Back-end: Node.js / TypeScript. Front-end: React.js / TypeScript.",
        "fr": "Mission sur l'API de traduction qui détecte automatiquement le contenu d'un site et le restitue dans n'importe quelle langue. Back-end : Node.js / TypeScript. Front-end : React.js / TypeScript."
      }
    },
    {
      "year": {
        "en": "Jan 2021",
        "fr": "Jan 2021"
      },
      "from": {
        "y": 2021,
        "m": 1
      },
      "to": {
        "y": 2022,
        "m": 2
      },
      "company": "PickMe",
      "type": "cdi",
      "role": {
        "en": "Full-Stack JS Developer",
        "fr": "Développeur Full-Stack JS"
      },
      "body": {
        "en": "Back-end, mobile, and back-office for a collaborative platform where neighbors become local parcel pick-up points. Node.js / TypeScript / Nest.js / PostgreSQL / GraphQL. Mobile: React Native / TypeScript / Redux / GraphQL. Front-end: React.js / TypeScript.",
        "fr": "Back-end, mobile et back-office pour une plateforme collaborative où les voisins deviennent points relais locaux. Node.js / TypeScript / Nest.js / PostgreSQL / GraphQL. Mobile : React Native / TypeScript / Redux / GraphQL. Front-end : React.js / TypeScript."
      }
    },
    {
      "year": {
        "en": "Mar 2022",
        "fr": "Mar 2022"
      },
      "from": {
        "y": 2022,
        "m": 3
      },
      "to": {
        "y": 2022,
        "m": 5
      },
      "company": "Smartness SAS (Ko)",
      "type": "freelance",
      "role": {
        "en": "Full-Stack JS Developer",
        "fr": "Développeur Full-Stack JS"
      },
      "body": {
        "en": "Mobile development of a Web3 social network application with blockchain technology. React Native / TypeScript / GraphQL.",
        "fr": "Développement mobile d'une application de réseau social Web3 avec technologie blockchain. React Native / TypeScript / GraphQL."
      }
    },
    {
      "year": {
        "en": "Jun 2022",
        "fr": "Juin 2022"
      },
      "from": {
        "y": 2022,
        "m": 6
      },
      "to": {
        "y": 2022,
        "m": 12
      },
      "company": "Maria Schools",
      "type": "freelance",
      "role": {
        "en": "Full-Stack JS Developer",
        "fr": "Développeur Full-Stack JS"
      },
      "body": {
        "en": "Built an internal back-office from scratch, alongside the CTO handling the Nest.js backend. Front-end: React.js / TypeScript / GraphQL.",
        "fr": "Construction d'un back-office interne de zéro, aux côtés du CTO qui gérait le back-end Nest.js. Front-end : React.js / TypeScript / GraphQL."
      }
    },
    {
      "year": {
        "en": "Apr 2023",
        "fr": "Avr 2023"
      },
      "from": {
        "y": 2023,
        "m": 4
      },
      "to": {
        "y": 2025,
        "m": 4
      },
      "company": "Christian Dior Couture",
      "type": "freelance",
      "role": {
        "en": "Front-End JS Developer",
        "fr": "Développeur Front-End JS"
      },
      "body": {
        "en": "Two years on Dior.com within the Couture division's e-commerce site. Improved user experience, accessibility, and performance on key pages. Front-end: React.js / Next.js / TypeScript / GraphQL. Back-end: Node.js / TypeScript / GraphQL.",
        "fr": "Deux ans sur Dior.com, au sein du site e-commerce de la division Couture. Amélioration de l'expérience utilisateur, de l'accessibilité et des performances sur les pages clés. Front-end : React.js / Next.js / TypeScript / GraphQL. Back-end : Node.js / TypeScript / GraphQL."
      }
    },
    {
      "year": {
        "en": "Jun 2025",
        "fr": "Juin 2025"
      },
      "from": {
        "y": 2025,
        "m": 6
      },
      "to": null,
      "company": "TheFork (Tripadvisor)",
      "type": "freelance",
      "role": {
        "en": "Front-End JS Developer",
        "fr": "Développeur Front-End JS"
      },
      "body": {
        "en": "Front-end and mobile development within the Design System team. Harmonizing the user interface across the website and mobile apps, in collaboration with the design team. Focus on UX, performance, and accessibility across platforms. React.js / React Native / TypeScript.",
        "fr": "Développement front-end et mobile au sein de l'équipe Design System. Harmonisation de l'interface utilisateur entre le site et les applications mobiles, en collaboration avec l'équipe design. UX, performance et accessibilité. React.js / React Native / TypeScript."
      }
    }
  ],
  "projects": [
    {
      "id": "cardgame-godot",
      "title": {
        "en": "Card Game · Godot",
        "fr": "Jeu de Cartes · Godot"
      },
      "tech": "Godot · GDScript",
      "body": {
        "en": "A personal card game built in Godot with GDScript. A study in what the engine gives you vs. what you build yourself — rules, turn logic, animation, state.",
        "fr": "Un jeu de cartes personnel construit dans Godot en GDScript. Une étude de ce qu'apporte le moteur face au fait-maison — règles, logique de tour, animation, état."
      },
      "status": {
        "en": "In progress",
        "fr": "En cours"
      }
    },
    {
      "id": "ragnarok-godot",
      "title": {
        "en": "Ragnarok Online · Godot remake",
        "fr": "Ragnarok Online · Remake Godot"
      },
      "tech": "Godot · GDScript",
      "body": {
        "en": "A remake of Ragnarok Online built from scratch in Godot with GDScript. Rebuilding the tile-based MMORPG feel — sprites, combat, party systems — as a love letter to a favorite game and a deep-dive into game architecture.",
        "fr": "Un remake de Ragnarok Online reconstruit de zéro dans Godot en GDScript. Recréer l'ambiance MMORPG au tile — sprites, combat, systèmes de groupe — comme lettre d'amour à un jeu d'enfance et plongée dans l'architecture d'un jeu."
      },
      "status": {
        "en": "In progress",
        "fr": "En cours"
      }
    }
  ],
  "contact": {
    "resumeFile": "nolane_cv.pdf",
    "en": {
      "cta": "Get in touch",
      "resume": "Download resume"
    },
    "fr": {
      "cta": "Me contacter",
      "resume": "Télécharger le CV"
    }
  },
  "ui": {
    "en": {
      "skills": "Stack",
      "timeline": "Journey",
      "projects": "Work",
      "about": "About",
      "resume": "Resume",
      "toggleLang": "FR",
      "toggleTheme": "Theme"
    },
    "fr": {
      "skills": "Compétences",
      "timeline": "Parcours",
      "projects": "Projets",
      "about": "À propos",
      "resume": "CV",
      "toggleLang": "EN",
      "toggleTheme": "Thème"
    }
  }
}