Skip to content

Commit 46acc62

Browse files
committed
Add site mode management and under construction page
1 parent aa54d59 commit 46acc62

File tree

5 files changed

+349
-11
lines changed

5 files changed

+349
-11
lines changed

README.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,62 @@ Volovyk specializes in:
1111
- Dart & Flutter cross-platform development
1212
- Startup consulting and mobile app development
1313

14+
## Site Mode Management
15+
16+
### Site Mode Switcher Script
17+
18+
The `site-mode.sh` script allows you to easily switch between live and maintenance modes for the website.
19+
20+
#### Why This Script Exists
21+
22+
- **Maintenance Mode**: Quickly put the site into "under construction" mode during updates, server maintenance, or when you need to temporarily disable the site
23+
- **Search Engine Protection**: The site is configured to prevent indexing (robots.txt, meta tags), and maintenance mode reinforces this
24+
- **Professional Appearance**: Instead of showing broken pages during maintenance, visitors see a polished "under construction" page
25+
- **Easy Recovery**: Simple one-command restoration to live mode when maintenance is complete
26+
27+
#### Usage
28+
29+
```bash
30+
# Switch to under construction mode
31+
./site-mode.sh construction
32+
33+
# Restore live site
34+
./site-mode.sh live
35+
36+
# Show help and available options
37+
./site-mode.sh help
38+
```
39+
40+
#### File Structure
41+
42+
- `index.md` - Current active homepage
43+
- `index.md.backup` - Original site backup (created automatically)
44+
- `index.md.live` - Live site backup (created when switching to construction mode)
45+
- `site-mode.sh` - Mode switcher script
46+
47+
#### Manual Mode Switching
48+
49+
If you prefer manual control:
50+
51+
**Enable maintenance mode:**
52+
```bash
53+
cp index.md index.md.live
54+
# Replace index.md content with under construction HTML
55+
```
56+
57+
**Restore live site:**
58+
```bash
59+
cp index.md.backup index.md
60+
```
61+
62+
### Search Engine Protection
63+
64+
The site includes multiple layers of search engine protection:
65+
- `robots.txt` - Blocks all crawlers
66+
- Meta robots tags - `noindex, nofollow` on all pages
67+
- `.htaccess` - Server-level crawler blocking
68+
- Config settings - Additional Jekyll-level protection
69+
1470
## Development
1571

1672
To run the site locally:

index.md

