Websites and platforms that pay for themselves
I am Bruno Cristo, a full stack developer based in Madeira. For 5 years I have been building business websites, booking platforms and custom back-office systems. I do not just hand over a good-looking site — I hand over a tool that works for you.
First call with no strings attached · Reply within 24 hours
5+
Years of experience
Full time, since 2021
20+
Projects delivered
Websites, platforms and systems
5
Companies and clients
From Madeira to mainland Portugal
24h
Response time
On every quote request

Bruno Cristo
Full Stack Web Developer
Laravel and Next.js for businesses that need results, not promises.
- Based in
- Madeira, Portugal
- Availability
- Immediate
- Format
- On-site or remote
How I can help
Four ways to work with me. Each one starts with a conversation to check whether it makes sense to go ahead.
Business Website
For companies that need to be found and to look trustworthy.
A fast site that ranks well on Google and is built to turn visitors into enquiries. Multi-language from day one.
What is included
- Design tailored to your brand
- Technical SEO built in from the start
- Multi-language (PT, EN, FR, ES)
- Forms delivered straight to your inbox
- Manage your own content
Typical timeline: 2 to 4 weeks
Get a quote — Business WebsiteBooking Platform & E-commerce
For anyone selling services, experiences or products online.
Bookings or a shop with real availability, payments and automatic confirmations. Fewer phone calls, more closed sales.
What is included
- Bookings or cart with real availability
- Integrated online payments
- Automatic confirmation emails
- Dashboard for bookings and orders
- Sales reporting
Typical timeline: 4 to 8 weeks
Get a quote — Booking Platform & E-commerceBack-office & Management Systems
For teams losing hours every week to spreadsheets and manual work.
Software built around your process — not the other way round. It automates the repetitive work and gives you full control of your data.
What is included
- Automation of manual processes
- User and permission management
- Dashboards and reporting
- Integration with your existing systems
- Team training included
Typical timeline: 4 to 10 weeks
Get a quote — Back-office & Management SystemsMaintenance & Growth
For the site you already have that needs to stay secure and current.
Updates, backups, fixes and continuous improvements. Your website stops being the problem you keep postponing.
What is included
- Security updates
- Backups and monitoring
- Fixes and small improvements
- Monthly status report
Typical timeline: Monthly retainer
Get a quote — Maintenance & GrowthEvery project is quoted individually, once I understand what you need. No fixed packages and no surprises on the invoice.
Work delivered
Real projects, live and running. Each one solved a concrete business problem.
Client projects

Livraria Buchholz
Bookshop and e-commerce
- The challenge
- A historic bookshop needed to sell online without losing what sets it apart: its booksellers' curation and its cultural programme.
- The solution
- An e-commerce platform built from scratch — catalogue, customer accounts, events calendar and curation sections, all managed by the bookshop's own team.
The outcome
- A complete online shop, implemented and run by me end to end
- Cultural calendar and curation updated by the bookshop itself
- Customer accounts with order history
- Project led single-handedly, from first commit to production
- PHP (Laravel)
- MySQL
- E-commerce
- Backoffice
- Docker

Quinta Palmeira Gardens
Tourism, accommodation and dining
- The challenge
- A 19th-century estate with gardens, accommodation, a restaurant and a wellness offer had to convey all of it to an international visitor before they would book.
- The solution
- A multi-language Next.js website that pulls the four strands into a single narrative, with booking never more than a click away.
The outcome
- Four business areas presented without competing with each other
- Multi-language for the international visitor
- Booking reachable from anywhere on the site
- Next.js
- TypeScript
- Tailwind CSS
- Multi-idioma

EEGA Services
Accountancy and consulting
- The challenge
- An accountancy firm in Funchal wanted to be seen as a business partner rather than as another supplier of paperwork.
- The solution
- A multi-language Next.js website with practice areas, news and recruitment, plus a contact form that qualifies the enquiry from the outset.
The outcome
- Positioning built on value rather than price
- News and vacancies managed without a developer
- Multi-language, for resident and foreign clients alike
- Next.js
- TypeScript
- Tailwind CSS
- Multi-idioma

Boatrust Madeira
Yacht registration and management
- The challenge
- A technical, niche service that needed to establish credibility with international clients before the first contact.
- The solution
- A multi-language business website with services explained without jargon, client testimonials and a short path to getting in touch.
The outcome
- Professional presence in three languages (PT, EN, FR)
- Services presented clearly and geared towards a decision
- Content managed by the team, with no developer needed
- Laravel
- Tailwind CSS
- MySQL
- Alpine.js

