Stack: TypeScript, Next.js, Payload CMS, Node.js, Linux/Ubuntu (VPS)
Demo: https://betongkurser.se
Built a full course platform for Betongföreningen after they took over RISE's training operations. The platform handles everything from public course listings to participant registration, certificate generation and administration.
- Automated PDF certificate generation from uploaded templates, filled with participant details - downloadable, printable or sent via email.
- Public website with course listings, filtering, dynamic course pages and registration forms with file upload support.
- Admin interface for managing course types, sessions, locations, participants, waitlists and cancellations.
- Export functions for participant lists, course statistics and invoicing data.
- Certificate tracking with timestamps and issuer logging to ensure traceability.
- Role-based access control for admins and project managers.
- Hosted on Hetzner VPS with Resend.com for transactional emails and Google Analytics integration.
Stack: TypeScript, React, Next.js, Node.js, GraphQL, REST, Headless CMS (ContentStack), ADO
Demo: https://volvocars.com/
As a central part of the volvocars.com development team, I have worked to improve the web experience by further developing the home page, category pages and electrification pages with Next.js, TypeScript and App Router. I have also built interactive tools such as Range Map, Range Calculator and Charging Cost Tool to improve the customer experience.
- Developed a recommendation engine compiling data from multiple systems to automatically generate market-specific car recommendations based on popularity and sales trends.
- Served as a supervisor for LIA students, coaching and supporting future developers in their professional development.
Stack: TypeScript, React, Next.js, Node.js, REST, Headless CMS (Payload CMS), Linux/Ubuntu
Demo: https://mysterylane.se
Built Mystery Lane's website from scratch with Next.js, TypeScript and a headless CMS to create a fast and search engine optimized experience. The website is adapted for escape room operations and contains informative pages and landing pages for various events.
- Developed a customized booking system handling advanced logic for booking times and pricing, specifically adapted for escape room operations.
- The system accounts for factors such as group size, time schedules and special pricing to optimize both the user experience and business operations.
Stack: C++, Python, WebSockets, MQTT
Demo: Internal system
Developed Mystery Lane's escape room technology with ESP32 (C++), Python, MQTT and WebSockets to create a seamless gaming experience. The puzzles and room logic are connected in a network and communicate in real time, enabling dynamic and interactive challenges.
- Implemented OTA (Over-The-Air) Updates for maximum flexibility and maintainability, making it easy to push updates to any device without physical access.
Stack: TypeScript, React, Next.js, Node.js, REST, Linux/Ubuntu, WebSockets
Demo: Internal system
Built a customized control system to manage the entire escape room business.
- Remote control of rooms and puzzles - launch, restore and monitor the game in real time.
- Monitoring via cameras and sensors - ensure the flow of the game and give clues when necessary.
- Automated scenarios - e.g. activation of light, sound and effects at specific events.
- Integration with the booking system - game start and timing are automatically adjusted according to bookings.
Stack: PHP, cPanel, SQL, WordPress, WooCommerce (E-com)
Demo: Backend
Worked with backend development on Betongföreningen's WordPress website, building a membership system handling automatic payments via an ongoing subscription model.
- Built support for corporate membership where employees automatically gain access to membership benefits based on the company's subscription.
- Integrated WooCommerce and custom WordPress features for smooth and automated handling of membership, payments and user rights.
Stack: React, WordPress, WooCommerce, Klarna, PHP, REST API
Demo: https://tillfest.se/
Developed Tillfest.se, a website where customers can design their own personal student badges directly online. Built with WordPress and WooCommerce with a React-based personalization feature enabling live editing of signs before purchase.
- React solution seamlessly integrated with WooCommerce and WordPress, allowing design and order information to be handled through existing e-commerce functions.
- Payment flow implemented with Klarna, ensuring a simple and flexible payment process for customers.
Stack: WordPress, PHP, WooCommerce, MySQL, REST API, QR Code Generation
Demo: Internal solution
Developed an event ticketing system for the Charles Dickens restaurant, fully integrated with their WordPress and WooCommerce platform. The system handles advanced pricing depending on event type, date and booking status.
- Automatically generates QR codes for each ticket.
- QR scan at the entrance to validate tickets and manage entry.
- Integration with WooCommerce for smooth payment and order processing.
Stack: Next.js, TypeScript, MongoDB, Node.js, REST API, Role-based Access Control
Demo: Internal solution
Developed Odinn, a customized CRM system for a company running dozens of lead generating websites within moving, cleaning and moving assistance. The system acts as an intermediary between customers and local businesses.
- Automatic handling of leads - incoming booking requests are matched with suitable companies.
- Role-based access control - local companies have their own accounts and are assigned assignments based on region and capacity.
- Dashboard for businesses - overview of assigned jobs, status updates and order history.
Stack: PHP, Symfony, Pimcore, MySQL, REST API, ERP Integration
Demo: https://taiga.se
Developed Taiga together with a team, an advanced e-commerce platform where Pimcore is used as PIM to manage product information and flows across multiple sites.
- Multi-site and user-specific pricing - dynamic price management based on user role and assigned price list.
- Advanced authentication and permissions - different customer groups see specific prices and products depending on their account type.
- Integration with ERP - fully automated flow for product data, stock management and order management.
- Built with Pimcore and Symfony - robust and scalable backend solution for managing large product catalogs.
Stack: MongoDB, Express, React, Node.js (MERN)
Demo: Internal solution
Developed BuddyCompany's Backlog Indicator, an internal system built with the MERN stack to manage and visualize available assignments in real time.
- Live overview of available missions - streamlined handling of customer cases.
- Advanced SLA management - automatic reminders and escalation in case of SLA breach risk.
- Automated flows - reduced manual handling through automation of tasks.
- SLA results improved from 86% to 95.7%, and FTE decreased from 2 to 1.
Stack: MongoDB, Express, React, Node.js (MERN), Google Maps API
Demo: Internal solution
Developed BuddyCompany's Route Scheduler, a customized scheduling system where Google Maps API is used to optimize route planning and employee scheduling.
- Automatic route optimization - the fastest possible route is calculated based on mission location and traffic conditions.
- ETA calculation - estimated arrival time is generated and communicated to the customer.
- Easy scheduling - employees are assigned by simply entering booking details, after which the system calculates travel time and optimal route.
- Integration with Google Maps API - dynamic route calculations based on current traffic data.
Stack: Next.js, TypeScript, WordPress (Headless), GraphQL, Node.js
Demo: https://cland.se/
Developed C Land's web platform with a headless WordPress solution, using Next.js as frontend and GraphQL to retrieve data efficiently.
- Headless WordPress with GraphQL - fast and flexible content management without classic WordPress templating.
- Next.js for frontend - performance-optimized and SEO-friendly solution with static and dynamic rendering.
- Optimized for speed and user experience - modern architecture with fast loading times and smooth navigation.
- API-driven content - dynamic data retrieval via GraphQL to ensure a scalable and future-proof solution.
Stack: WordPress, PHP, ACF, Gutenberg, WooCommerce, MySQL
Developed about 30 WordPress websites with custom themes, built with Advanced Custom Fields (ACF) and Gutenberg to provide customers with a flexible and easy-to-use administrative experience. Some projects also included WooCommerce for e-commerce.
- Wrap And Go - E-commerce for gift wrapping paper via school classes and associations.
- Hästosånt - E-commerce for horse accessories.
- ZacZess - E-commerce for horse clothing.
- Bilsportförsäkringar - Insurance site focused on motorsport.
- Golfförsäkringar - Insurance solutions for golfers.
- Eventförsäkringar - Specialized insurance for events.
- FeelNJoy - Virtual spa concept for workplaces.
- Stjärnglädje - Reuse and gift shop and cafe.
- PDK Riv och Sanering - Company page for a cleaning company.
- KBT Coacherna - Website for a CBT coaching business.
- Borås IT - IT services for private individuals.
- Smart Home Solutions - Smart home solutions and services.
- Pelle Glas - Company page for a glass workshop.
- MA Automation - Website for an electronics and automation company.