Lines changed: 118 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,120 @@
11
---
2-
title: Volovyk
3-
layout: home
4-
description: Norwegian software consulting company - Azure, .NET Core, Delphi, Dart & Flutter development services.
5-
intro_image: "images/illustrations/pointing.svg"
6-
intro_image_absolute: true
7-
intro_image_hide_on_mobile: true
8-
show_call_box: true
2+
layout: null
3+
permalink: /
94
---
10-
11-
# Professional Software Consulting
12-
13-
Volovyk delivers scalable, maintainable solutions for modern software challenges. Based in Norway, we specialize in cloud-native development and cross-platform solutions.
5+
<!DOCTYPE html>
6+
<html lang="en">
7+
<head>
8+
<meta charset="UTF-8">
9+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
10+
<title>Under Construction - Volovyk</title>
11+
<meta name="robots" content="noindex, nofollow">
12+
<style>
13+
* {
14+
margin: 0;
15+
padding: 0;
16+
box-sizing: border-box;
17+
}
18+
19+
body {
20+
font-family: 'Arial', sans-serif;
21+
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
22+
height: 100vh;
23+
display: flex;
24+
justify-content: center;
25+
align-items: center;
26+
color: white;
27+
}
28+
29+
.container {
30+
text-align: center;
31+
max-width: 600px;
32+
padding: 40px 20px;
33+
background: rgba(255, 255, 255, 0.1);
34+
border-radius: 20px;
35+
backdrop-filter: blur(10px);
36+
box-shadow: 0 8px 32px rgba(31, 38, 135, 0.37);
37+
}
38+
39+
.logo {
40+
font-size: 3rem;
41+
font-weight: bold;
42+
margin-bottom: 20px;
43+
color: #fff;
44+
}
45+
46+
.title {
47+
font-size: 2.5rem;
48+
margin-bottom: 20px;
49+
color: #fff;
50+
}
51+
52+
.subtitle {
53+
font-size: 1.2rem;
54+
margin-bottom: 30px;
55+
opacity: 0.9;
56+
line-height: 1.6;
57+
}
58+
59+
.spinner {
60+
border: 4px solid rgba(255, 255, 255, 0.3);
61+
border-radius: 50%;
62+
border-top: 4px solid #fff;
63+
width: 60px;
64+
height: 60px;
65+
animation: spin 2s linear infinite;
66+
margin: 30px auto;
67+
}
68+
69+
@keyframes spin {
70+
0% { transform: rotate(0deg); }
71+
100% { transform: rotate(360deg); }
72+
}
73+
74+
.contact {
75+
margin-top: 30px;
76+
font-size: 1rem;
77+
opacity: 0.8;
78+
}
79+
80+
.contact a {
81+
color: #fff;
82+
text-decoration: none;
83+
border-bottom: 1px solid rgba(255, 255, 255, 0.5);
84+
transition: all 0.3s ease;
85+
}
86+
87+
.contact a:hover {
88+
border-bottom-color: #fff;
89+
opacity: 1;
90+
}
91+
92+
@media (max-width: 768px) {
93+
.title {
94+
font-size: 2rem;
95+
}
96+
.subtitle {
97+
font-size: 1rem;
98+
}
99+
.container {
100+
margin: 20px;
101+
padding: 30px 15px;
102+
}
103+
}
104+
</style>
105+
</head>
106+
<body>
107+
<div class="container">
108+
<div class="logo">🚧 VOLOVYK</div>
109+
<h1 class="title">Under Construction</h1>
110+
<p class="subtitle">
111+
We're working hard to bring you something amazing!<br>
112+
Our new website will be ready soon.
113+
</p>
114+
<div class="spinner"></div>
115+
<div class="contact">
116+
Need to reach us? Contact: <a href="mailto:info@volovyk.com">info@volovyk.com</a>
117+
</div>
118+
</div>
119+
</body>
120+
</html>

index.md.backup

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
---
2+
title: Volovyk
3+
layout: home
4+
description: Norwegian software consulting company - Azure, .NET Core, Delphi, Dart & Flutter development services.
5+
intro_image: "images/illustrations/pointing.svg"
6+
intro_image_absolute: true
7+
intro_image_hide_on_mobile: true
8+
show_call_box: true
9+
---
10+
11+
# Professional Software Consulting
12+
13+
Volovyk delivers scalable, maintainable solutions for modern software challenges. Based in Norway, we specialize in cloud-native development and cross-platform solutions.

site-mode.sh

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
#!/bin/bash
2+
3+
# Website Mode Switcher for Volovyk
4+
# Usage: ./site-mode.sh [construction|live]
5+
6+
MODE=${1:-"help"}
7+
8+
case $MODE in
9+
"construction")
10+
echo "🚧 Switching to UNDER CONSTRUCTION mode..."
11+
if [ -f "index.md.backup" ]; then
12+
cp index.md index.md.live
13+
echo "✅ Current site backed up as index.md.live"
14+
fi
15+
16+
# The under construction content is already in index.md
17+
echo "✅ Under construction page is now active"
18+
echo "📝 Your site will show the maintenance page"
19+
;;
20+
21+
"live")
22+
echo "🌐 Switching to LIVE mode..."
23+
if [ -f "index.md.backup" ]; then
24+
cp index.md.backup index.md
25+
echo "✅ Live site restored from backup"
26+
echo "📝 Your original site is now active"
27+
else
28+
echo "❌ No backup found (index.md.backup)"
29+
echo "Please restore your original index.md manually"
30+
fi
31+
;;
32+
33+
"help"|*)
34+
echo "Website Mode Switcher"
35+
echo "Usage: ./site-mode.sh [MODE]"
36+
echo ""
37+
echo "Modes:"
38+
echo " construction - Switch to under construction page"
39+
echo " live - Switch back to live site"
40+
echo " help - Show this help"
41+
echo ""
42+
echo "Files:"
43+
echo " index.md.backup - Original site backup"
44+
echo " index.md.live - Live site backup (when in construction mode)"
45+
;;
46+
esac