Menezauto
Car dealership
- The challenge
- The dealership relied on third-party portals to show its stock and had no catalogue of its own, nor any way of capturing direct enquiries.
- The solution
- A website with a vehicle catalogue plus a back-office where the team publishes, edits and removes vehicles in minutes.
The outcome
- Its own catalogue, with no per-listing portal fees
- Enquiries land directly with the dealership
- A back-office simple enough to use without technical training
- Laravel
- Tailwind CSS
- MySQL
- Backoffice

Velvet Lounge Bar
Bar and events
- The challenge
- A lounge bar lives on atmosphere and events — two things a plain contact page cannot convey.
- The solution
- A Next.js website with gallery, events calendar and menu, keeping opening hours and address always visible, built for people deciding on a phone.
The outcome
- The feel of the venue conveyed before the visit
- Events calendar and gallery always current
- Hours, address and contact one tap away
- Next.js
- TypeScript
- Tailwind CSS
- Multi-idioma

Rent A Boat Madeira
Crewed boat charter
- The challenge
- Bookings were handled by phone and messages, risking double bookings and losing hours to the same repeated questions.
- The solution
- A multi-language booking platform presenting the fleet, with structured requests and centralised management.
The outcome
- Structured booking requests, with no message ping-pong
- Fleet and availability managed in one place
- Ready for international clients (PT, EN)
- Laravel
- Tailwind CSS
- MySQL
- Booking
Demos

Lawyer
Legal services
- The challenge
- In a sector where trust decides everything, an amateur online presence costs clients before the first meeting.
- The solution
- A restrained business website concept with clearly explained practice areas and a discreet, direct contact channel.
The outcome
- An image that matches the seriousness of the sector
- Practice areas explained in plain language
- Simple, frictionless contact
- Next.js
- TypeScript
- Tailwind CSS

