Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
16 changes: 12 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
_site
vendor/bundle/
.bundle
.DS_Store
Gemfile.lock
.sass-cache
.jekyll-cache
.jekyll-metadata
vendor
.idea

# Specific ignore for GitHub Pages
# GitHub Pages will always use its own deployed version of pages-gem
# This means GitHub Pages will NOT use your Gemfile.lock and therefore it is
# counterproductive to check this file into the repository.
# Details at https://github.com/github/pages-gem/issues/768
Gemfile.lock
2 changes: 1 addition & 1 deletion .ruby-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.3.0
3.4.2
27 changes: 27 additions & 0 deletions 404.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
permalink: /404.html
layout: default
---

<script>document.addEventListener('DOMContentLoaded', function () { plausible('404'); });</script>

<style type="text/css" media="screen">
.container {
margin: 10px auto;
max-width: 600px;
text-align: center;
}
h1 {
margin: 30px 0;
font-size: 4em;
line-height: 1;
letter-spacing: -1px;
}
</style>

<div class="container">
<h1>404</h1>

<p><strong>Page not found :(</strong></p>
<p>The requested page could not be found.</p>
</div>
7 changes: 5 additions & 2 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
source 'https://rubygems.org'
source "https://rubygems.org"

# note: github-pages installs jekyll 3.10 https://pages.github.com/versions/
gem 'github-pages', group: :jekyll_plugins
gem 'webrick' # Webrick is missing from ruby 3
gem 'jekyll-redirect-from', group: :jekyll_plugins
gem 'jekyll-sitemap', group: :jekyll_plugins
11 changes: 10 additions & 1 deletion _config.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,13 @@
url: https://www.sensorfu.com
title: SensorFu
url: https://sensorfu.com
timezone: UTC

include: [".well-known"]

# Build settings
# Disable github pages default theme
theme: null

plugins:
- jekyll-redirect-from
- jekyll-sitemap
131 changes: 83 additions & 48 deletions _includes/contact.html
Original file line number Diff line number Diff line change
@@ -1,52 +1,87 @@
<span class="anchor" id="contact"></span>
<div class="container-fluid darker text-center contactus">
<h2>Contact us</h2>
<br>
<div class="bg-black text-white p-4">
<div class="container-xl bg-black text-white p-4 p-sm-5">
<div class="row">
<div class="col-lg-4 col-md-4 col-sm-6 my-auto light">
<address>
<strong>SensorFu Oy</strong><br/>
Teknologiantie 11<br/>
90590 Oulu, Finland<br/><br>
</address>
</div>
<div class="col-lg-4 col-md-4 col-sm-6 my-auto light">
<address>
Business ID: 2811349-6<br/>
<a class="mail" href="mailto:contact@sensorfu.com">contact@sensorfu.com</a><br/>
+358 40 8019800<br/>
<a href="{{ site.url }}/privacy-policy.html">Privacy policy</a>
</address>
</div>
<div class="col-lg-4 col-md-4 col-sm-12 my-auto">
<ul class="list-inline banner-social-buttons">
<li class="list-inline-item my-1 px-auto">
<a href="https://medium.com/sensorfu/" class="btn btn-secondary btn-md">
<i class="fab fa-medium fa-fw"></i>
<span class="network-name">Medium</span>
</a>
</li>
<li class="list-inline-item my-1 px-auto">
<a href="https://twitter.com/sensorfu/" class="btn btn-secondary btn-md">
<i class="fab fa-twitter fa-fw"></i>
<span class="network-name">Twitter</span>
</a>
</li>
</ul>
<ul class="list-inline banner-social-buttons">
<li class="list-inline-item my-1 px-auto">
<a href="https://www.linkedin.com/company/sensorfu/" class="btn btn-secondary btn-md">
<i class="fab fa-linkedin fa-fw"></i>
<span class="network-name">LinkedIn</span>
</a>
</li>
<li class="list-inline-item my-1 px-auto">
<a href="https://github.com/sensorfu/" class="btn btn-secondary btn-md">
<i class="fab fa-github fa-fw"></i>
<span class="network-name">GitHub</span>
</a>
</li>
</ul>
</div>
<div class="col-lg-4 col-md-4 col-sm-6 my-auto light">
<address>
<h3 class="text-white">SensorFu Oy</h3>
Teknologiantie 11<br />
90590 Oulu, Finland<br />
Business ID: 2811349-6<br />
</address>
</div>
<div class="col-2">
<a class="btn btn-gradient" href="mailto:contact@sensorfu.com"
>Get in touch &rarr;</a
>
</div>

<div class="col-md-6 social-icons mt-4 mt-md-0">
<a
href="https://www.youtube.com/@sensorfu"
rel="noreferer noopener"
target="_blank"
>
<img
src="/assets/img/social-icons/youtube.svg"
alt="SensorFu on Youtube"
/>
</a>

<a
href="https://www.linkedin.com/company/sensorfu/"
rel="noreferer noopener"
target="_blank"
>
<img
src="/assets/img/social-icons/linkedin.svg"
alt="SensorFu on Linkedin"
/>
</a>

<a
href="https://github.com/sensorfu/"
rel="noreferer noopener"
target="_blank"
>
<img
src="/assets/img/social-icons/github.svg"
alt="SensorFu on Github"
/>
</a>

<a
href="https://medium.com/sensorfu/"
rel="noreferer noopener"
target="_blank"
>
<img
src="/assets/img/social-icons/medium.svg"
alt="SensorFu on Medium"
/>
</a>
</div>
</div>
</div>
</div>

<div class="bg-primary">
<div class="container-xl p-3 px-4 small">
<div class="row">
<div class="col-4">© 2026 SensorFu. All&nbsp;rights&nbsp;reserved.</div>
<div class="col-4 text-center">
<a class="text-decoration-none text-white" href="eu.html"
>Leverage from the EU</a
><br />
<a class="text-decoration-none text-white" href="eu.html"
>Co-funded by the European Union</a
>
</div>
<div class="col-4 text-end">
<a class="text-decoration-none text-white" href="/privacy-policy.html"
>Privacy Policy</a
>
</div>
</div>
</div>
</div>
103 changes: 39 additions & 64 deletions _includes/head.html
Original file line number Diff line number Diff line change
@@ -1,66 +1,41 @@
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="author" content="SensorFu Ltd">

<title>{{ page.title }}</title>

{% if page.custom_style == "globalot" %}
<link href="{{ site.url }}/vendor/splide/splide-core.min.css" rel="stylesheet">
{% elsif page.custom_style != "energy" %}
<!-- Bootstrap core CSS -->
<link href="{{ site.url }}/vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet">

<!-- Animate.css -->
<link href="{{ site.url }}/vendor/animate.css/animate.min.css" rel="stylesheet">

<!-- Font Awesome -->
<link href="{{ site.url }}/vendor/fontawesome/css/all.min.css" rel="stylesheet">
{% endif %}

<!-- Custom fonts for this template -->
{% if page.custom_style == "energy" or page.custom_style == "globalot" %}
<link href="{{ site.url }}/css/roboto.css" rel="stylesheet">
{% else %}
<link href="{{ site.url }}/css/latoweb.css" rel="stylesheet">
{% endif %}

{% if page.custom_style == "frontpage" %}
<link href="{{ site.url }}/css/frontpage.css" rel="stylesheet">
{% elsif page.custom_style == "energy" %}
<link href="{{ site.url }}/css/energy.css" rel="stylesheet">
{% elsif page.custom_style == "partners" %}
<link href="{{ site.url }}/css/partners.css" rel="stylesheet">
{% elsif page.custom_style == "globalot" %}
<link href="{{ site.url }}/css/globalot.css" rel="stylesheet">
{% else %}
<link href="{{ site.url }}/css/default.css" rel="stylesheet">
{% endif %}

<!-- Favicon -->
<link href="{{ site.url }}/favicon.png" rel="icon" type="image/png">

<!-- Open Graph Tags-->
<meta property="og:title" content="{{ page.title }}">
<meta property="og:type" content="website">
<meta property="og:url" content="{{ page.url | absolute_url }}">

{% if page.ogimage %}
<meta property="og:image" content="{{ page.ogimage | absolute_url }}">
{%endif %}

{% if page.description %}
<meta name="description" content="{{ page.description }}">
<meta property="og:description" content="{{ page.description }}">
{% endif %}

<!-- Twitter meta tags -->
<meta name="twitter:creator" content="@sensorfu">

<!-- Plausible.io -->
<script defer data-domain="sensorfu.com" src="https://plausible.io/js/script.outbound-links.file-downloads.js"></script>

{% if page.redirect %}
<meta http-equiv="Refresh" content="{{page.redirect.delay}}; url={{page.redirect.url}}" />
{% endif %}
<meta charset="utf-8" />
<meta
name="viewport"
content="width=device-width, initial-scale=1, shrink-to-fit=no"
/>
<meta name="author" content="SensorFu Ltd" />

<title>{{ page.title }}</title>

<link href="/assets/img/favicon.png" rel="icon" type="image/png" />
<link rel="stylesheet" href="/assets/bootstrap/css/bootstrap.min.css" />
<link rel="stylesheet" href="/assets/css/main.css" />

{% if page.layout == "frontpage" %}
<link rel="stylesheet" href="/assets/css/frontpage.css" />
{% endif %} {% if page.url == "/beacon.html" %}
<!-- <link rel="stylesheet" href="/assets/css/beacon.css"> -->
{% endif %} {% if page.preload_image %}
<link
rel="preload"
href="{{ page.preload_image | absolute_url }}"
as="image"
/>
{% endif %}

<!-- Open Graph Tags-->
<meta property="og:title" content="{{ page.title }}" />
<meta property="og:type" content="website" />
<meta property="og:url" content="{{ page.url | absolute_url }}" />

{% if page.ogimage %}
<meta property="og:image" content="{{ page.ogimage | absolute_url }}" />
{%endif %} {% if page.description %}
<meta name="description" content="{{ page.description }}" />
<meta property="og:description" content="{{ page.description }}" />
{% endif %}

<!-- Plausible.io -->
<script defer data-domain="sensorfu.com" src="https://plausible.io/js/script.outbound-links.file-downloads.js"></script>
</head>
29 changes: 16 additions & 13 deletions _includes/navigation.html
Original file line number Diff line number Diff line change
@@ -1,27 +1,30 @@
<!-- Navigation -->
<nav class="navbar navbar-expand-lg navbar-dark bg-dark fixed-top" id="mainNav">
<div class="container">
<a class="navbar-brand js-scroll-trigger" href="/">SensorFu</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarResponsive" aria-controls="navbarResponsive" aria-expanded="false" aria-label="Toggle navigation">
<nav class="navbar navbar-expand-md bg-primary-subtle sticky-top shadow-lg" data-bs-theme="dark">
<div class="container-xl px-3 px-lg-4">
<a class="navbar-brand fst-italic fw-bold" href="/">SensorFu</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav"
aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarResponsive">
<ul class="navbar-nav ml-auto">
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav ms-auto align-items-center gap-2 gap-lg-4">
<li class="nav-item">
<a class="nav-link js-scroll-trigger" href="/#page-top">Home</a>
<a class="nav-link active" aria-current="page" href="/">Home</a>
</li>
<li class="nav-item">
<a class="nav-link js-scroll-trigger" href="/#beacon">Beacon</a>
<a class="nav-link" href="/beacon.html">Beacon</a>
</li>
<li class="nav-item">
<a class="nav-link js-scroll-trigger" href="/whitepapers/">Whitepapers</a>
<li class="nav-item">
<a class="nav-link js-scroll-trigger" href="/partners.html">Partners</a>
<a class="nav-link" href="/resources.html">Resources</a>
</li>
<li class="nav-item">
<a class="nav-link js-scroll-trigger" href="/#aboutus">About Us</a>
<a class="nav-link" href="/partners.html">Partners</a>
</li>
<li class="nav-item">
<a class="nav-link js-scroll-trigger" href="/#contact">Contact</a>
<a class="nav-link text-nowrap" href="/about.html">About us</a>
</li>
<li class="nav-item ">
<a class="nav-link border border-white rounded-pill px-3 py-0" href="/#contact">Contact</a>
</li>
</ul>
</div>
Expand Down
15 changes: 15 additions & 0 deletions _includes/reference-carousel.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@

<div id="references" class="carousel-outer">
<div class="carousel-container container-xl">
<div class="carousel-track reference-track">
{% assign references = site.static_files | where_exp: "file", "file.path contains 'img/references/'" %}
{% for reference in references %}
<img src="{{ reference.path }}">
{% endfor %}
<!-- Add images second time for smooth looping -->
{% for reference in references %}
<img src="{{ reference.path }}">
{% endfor %}
</div>
</div>
</div>
12 changes: 1 addition & 11 deletions _includes/scripts.html
Original file line number Diff line number Diff line change
@@ -1,11 +1 @@
{% if page.custom_style == "energy" %}
<script src="{{ site.url }}/js/energy.js"></script>
{% elsif page.custom_style == "globalot" %}
<script src="{{ site.url }}/vendor/splide/splide.min.js"></script>
<script src="{{ site.url }}/js/globalot.js"></script>
{% else %}
<script src="{{ site.url }}/vendor/jquery/jquery.min.js"></script>
<script src="{{ site.url }}/vendor/bootstrap/js/bootstrap.bundle.min.js"></script>
<script src="{{ site.url }}/vendor/agency/agency.min.js"></script>
<script src="{{ site.url }}/vendor/jquery-easing/jquery-easing.min.js"></script>
{% endif %}
<script src="/assets/bootstrap/js/bootstrap.bundle.min.js"></script>
Loading