under-construction.html

Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,116 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
<head>
4+
<meta charset="UTF-8">
5+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
6+
<title>Under Construction - Volovyk</title>
7+
<meta name="robots" content="noindex, nofollow">
8+
<style>
9+
* {
10+
margin: 0;
11+
padding: 0;
12+
box-sizing: border-box;
13+
}
14+
15+
body {
16+
font-family: 'Arial', sans-serif;
17+
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
18+
height: 100vh;
19+
display: flex;
20+
justify-content: center;
21+
align-items: center;
22+
color: white;
23+
}
24+
25+
.container {
26+
text-align: center;
27+
max-width: 600px;
28+
padding: 40px 20px;
29+
background: rgba(255, 255, 255, 0.1);
30+
border-radius: 20px;
31+
backdrop-filter: blur(10px);
32+
box-shadow: 0 8px 32px rgba(31, 38, 135, 0.37);
33+
}
34+
35+
.logo {
36+
font-size: 3rem;
37+
font-weight: bold;
38+
margin-bottom: 20px;
39+
color: #fff;
40+
}
41+
42+
.title {
43+
font-size: 2.5rem;
44+
margin-bottom: 20px;
45+
color: #fff;
46+
}
47+
48+
.subtitle {
49+
font-size: 1.2rem;
50+
margin-bottom: 30px;
51+
opacity: 0.9;
52+
line-height: 1.6;
53+
}
54+
55+
.spinner {
56+
border: 4px solid rgba(255, 255, 255, 0.3);
57+
border-radius: 50%;
58+
border-top: 4px solid #fff;
59+
width: 60px;
60+
height: 60px;
61+
animation: spin 2s linear infinite;
62+
margin: 30px auto;
63+
}
64+
65+
@keyframes spin {
66+
0% { transform: rotate(0deg); }
67+
100% { transform: rotate(360deg); }
68+
}
69+
70+
.contact {
71+
margin-top: 30px;
72+
font-size: 1rem;
73+
opacity: 0.8;
74+
}
75+
76+
.contact a {
77+
color: #fff;
78+
text-decoration: none;
79+
border-bottom: 1px solid rgba(255, 255, 255, 0.5);
80+
transition: all 0.3s ease;
81+
}
82+
83+
.contact a:hover {
84+
border-bottom-color: #fff;
85+
opacity: 1;
86+
}
87+
88+
@media (max-width: 768px) {
89+
.title {
90+
font-size: 2rem;
91+
}
92+
.subtitle {
93+
font-size: 1rem;
94+
}
95+
.container {
96+
margin: 20px;
97+
padding: 30px 15px;
98+
}
99+
}
100+
</style>
101+
</head>
102+
<body>
103+
<div class="container">
104+
<div class="logo">🚧 VOLOVYK</div>
105+
<h1 class="title">Under Construction</h1>
106+
<p class="subtitle">
107+
We're working hard to bring you something amazing!<br>
108+
Our new website will be ready soon.
109+
</p>
110+
<div class="spinner"></div>
111+
<div class="contact">
112+
Need to reach us? Contact: <a href="mailto:info@volovyk.com">info@volovyk.com</a>
113+
</div>
114+
</div>
115+
</body>
116+
</html>

0 commit comments

Comments
 (0)