Vinum Estate
Wine and wine tourism
- The challenge
- A wine estate sells heritage and prestige before it sells bottles — and has to check the visitor's age without ruining the first impression.
- The solution
- A Next.js website concept with built-in age verification, the wine collection, the estate's heritage, experiences and cellar visits, in several languages.
The outcome
- Age verification handled without breaking the experience
- Collection, heritage and experiences in a single narrative
- Multi-language, built for export and wine tourism
- Next.js
- TypeScript
- Tailwind CSS
- Multi-idioma
Your project could be next
If you recognised your own problem in any of these, let us talk about it.
Start a conversationFrom first contact to launch
No jargon, no surprises and no disappearing halfway through. You always know where your project stands.
Step 1 of 4: First conversation
30 minutes, free
We talk about what you need and what is holding you back today. If I am not the right person for the job, I will say so in this very call.
Step 2 of 4: Proposal and plan
2 to 3 days
You receive a written proposal with scope, timeline and a fixed price. What is included — and what is not — is clear before we start.
Step 3 of 4: Development
Weekly deliveries
You watch the project grow on a preview version. You give feedback along the way, not only at the end.
Step 4 of 4: Launch and aftercare
30 days included
I put everything live, train your team and stay available for 30 days of adjustments. Only then do you decide about a retainer.
What I put in writing
- A fixed price in the proposal, with no costs appearing at the end
- The code, the domain and the credentials stay yours
- Communication in plain language, without technical jargon
- 30 days of aftercare included once you go live
Tools I work with
I pick technology to fit the problem, not the trend. What matters is what still works five years from now.
Back-end
The business logic, the rules and the security nobody sees.
- PHP
- Laravel
- CodeIgniter
- REST APIs
- Node.js
- Autenticação & permissões
Front-end
The part your customer interacts with — fast and accessible.
- HTML5
- CSS / SCSS
- Tailwind CSS
- Bootstrap
- JavaScript
- TypeScript
- React
- Next.js
- Vue.js
- Alpine.js
Databases
Where the information lives, structured to last and to grow.
- MySQL
- MariaDB
- SQL Server
- Modelação de dados
- Migrações
- Otimização de queries
Tooling and method
How the work is versioned, tested and delivered predictably.
- Git
- GitHub
- GitLab
- Bitbucket
- Docker
- Azure DevOps
- Jira
- Agile / Scrum
- Code review
- Vercel
- SEO técnico
- Web Performance
- Acessibilidade (WCAG)
Sectors I have delivered for
- Business websites
- Booking platforms
- E-commerce
- Custom back-offices
- HR systems
- Payment integrations
Where I have worked
Seven roles across five companies, all in web development. The full track record, nothing left out.
- – Present6 monthsCurrent
Affinity
Full Stack Web Developer
Consultant assigned to the client LeYa. I develop the Lyvros e-commerce platform — fixes, new features, SEO, performance and accessibility — and ran the Livraria Buchholz platform single-handedly, from first commit to production.
Key deliveries
- Livraria Buchholz: implemented, developed and managed the project from scratch, on my own
- Lyvros: bug fixes and new features, under continuous development
- Lyvros SEO designed and implemented entirely by me
- Performance optimisation, substantially increasing the site's speed
- Accessibility improvements applied across the whole platform
- PHP (Laravel)
- Bootstrap
- MySQL
- GitLab
- Docker
- SEO técnico
- Web Performance
- Acessibilidade
- – 6 months
Francisco Menezes
Full Stack Web Developer
Responsible for building three platforms end to end: Menezauto, Rent Boat Madeira and Madeira Concierge.
Key deliveries
- Business websites built from scratch
- Back-offices for self-service content management
- Multi-language booking platform
- Full client autonomy over their own site
View recommendation letter — Francisco Menezes (opens in a new tab)- PHP (Laravel)
- Tailwind CSS
- MySQL
- Git
- Docker
- – 1 year
Yomp
Back-end Developer
Feature development for pharmacy-sector websites, within an Agile team.
Key deliveries
- Payment and checkout flow optimisation
- Automated issuing of transport documents
- Fewer manual errors in day-to-day operations
- Iterative delivery in sprints
- PHP (Laravel)
- MySQL
- REST APIs
- Vue.js
- Docker
- Jira
- – 4 months
ACIN iCloud Solutions
Web Developer
An HR management platform covering absences, holidays and contracts.
Key deliveries
- Complete absence and holiday module
- Contract and document management
- Employee administration
- Digitisation of previously paper-based processes
- PHP (CodeIgniter)
- Tailwind CSS
- SCSS
- MySQL
- Jira
- – 1 year and 7 months
Smartdev
Full Stack Web Developer
Built SmsExpress (bulk SMS delivery) and SmartHub (ticket management for the construction industry).
Key deliveries
- SmsExpress: segmented SMS delivery by group
- SmartHub: tickets, stock and workflow
- Better organisation of on-site operations
- New features for the internal system
View recommendation letter — Smartdev (opens in a new tab)- PHP (CodeIgniter, Laravel)
- SCSS
- Bootstrap
- MySQL
- Azure DevOps
- – 8 months
ACIN iCloud Solutions
Junior Developer
New modules and evolutionary maintenance of the internal system.
Key deliveries
- Application module development
- Evolutionary maintenance of production systems
- Continuous fixes and improvements
- PHP (CodeIgniter)
- SCSS
- MySQL
- Git
- Jira
- – 4 months
ACIN iCloud Solutions
Professional Internship
First exposure to development in a real environment, working on internal system modules.
Key deliveries
- Modules for the internal system
- Usability improvements
- First deliveries into production
- PHP (CodeIgniter, Laravel)
- SCSS
- Bootstrap
- MySQL
- Git
Education
Escola da APEL, Funchal
Technical Course in IT Systems Management and Programming
Design, development, deployment and maintenance of IT systems, with hands-on work in networking, databases and object-oriented programming.
Areas covered
- Systems design
- Development
- Deployment and maintenance
- Networking
- Databases
- Object-oriented programming
What it is like working with me
Quotes taken from signed recommendation letters. You can read the original document behind each one.
He carried out every task assigned to him with great precision and autonomy, without a single problem, showing solid knowledge across the various areas of full stack development. I recommend him without reservation.
Francisco Menezes
Management · Francisco Menezes Unipessoal Lda.
He always performed his duties as a Developer with professionalism, care and diligence. He is technically very competent, knows his craft, and works well within a team.
Recursos Humanos
Human Resources · Smartdev, S.A.
Before we talk
The questions that come up in almost every first conversation, answered straight.
How much does a website cost?
How long does it take?
Do you work with clients outside Madeira?
Who owns the code and the website?
Do you offer maintenance after launch?
Which technologies do you use, and why?
Will my site show up on Google?
Still have a question?
Ask me directlyLet us talk about your project
Tell me what you need. I reply within 24 hours — even if it is only to say I am not the right person for the job.
What happens next
- I read your enquiry and reply within 24 hours
- If it makes sense, we book a free 30-minute call
- Only after that do you receive a fixed-price proposal
Other ways to reach me
- Emailbrunocristo55@gmail.com
- Phone+351 924 423 249
- WhatsAppQuick reply (opens in a new tab)
- LocationMadeira, Portugal · remote too
- Response timeWithin 24 hours