add npm packages, start working on a call to action button for articles, add hardware dep article
All checks were successful
Hugo / build (push) Successful in 1m6s
All checks were successful
Hugo / build (push) Successful in 1m6s
This commit is contained in:
parent
b8addf6071
commit
498f77b0c9
5 changed files with 1688 additions and 4 deletions
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -11,6 +11,4 @@ hugo.linux
|
|||
|
||||
# Temporary lock file while building
|
||||
/.hugo_build.lock
|
||||
package.json
|
||||
package-lock.json
|
||||
node_modules
|
|
@ -1,6 +1,39 @@
|
|||
---
|
||||
title: "Hardware Deployment"
|
||||
title: "Hardware Installation"
|
||||
draft: false
|
||||
description: "Learn how to build Blowfish manually."
|
||||
description: "Learn how MycoSystems can help improve your business workflow through their hardware installation services."
|
||||
---
|
||||
|
||||
## Introduction
|
||||
|
||||
In this article, we will cover the benefits of our hardware installation services and how they can help your business or organization succeed.
|
||||
|
||||
## The Importance of Network Attached Storage (NAS)
|
||||
|
||||
A NAS offers an efficient and centralized storage system that allows multiple users within a network to access and share files securely. This is particularly important for businesses with remote workers or those needing to store large amounts of data, such as renders, media files, and design projects. We can install and configure your NAS to ensure smooth file sharing and optimal performance for your entire organization, we have experience with many different operating systems to make sure maintainence is a breeze:
|
||||
|
||||
- **CasaOS** — a simple, easy to maintain, open source operating system to manage storage and services. It comes with many "one-click install" services that take most of the work out of maintaining a complex deployment for internal services.
|
||||
|
||||
- **TrueNAS Scale** — based on linux, TrueNAS Scale is a fast, efficient, and extensible NAS. TrueNAS allows you to maintain periodic tests on large clusters of drives, containers for easy deployment of services like Syncthing or Minio, and has some of the most in-depth documentation of any OS we have experience with.
|
||||
|
||||
## Secure Office VPNs for Remote Workers
|
||||
|
||||
Remote work has become increasingly popular in recent years, studies over the past 3 years have shown significant links to higher productivity, lower burnout rates, and high satisfaction overall when employees or co-owners can choose their own hours and work from an environment where they feel most comfortable.
|
||||
|
||||
However, ensuring the security of remote workers' connections is paramount. We offer a fully managed remote access VPN based on WireGuard & Rosenpass, a "post-quantum-secure" encryption method. We also fully understand how important self-management is for small and medium-sized companies, so we provide deployments using [Firezone](https://www.firezone.dev/) and [netbird](https://netbird.io/) either fully managed by MycoSystems or managed by your own IT. Both pieces of software offer superior control over WireGuard without draining engineer time; both let you connect multiple private networks like offices, datacenters, etc. Both allow users to run client applications on Android, iOS, Linux, Windows, macOS, BSD, etc.
|
||||
|
||||
## Internal Clusters for Enhanced Compute
|
||||
|
||||
Processing large amounts of data and creating high-quality outputs require significant computational power in some cases.
|
||||
|
||||
We offer hardware installation services designed to help organizations create internal clusters that can distribute rendering tasks across multiple machines, greatly improving efficiency and speeding up the render process. This means faster turnaround times for projects.
|
||||
|
||||
What kind of software do we support?
|
||||
|
||||
- **Adobe Media Encoder**
|
||||
- **Blender**
|
||||
- **Meshroom**
|
||||
- **NerfStudio**
|
||||
- **Forgejo/Drone CI Actions**
|
||||
|
||||
#### Contact us today to learn more about how we can help streamline your workflow and improve productivity across your organization.
|
185
layouts/_default/single.html
Normal file
185
layouts/_default/single.html
Normal file
|
@ -0,0 +1,185 @@
|
|||
{{ define "main" }}
|
||||
{{ .Scratch.Set "scope" "single" }}
|
||||
|
||||
|
||||
<article>
|
||||
{{ if .Params.showHero | default (.Site.Params.article.showHero | default false) }}
|
||||
{{ $heroStyle := .Params.heroStyle }}
|
||||
{{ if not $heroStyle }}
|
||||
{{ $heroStyle = .Site.Params.article.heroStyle }}
|
||||
{{ end }}
|
||||
{{ $heroStyle := print "partials/hero/" $heroStyle ".html" }}
|
||||
{{ if templates.Exists $heroStyle }}
|
||||
{{ partial $heroStyle . }}
|
||||
{{ else }}
|
||||
{{ partial "partials/hero/basic.html" . }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
|
||||
<header id="single_header" class="mt-5 max-w-prose">
|
||||
{{ if .Params.showBreadcrumbs | default (.Site.Params.article.showBreadcrumbs | default false) }}
|
||||
{{ partial "breadcrumbs.html" . }}
|
||||
{{ end }}
|
||||
<h1
|
||||
class="mt-0 text-4xl font-extrabold text-neutral-900 dark:text-neutral"
|
||||
>
|
||||
{{ .Title | emojify }}
|
||||
</h1>
|
||||
<div
|
||||
class="mt-1 mb-6 text-base text-neutral-500 dark:text-neutral-400 print:hidden"
|
||||
>
|
||||
{{ partial "article-meta/basic.html" (dict "context" . "scope" "single") }}
|
||||
</div>
|
||||
|
||||
{{ $authorsData := .Site.Data.authors }}
|
||||
{{ $taxonomies := .Site.Taxonomies.authors }}
|
||||
{{ $baseURL := .Site.BaseURL }}
|
||||
{{ $taxonomyLink := 0 }}
|
||||
{{ $showAuthor := 0 }}
|
||||
|
||||
{{ if not (strings.HasSuffix $baseURL "/") }}
|
||||
{{ $baseURL = delimit (slice $baseURL "/") "" }}
|
||||
{{ end }}
|
||||
|
||||
{{ if not (.Params.showAuthorBottom | default ( .Site.Params.article.showAuthorBottom | default false)) }}
|
||||
|
||||
{{ if .Params.showAuthor | default (.Site.Params.article.showAuthor | default true) }}
|
||||
{{ $showAuthor = 1 }}
|
||||
{{ partial "author.html" . }}
|
||||
{{ end }}
|
||||
|
||||
{{ range $author := .Page.Params.authors }}
|
||||
{{ $authorData := index $authorsData $author }}
|
||||
{{- if $authorData -}}
|
||||
{{ range $taxonomyname, $taxonomy := $taxonomies }}
|
||||
{{ if (eq $taxonomyname $author) }}
|
||||
{{ $taxonomyLink = delimit (slice $baseURL "/authors/" $author) "" }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ partial "author-extra.html" (dict "context" . "data" $authorData "link" $taxonomyLink) }}
|
||||
{{- end -}}
|
||||
{{ end }}
|
||||
|
||||
{{ if or $taxonomyLink $showAuthor }}
|
||||
<div class="mb-5"></div>
|
||||
{{ end }}
|
||||
|
||||
{{ end }}
|
||||
|
||||
</header>
|
||||
|
||||
<section
|
||||
class="flex flex-col max-w-full mt-0 prose dark:prose-invert lg:flex-row"
|
||||
>
|
||||
{{ if or (and (.Params.showTableOfContents | default (.Site.Params.article.showTableOfContents | default false)) (in
|
||||
.TableOfContents "<ul")) (.Site.Params.article.showRelatedPosts | default false)
|
||||
}}
|
||||
<div
|
||||
class="order-first lg:ml-auto px-0 lg:order-last ltr:lg:pl-8 rtl:lg:pr-8"
|
||||
>
|
||||
<div
|
||||
class="toc ltr:pl-5 rtl:pr-5 print:hidden lg:sticky {{ if hasPrefix .Site.Params.header.layout "fixed" -}}
|
||||
lg:top-[140px]
|
||||
{{ else }}
|
||||
lg:top-10
|
||||
{{ end }}
|
||||
"
|
||||
>
|
||||
{{ if and (.Params.showTableOfContents | default (.Site.Params.article.showTableOfContents | default false)) (in
|
||||
.TableOfContents "<ul")
|
||||
}}
|
||||
{{ partial "toc.html" . }}
|
||||
{{ end }}
|
||||
{{ if .Site.Params.article.showRelatedPosts |
|
||||
default false
|
||||
}}
|
||||
sd
|
||||
{{ end }}
|
||||
</div>
|
||||
</div>
|
||||
{{ end }}
|
||||
|
||||
|
||||
<div class="min-w-0 min-h-0 max-w-fit">
|
||||
{{ partial "series/series.html" . }}
|
||||
|
||||
|
||||
<div class="article-content max-w-prose mb-20">
|
||||
{{ .Content | emojify }}
|
||||
<div>
|
||||
<div
|
||||
class="flex px-4 py-2 mb-8 text-base rounded-md bg-primary-100 dark:bg-primary-900"
|
||||
>
|
||||
<span
|
||||
class="flex items-center justify-between grow dark:text-neutral-300"
|
||||
><span class="prose dark:prose-invert"
|
||||
>Like what you see? Drop us a message!</span
|
||||
>
|
||||
<a href="mailto:contact@myco.systems"
|
||||
><button
|
||||
class="px-4 !text-neutral !no-underline rounded-md bg-primary-600 hover:!bg-primary-500 dark:bg-primary-800 dark:hover:!bg-primary-700"
|
||||
>
|
||||
contact@myco.systems
|
||||
</button></a
|
||||
></span
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{ if (.Params.showAuthorBottom | default ( .Site.Params.article.showAuthorBottom | default false)) }}
|
||||
|
||||
{{ if .Params.showAuthor | default (.Site.Params.article.showAuthor | default true) }}
|
||||
{{ $showAuthor = 1 }}
|
||||
{{ partial "author.html" . }}
|
||||
{{ end }}
|
||||
|
||||
{{ range $author := .Page.Params.authors }}
|
||||
{{ $authorData := index $authorsData $author }}
|
||||
{{- if $authorData -}}
|
||||
{{ range $taxonomyname, $taxonomy := $taxonomies }}
|
||||
{{ if (eq $taxonomyname $author) }}
|
||||
{{ $taxonomyLink = delimit (slice $baseURL "/authors/" $author) "" }}
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ partial "author-extra.html" (dict "context" . "data" $authorData "link" $taxonomyLink) }}
|
||||
{{- end -}}
|
||||
{{ end }}
|
||||
|
||||
{{ if or $taxonomyLink $showAuthor }}
|
||||
<div class="mb-10"></div>
|
||||
{{ end }}
|
||||
|
||||
{{ end }}
|
||||
|
||||
{{ partial "series/series-closed.html" . }}
|
||||
{{ partial "sharing-links.html" . }}
|
||||
{{ partial "related.html" . }}
|
||||
</div>
|
||||
|
||||
{{ $translations := .AllTranslations }}
|
||||
{{ with .File }}
|
||||
{{ $path := .Path }}
|
||||
{{ range $translations }}
|
||||
{{ $lang := print "." .Lang ".md" }}
|
||||
{{ $path = replace $path $lang ".md" }}
|
||||
{{ end }}
|
||||
<script>
|
||||
var oid = "views_{{ $path }}"
|
||||
var oid_likes = "likes_{{ $path }}"
|
||||
</script>
|
||||
{{ end }}
|
||||
{{ $jsPage := resources.Get "js/page.js" }}
|
||||
{{ $jsPage = $jsPage | resources.Minify | resources.Fingerprint "sha512" }}
|
||||
<script
|
||||
type="text/javascript"
|
||||
src="{{ $jsPage.RelPermalink }}"
|
||||
integrity="{{ $jsPage.Data.Integrity }}"
|
||||
></script>
|
||||
</section>
|
||||
<footer class="pt-8 max-w-prose print:hidden">
|
||||
{{ partial "article-pagination.html" . }}
|
||||
</footer>
|
||||
</article>
|
||||
{{ end }}
|
1458
package-lock.json
generated
Normal file
1458
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load diff
10
package.json
Normal file
10
package.json
Normal file
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"dependencies": {
|
||||
"caniuse-lite": "^1.0.30001620",
|
||||
"tailwindcss": "^3.4.3"
|
||||
},
|
||||
"devDependencies": {
|
||||
"prettier": "^3.2.5",
|
||||
"prettier-plugin-go-template": "^0.0.15"
|
||||
}
|
||||
}
|
Loading…
Add table
Reference in a new issue