Skip to content

Commit 63867d7

Browse files
Merge pull request #19 from liberusoftware/copilot/update-homepage-contact-info
Overhaul homepage, footer, meta tags; add Contact/About/Privacy/Terms pages
2 parents 16e0a39 + 170eca9 commit 63867d7

File tree

13 files changed

+1129
-341
lines changed

13 files changed

+1129
-341
lines changed
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
<?php
2+
3+
namespace App\Http\Controllers;
4+
5+
use App\Mail\ContactMail;
6+
use Illuminate\Http\Request;
7+
use Illuminate\Support\Facades\Mail;
8+
9+
class ContactController extends Controller
10+
{
11+
public function index()
12+
{
13+
return view('contact');
14+
}
15+
16+
public function submit(Request $request)
17+
{
18+
$validated = $request->validate([
19+
'name' => ['required', 'string', 'max:100'],
20+
'email' => ['required', 'email', 'max:150'],
21+
'subject' => ['required', 'string', 'max:200'],
22+
'enquiry_type' => ['nullable', 'string', 'in:support,sales,general,partnership,other'],
23+
'message' => ['required', 'string', 'max:5000'],
24+
]);
25+
26+
try {
27+
Mail::to('office@liberu.co.uk')->send(new ContactMail($validated));
28+
} catch (\Exception $e) {
29+
return redirect()->route('contact')
30+
->withInput()
31+
->with('error', 'Sorry, we were unable to send your message. Please try contacting us directly at support@liberu.co.uk.');
32+
}
33+
34+
return redirect()->route('contact')
35+
->with('success', 'Thank you for your message. We will be in touch shortly.');
36+
}
37+
}

app/Mail/ContactMail.php

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
<?php
2+
3+
namespace App\Mail;
4+
5+
use Illuminate\Bus\Queueable;
6+
use Illuminate\Mail\Mailable;
7+
use Illuminate\Mail\Mailables\Content;
8+
use Illuminate\Mail\Mailables\Envelope;
9+
use Illuminate\Queue\SerializesModels;
10+
11+
class ContactMail extends Mailable
12+
{
13+
use Queueable, SerializesModels;
14+
15+
public function __construct(public readonly array $data) {}
16+
17+
public function envelope(): Envelope
18+
{
19+
return new Envelope(
20+
replyTo: [$this->data['email']],
21+
subject: '[Liberu Software Enquiry] ' . $this->data['subject'],
22+
);
23+
}
24+
25+
public function content(): Content
26+
{
27+
return new Content(
28+
view: 'emails.contact',
29+
);
30+
}
31+
}

public/favicon.svg

Lines changed: 5 additions & 0 deletions
Loading

public/logo.svg

Lines changed: 9 additions & 0 deletions
Loading

resources/views/about.blade.php

Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
@extends('layouts.guest')
2+
3+
@section('page_title', 'About Us')
4+
@section('meta_description', 'Learn about Liberu Software — a UK-based team building enterprise-grade, open-source Laravel applications for businesses worldwide.')
5+
@section('meta_keywords', 'About Liberu Software, UK software company, Laravel developers, open source software')
6+
@section('og_title', 'About Liberu Software')
7+
@section('og_description', 'Learn about Liberu Software — a UK-based team building enterprise-grade, open-source Laravel applications for businesses worldwide.')
8+
9+
@section('content')
10+
<div class="max-w-4xl mx-auto px-4 sm:px-6 lg:px-8 py-16 sm:py-24">
11+
12+
{{-- Page heading --}}
13+
<div class="mb-12">
14+
<p class="text-[#f5c518] text-sm font-semibold uppercase tracking-widest mb-3">About Us</p>
15+
<h1 class="text-3xl sm:text-5xl font-extrabold text-white mb-5 leading-tight">
16+
Building Software That Works<br class="hidden sm:block"> For Your Business
17+
</h1>
18+
<p class="text-neutral-400 text-lg leading-relaxed max-w-2xl">
19+
Liberu Software is a UK-based company dedicated to creating enterprise-grade, open-source Laravel applications
20+
that help organisations of all sizes operate more efficiently and grow with confidence.
21+
</p>
22+
</div>
23+
24+
{{-- Divider --}}
25+
<hr class="border-neutral-800 mb-12" />
26+
27+
{{-- Mission --}}
28+
<div class="mb-14">
29+
<h2 class="text-xl font-bold text-white mb-4">Our Mission</h2>
30+
<p class="text-neutral-400 leading-relaxed mb-4">
31+
We believe great software should be accessible to every business, not just those with enterprise budgets.
32+
That is why every platform we build is released as open source — giving teams the freedom to self-host,
33+
customise and contribute — while also offering professional support, hosting and managed services through
34+
the Liberu Group.
35+
</p>
36+
<p class="text-neutral-400 leading-relaxed">
37+
From accounting and CRM to genealogy and e-commerce, our growing portfolio of Laravel applications
38+
provides a unified, modern ecosystem that scales alongside your organisation.
39+
</p>
40+
</div>
41+
42+
{{-- Values --}}
43+
<div class="mb-14">
44+
<h2 class="text-xl font-bold text-white mb-6">What We Stand For</h2>
45+
<div class="grid grid-cols-1 sm:grid-cols-2 gap-5">
46+
@foreach ([
47+
['🔓', 'Open Source First', 'All our projects are freely available on GitHub. No vendor lock-in, no hidden costs.'],
48+
['🏗️', 'Enterprise Quality', 'Built on Laravel with Filament, Livewire and Tailwind CSS — production-ready from day one.'],
49+
['🇬🇧', 'UK-Based Team', 'Our engineers and support staff are based in the United Kingdom, delivering localised expertise.'],
50+
['🤝', 'Community Driven', 'We welcome contributions, bug reports and feature requests from the global developer community.'],
51+
] as [$icon, $title, $desc])
52+
<div class="bg-neutral-800/60 border border-neutral-700/60 rounded-xl p-5">
53+
<div class="text-2xl mb-3">{{ $icon }}</div>
54+
<h3 class="text-white font-semibold mb-1">{{ $title }}</h3>
55+
<p class="text-neutral-400 text-sm leading-relaxed">{{ $desc }}</p>
56+
</div>
57+
@endforeach
58+
</div>
59+
</div>
60+
61+
{{-- Liberu Group --}}
62+
<div class="mb-14">
63+
<h2 class="text-xl font-bold text-white mb-4">The Liberu Group</h2>
64+
<p class="text-neutral-400 leading-relaxed mb-6">
65+
Liberu Software is part of the wider Liberu Group — a family of companies providing complementary
66+
technology services to businesses across the UK and internationally.
67+
</p>
68+
<div class="grid grid-cols-1 sm:grid-cols-2 gap-4">
69+
@foreach ([
70+
['Liberu Group', 'https://www.liberugroup.com', 'Group holding company and strategic direction.'],
71+
['Liberu Software', 'https://www.liberusoftware.com', 'Open-source Laravel application development.'],
72+
['Liberu Services', 'https://www.liberuservices.com', 'Managed IT services and technical consultancy.'],
73+
['Liberu Hosting', 'https://www.liberuhosting.com', 'Reliable hosting tailored for Laravel applications.'],
74+
] as [$name, $url, $desc])
75+
<a href="{{ $url }}" target="_blank" rel="noopener noreferrer"
76+
class="group bg-neutral-800/40 hover:bg-neutral-800 border border-neutral-700/50 hover:border-[#f5c518]/40 rounded-xl p-5 transition-all duration-200 block">
77+
<div class="flex items-center justify-between mb-2">
78+
<h3 class="text-white font-semibold text-sm">{{ $name }}</h3>
79+
<svg class="w-4 h-4 text-neutral-600 group-hover:text-[#f5c518] transition-colors" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"><path stroke-linecap="round" stroke-linejoin="round" d="M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14"/></svg>
80+
</div>
81+
<p class="text-neutral-400 text-xs leading-relaxed">{{ $desc }}</p>
82+
</a>
83+
@endforeach
84+
</div>
85+
</div>
86+
87+
{{-- CTA --}}
88+
<div class="bg-neutral-800/60 border border-neutral-700/60 rounded-xl p-8 text-center">
89+
<h2 class="text-xl font-bold text-white mb-3">Want to Work With Us?</h2>
90+
<p class="text-neutral-400 text-sm mb-6">Get in touch to discuss how Liberu Software can support your business.</p>
91+
<a href="{{ url('/contact') }}"
92+
class="inline-flex items-center gap-2 bg-[#f5c518] hover:bg-yellow-400 text-neutral-900 font-bold px-7 py-3 rounded-lg transition-colors">
93+
Contact Us
94+
</a>
95+
</div>
96+
97+
</div>
98+
@endsection

0 commit comments

Comments
 (0)