Add hero images.

This commit is contained in:
2025-07-13 15:41:31 -07:00
parent 188380873b
commit 396dd976d9
25 changed files with 407 additions and 34 deletions

View File

@@ -826,6 +826,9 @@ body.zen-mode-enable {
.\!mt-0 { .\!mt-0 {
margin-top: calc(var(--spacing) * 0) !important; margin-top: calc(var(--spacing) * 0) !important;
} }
.-mt-4 {
margin-top: calc(var(--spacing) * -4);
}
.mt-0 { .mt-0 {
margin-top: calc(var(--spacing) * 0); margin-top: calc(var(--spacing) * 0);
} }
@@ -883,9 +886,15 @@ body.zen-mode-enable {
.mr-3 { .mr-3 {
margin-right: calc(var(--spacing) * 3); margin-right: calc(var(--spacing) * 3);
} }
.mr-4 {
margin-right: calc(var(--spacing) * 4);
}
.mr-5 { .mr-5 {
margin-right: calc(var(--spacing) * 5); margin-right: calc(var(--spacing) * 5);
} }
.mr-6 {
margin-right: calc(var(--spacing) * 6);
}
.mr-auto { .mr-auto {
margin-right: auto; margin-right: auto;
} }
@@ -910,6 +919,9 @@ body.zen-mode-enable {
.mb-3 { .mb-3 {
margin-bottom: calc(var(--spacing) * 3); margin-bottom: calc(var(--spacing) * 3);
} }
.mb-4 {
margin-bottom: calc(var(--spacing) * 4);
}
.mb-5 { .mb-5 {
margin-bottom: calc(var(--spacing) * 5); margin-bottom: calc(var(--spacing) * 5);
} }
@@ -1101,6 +1113,24 @@ body.zen-mode-enable {
.max-h-3 { .max-h-3 {
max-height: calc(var(--spacing) * 3); max-height: calc(var(--spacing) * 3);
} }
.max-h-8 {
max-height: calc(var(--spacing) * 8);
}
.max-h-10 {
max-height: calc(var(--spacing) * 10);
}
.max-h-64 {
max-height: calc(var(--spacing) * 64);
}
.max-h-80 {
max-height: calc(var(--spacing) * 80);
}
.max-h-82 {
max-height: calc(var(--spacing) * 82);
}
.max-h-85 {
max-height: calc(var(--spacing) * 85);
}
.max-h-\[5rem\] { .max-h-\[5rem\] {
max-height: 5rem; max-height: 5rem;
} }
@@ -1333,9 +1363,15 @@ body.zen-mode-enable {
.justify-end { .justify-end {
justify-content: flex-end; justify-content: flex-end;
} }
.gap-2 {
gap: calc(var(--spacing) * 2);
}
.gap-4 { .gap-4 {
gap: calc(var(--spacing) * 4); gap: calc(var(--spacing) * 4);
} }
.gap-6 {
gap: calc(var(--spacing) * 6);
}
.gap-8 { .gap-8 {
gap: calc(var(--spacing) * 8); gap: calc(var(--spacing) * 8);
} }
@@ -1417,6 +1453,12 @@ body.zen-mode-enable {
.scroll-smooth { .scroll-smooth {
scroll-behavior: smooth; scroll-behavior: smooth;
} }
.\!rounded-full {
border-radius: calc(infinity * 1px) !important;
}
.\!rounded-lg {
border-radius: var(--radius-lg) !important;
}
.\!rounded-md { .\!rounded-md {
border-radius: var(--radius-md) !important; border-radius: var(--radius-md) !important;
} }
@@ -1686,6 +1728,9 @@ body.zen-mode-enable {
.p-1\.5 { .p-1\.5 {
padding: calc(var(--spacing) * 1.5); padding: calc(var(--spacing) * 1.5);
} }
.p-2 {
padding: calc(var(--spacing) * 2);
}
.p-4 { .p-4 {
padding: calc(var(--spacing) * 4); padding: calc(var(--spacing) * 4);
} }
@@ -1755,6 +1800,9 @@ body.zen-mode-enable {
.py-\[1px\] { .py-\[1px\] {
padding-block: 1px; padding-block: 1px;
} }
.pt-0 {
padding-top: calc(var(--spacing) * 0);
}
.pt-2 { .pt-2 {
padding-top: calc(var(--spacing) * 2); padding-top: calc(var(--spacing) * 2);
} }
@@ -2126,6 +2174,11 @@ body.zen-mode-enable {
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
transition-duration: var(--tw-duration, var(--default-transition-duration)); transition-duration: var(--tw-duration, var(--default-transition-duration));
} }
.transition-colors {
transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.transition-opacity { .transition-opacity {
transition-property: opacity; transition-property: opacity;
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
@@ -2323,6 +2376,27 @@ body.zen-mode-enable {
display: none; display: none;
} }
} }
.hover\:rounded {
&:hover {
@media (hover: hover) {
border-radius: 0.25rem;
}
}
}
.hover\:rounded-full {
&:hover {
@media (hover: hover) {
border-radius: calc(infinity * 1px);
}
}
}
.hover\:rounded-lg {
&:hover {
@media (hover: hover) {
border-radius: var(--radius-lg);
}
}
}
.hover\:border-transparent { .hover\:border-transparent {
&:hover { &:hover {
@media (hover: hover) { @media (hover: hover) {
@@ -3301,6 +3375,15 @@ body.zen-mode-enable {
} }
} }
} }
.dark\:hover\:bg-primary-800 {
&:is(.dark *) {
&:hover {
@media (hover: hover) {
background-color: rgba(var(--color-primary-800), 1);
}
}
}
}
.dark\:hover\:bg-primary-900 { .dark\:hover\:bg-primary-900 {
&:is(.dark *) { &:is(.dark *) {
&:hover { &:hover {

View File

@@ -15,3 +15,8 @@ html {
h1, h2, h3, h4, h5, h6, .main-menu, .decoration-primary-500 { h1, h2, h3, h4, h5, h6, .main-menu, .decoration-primary-500 {
font-family: cstf; font-family: cstf;
} }
figure {
margin: .5em;
padding: 0;
}

View File

@@ -29,6 +29,7 @@ googleAnalytics = "G-606W7SWX5E"
category = "categories" category = "categories"
author = "authors" author = "authors"
series = "series" series = "series"
person = "people"
[sitemap] [sitemap]
changefreq = 'daily' changefreq = 'daily'

View File

@@ -61,7 +61,7 @@ disableTextInHeader = false
showAuthor = false showAuthor = false
# showAuthorBottom = false # showAuthorBottom = false
showHero = true showHero = true
heroStyle = "background" # valid options: basic, big, background, thumbAndBackground heroStyle = "big" # valid options: basic, big, background, thumbAndBackground
layoutBackgroundBlur = true # only used when heroStyle equals background or thumbAndBackground layoutBackgroundBlur = true # only used when heroStyle equals background or thumbAndBackground
layoutBackgroundHeaderSpace = true # only used when heroStyle equals background layoutBackgroundHeaderSpace = true # only used when heroStyle equals background
showBreadcrumbs = true showBreadcrumbs = true
@@ -75,7 +75,7 @@ disableTextInHeader = false
invertPagination = false invertPagination = false
showReadingTime = true showReadingTime = true
showTableOfContents = true showTableOfContents = true
showRelatedContent = true showRelatedContent = false
relatedContentLimit = 3 relatedContentLimit = 3
showTaxonomies = true showTaxonomies = true
showAuthorsBadges = false showAuthorsBadges = false

View File

@@ -14,22 +14,20 @@ title: "Welcome to CSTF!"
<div class="prose dark:prose-invert max-w-3xl mx-auto pt-8"> <div class="prose dark:prose-invert max-w-3xl mx-auto pt-8">
As civil society organizations become increasingly dependent on digital tools, the question of who controls that technology becomes a matter of democratic importance.
The Civil Society Technology Foundation develops and disseminates open-source, self-hosted technologies that enable genuine digital sovereignty. We provide the tools, knowledge, and community support necessary for civil society to operate independently of surveillance-based platforms and extractive business models. The CSTF empowers individuals and communities to reclaim digital self-determination through the development and dissemination of open-source, self-hosted technologies.
Our work spans software development, educational resources, and community engagement—creating pathways to technological self-determination for organizations that can't afford to compromise their values.
<div class="flex justify-end"> <div class="flex justify-end">
{{< button href="/foundation/" target="_self">}} {{< button href="/foundation/">}}
Learn More about CSTF Learn More about CSTF
{{< /button >}} {{< /button >}}
</div> </div>
</div> </div>
<div class="flex flex-col gap-8 pt-16" > <div class="flex flex-col gap-4 pt-16" >
{{< article link="/articles/independent-technology/" >}} {{< article link="/articles/independent-technology/" class="shadow-lg" >}}
{{< article link="/articles/why-digital-sovereignty-matters/" >}} {{< article link="/articles/why-digital-sovereignty-matters/" class="shadow-lg" >}}
{{< article link="/articles/arguments-against-centralization/" >}} {{< article link="/articles/arguments-against-centralization/" class="shadow-lg" >}}
</div> </div>

View File

@@ -1,9 +1,10 @@
--- ---
title: "Articles" title: "Articles"
cardView: true
cascade: cascade:
showReadingTime: true showReadingTime: true
showWordCount: true showWordCount: true
params: params:
heroStyle: background heroStyle: big
--- ---

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 936 KiB

View File

@@ -2,6 +2,7 @@
title: The Importance of Independent Technology in Civil Society title: The Importance of Independent Technology in Civil Society
date: 2025-07-06 date: 2025-07-06
summary: Independent technology is essential for civil society to thrive in the digital age. This essay explores the problems of centralization, the benefits of digital self-determination, and how we can build a more equitable and resilient digital future. summary: Independent technology is essential for civil society to thrive in the digital age. This essay explores the problems of centralization, the benefits of digital self-determination, and how we can build a more equitable and resilient digital future.
featureImageCaption: "Photo by <a href=\"https://unsplash.com/@sahrulfikrilaitupa?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash\">Sahrul Laitupa</a> on <a href=\"https://unsplash.com/photos/a-young-man-sitting-at-a-desk-with-headphones-on-64ONLGrc0HQ?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash\">Unsplash</a>"
--- ---
## Introduction ## Introduction
@@ -174,7 +175,7 @@ The path we choose with AI—toward further centralization or toward democratiza
## Case Study: Wild Cloud ## Case Study: Wild Cloud
The Civil Society Technology Foundation's Wild Cloud project exemplifies the principles of independent technology in practice. This reference implementation demonstrates how civil society organizations can regain digital sovereignty through practical, accessible tools. The Civil Society Technology Foundation's [Wild Cloud project](/projects/wild-cloud/) exemplifies the principles of independent technology in practice. This reference implementation demonstrates how civil society organizations can regain digital sovereignty through practical, accessible tools.
Wild Cloud provides: Wild Cloud provides:

View File

@@ -0,0 +1,151 @@
---
title: Position Statements
date: 2025-07-06
weight: 60
---
The Civil Society Technology Foundation (CSTF) holds the following positions regarding technology, digital rights, and civil society. These statements represent our core beliefs and guide our work.
## 1. Digital Commons & Public Interest Technology
**Position: Some critical software must be developed outside of profit motives to serve the public interest.**
We believe that certain categories of software and digital infrastructure are too important to be driven primarily by commercial interests. Just as we recognize the need for public parks, libraries, and utilities, we need digital commons that are governed for public benefit rather than private gain.
Software that serves essential social functions—including communication platforms, identity systems, and information access tools—should be developed with public interest as the primary goal. When profit is the main driver, these systems inevitably prioritize engagement, data extraction, and lock-in over human well-being and community resilience.
This doesn't mean all software must be non-commercial, but rather that we need robust alternatives developed explicitly for public benefit. These alternatives often produce better results because they align with user needs rather than business imperatives.
## 2. Surveillance Advertising & Attention Exploitation
**Position: Surveillance-based advertising models are fundamentally harmful to individuals and society.**
We oppose business models that rely on ubiquitous tracking, psychological manipulation, and attention extraction. These approaches:
- Systematically violate privacy at scale
- Create incentives for addiction-promoting design
- Fund the development of increasingly manipulative technology
- Distort information ecosystems toward engagement rather than accuracy
- Convert human attention and behavior into corporate assets
Alternative funding mechanisms exist for digital services, including transparent subscriptions, community funding, public support, and contextual (non-surveillance) advertising. These approaches can support vibrant digital ecosystems without the harms of surveillance capitalism.
## 3. Censorship & Content Control
**Position: Content filtering and moderation should not be controlled by corporations or governments.**
We oppose centralized control over online expression, whether by commercial platforms or state authorities. When a few entities can determine what expression is allowed, both legitimate speech and vulnerable communities suffer.
Communities have diverse, contextual needs for content moderation that cannot be met through one-size-fits-all policies or algorithmic enforcement. True content governance requires:
- Community-determined standards
- Transparent, contestable processes
- Context sensitivity
- Distributed rather than centralized authority
By building federated, community-governed platforms, we can enable effective content management without centralizing control over expression.
## 4. Privacy & Personal Data
**Position: Privacy is a fundamental right that must be protected by design, not treated as an optional feature.**
We believe that everyone deserves meaningful control over their personal information. Current digital ecosystems systematically undermine privacy through:
- Surveillance-based business models
- Hidden data collection and sharing
- Complex, misleading consent mechanisms
- Insecure design and implementation
- Weak or absent legal protections
Privacy is not merely a personal preference but a necessary condition for freedoms of thought, association, and expression. Technology must be designed with privacy as a core requirement, not an afterthought.
## 5. Infrastructure Concentration
**Position: Digital infrastructure should not be concentrated in the hands of a few corporations or governments.**
We oppose the extreme concentration of control over critical digital infrastructure. When a handful of companies control cloud services, social platforms, app stores, and network access, they gain unprecedented power over society.
This concentration:
- Creates single points of failure for essential services
- Enables mass surveillance and data extraction
- Undermines innovation through monopolistic control
- Removes democratic accountability
- Increases vulnerability to both market and state exploitation
Digital resilience requires diverse, distributed infrastructure that no single entity can dominate or disrupt.
## 6. Messaging Infrastructure
**Position: Public messaging infrastructure should be a digital public good, not controlled by individuals or corporations.**
We believe that communication platforms that serve as de facto public squares should not be subject to the whims of individual owners like Elon Musk or Mark Zuckerberg. These platforms have become essential infrastructure for civic discourse, organizing, and information sharing.
When such infrastructure is privately controlled:
- Arbitrary rule changes can disrupt communities and vital communication
- Commercial incentives distort information flows
- Owners can impose their personal ideologies on global speech
- Essential public functions lack democratic accountability
Communication infrastructure should be built on open protocols, federation, and community governance rather than centralized corporate control.
## 7. Internet Access & Net Neutrality
**Position: Open Internet access is a human right that requires appropriate regulation.**
We believe that access to an open, neutral Internet is a fundamental right in the digital age. This requires preventing internet service providers (ISPs) from engaging in society-antagonistic practices such as:
- Violating network neutrality by discriminating between different types of content
- Implementing asymmetric speeds that privilege consumption over creation
- Using carrier-grade NAT and other techniques that undermine peer-to-peer connectivity
- Blocking or throttling competitive services
- Creating artificial scarcity through data caps and tiered access
Appropriate regulation is necessary to ensure that internet infrastructure serves the public interest rather than merely corporate profit.
## 8. Public Investment & Governance
**Position: Democratic societies must invest in public digital infrastructure with appropriate governance.**
We believe that governments have a responsibility to support and develop digital public goods, just as they invest in physical infrastructure and public services. This requires:
- Direct public funding for open source development
- Support for community-governed digital commons
- Procurement policies that prioritize open standards and software
- Investment in digital literacy and technical capacity
- Governance models that ensure public accountability
When government abdicates this responsibility, it cedes the digital future to corporate interests that are not aligned with the public good.
## 9. Technical Quality & User Agency
**Position: User-centered, community-driven technology consistently delivers better quality and respects user agency.**
We believe that technology developed with genuine respect for users—their needs, rights, and agency—produces superior results. Software and services that are accountable to their users, rather than to shareholders or advertisers, tend to be:
- More reliable and secure
- More respectful of user attention and capabilities
- Less bloated with unwanted features
- More adaptable to diverse contexts
- More aligned with human well-being
This position is not merely ideological but practical: when developers are aligned with users rather than conflicting commercial imperatives, they build better technology.
## 10. Digital Self-Determination
**Position: Individuals and communities have the right to technological self-determination.**
We believe that people should be able to understand, control, and meaningfully shape the technology that increasingly mediates their lives. This requires:
- Access to source code and technical knowledge
- The right to modify and adapt tools for local needs
- Control over personal data and digital identity
- Freedom to choose or create alternatives to dominant systems
- Protection from coercive digital dependencies
Digital self-determination is not a luxury but a necessity for maintaining human dignity and agency in the digital age.
---
These position statements reflect our values and inform our approach to building, advocating for, and supporting technology that serves civil society rather than undermining it. They are living statements that may evolve as technology and societal needs change, but they remain grounded in our core commitment to digital self-determination and the flourishing of civil society.

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 MiB

View File

@@ -2,6 +2,7 @@
title: Why Digital Sovereignty Matters title: Why Digital Sovereignty Matters
date: 2025-07-06 date: 2025-07-06
summary: Digital sovereignty is essential for individuals, communities, and civil society organizations to maintain control over their digital lives. This article explores the importance of digital sovereignty, the threats it faces, and practical steps toward achieving it. summary: Digital sovereignty is essential for individuals, communities, and civil society organizations to maintain control over their digital lives. This article explores the importance of digital sovereignty, the threats it faces, and practical steps toward achieving it.
featureImageCaption: "Photo by <a href=\"https://unsplash.com/@lemonvlad?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash\">Vladislav Klapin</a> on <a href=\"https://unsplash.com/photos/assorted-flag-YeO44yVTl20?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash\">Unsplash</a>"
--- ---
## What Is Digital Sovereignty? ## What Is Digital Sovereignty?

Binary file not shown.

Before

Width:  |  Height:  |  Size: 362 KiB

After

Width:  |  Height:  |  Size: 4.4 MiB

View File

@@ -1,7 +1,7 @@
--- ---
title: "Linux: The Operating System for Digital Sovereignty" title: "Linux: The Operating System for Digital Sovereignty"
date: 2025-01-15 date: 2025-01-15
featureImageCaption: "Credit: Frank Karlitschek. 2015-10-04. CC. \"A portrait of Richard Stallman that I made during the 30 years FSF party in Boston.\"" featureImageCaption: "Photo by <a href=\"https://unsplash.com/@wwarby?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash\">William Warby</a> on <a href=\"https://unsplash.com/photos/a-penguin-is-standing-on-a-rocky-area-mlDxrRUuDxc?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash\">Unsplash</a>"
summary: "Linux is more than just an operating system; it is a cornerstone of digital sovereignty for civil society organizations. This article explores how Linux empowers communities to reclaim control over their technology, ensuring independence, security, and adaptability in an increasingly centralized digital landscape." summary: "Linux is more than just an operating system; it is a cornerstone of digital sovereignty for civil society organizations. This article explores how Linux empowers communities to reclaim control over their technology, ensuring independence, security, and adaptability in an increasingly centralized digital landscape."
--- ---

Binary file not shown.

After

Width:  |  Height:  |  Size: 362 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 MiB

View File

@@ -1,6 +1,7 @@
--- ---
title: "Open Source: The Foundation of Digital Freedom" title: "Open Source: The Foundation of Digital Freedom"
date: 2025-01-15 date: 2025-01-15
featureImageCaption: "Credit: Frank Karlitschek. 2015-10-04. CC. \"A portrait of Richard Stallman that I made during the 30 years FSF party in Boston.\""
summary: "Open source is more than just a software development model; it is a philosophy that empowers individuals and communities to reclaim control over their digital lives. This article explores the principles of open source, its significance for civil society, and how it enables digital autonomy in an increasingly centralized tech landscape." summary: "Open source is more than just a software development model; it is a philosophy that empowers individuals and communities to reclaim control over their digital lives. This article explores the principles of open source, its significance for civil society, and how it enables digital autonomy in an increasingly centralized tech landscape."
--- ---

View File

@@ -1,10 +1,11 @@
--- ---
title: "Projects" title: "Projects"
cardView: true
headless: true
cascade: cascade:
showReadingTime: false showReadingTime: false
showWordCount: false showWordCount: false
showDate: false showDate: false
params: params:
heroStyle: background heroStyle: big
--- ---

View File

@@ -1,8 +0,0 @@
---
title: 'Education'
date: 2025-01-15
---
Curating and developing education resources.
Check out our [Learning articles](../learning/).

View File

@@ -1,10 +0,0 @@
---
title: 'Governance'
date: 2025-01-15
---
Transparency is paramount.
Governance is an evolving project.

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 54 KiB

View File

@@ -1,6 +1,8 @@
--- ---
title: Wild Cloud title: Wild Cloud
date: 2025-07-06 date: 2025-07-06
alias:
- /projects/
--- ---
Wild Cloud is the Civil Society Technology Foundation's reference implementation for personal and organizational self-hosted infrastructure. This project empowers individuals and organizations to run their own digital services without dependency on centralized corporate platforms. Wild Cloud is the Civil Society Technology Foundation's reference implementation for personal and organizational self-hosted infrastructure. This project empowers individuals and organizations to run their own digital services without dependency on centralized corporate platforms.

View File

@@ -0,0 +1,8 @@
<a
class="!rounded-lg bg-primary-600 px-4 py-2 !text-neutral !no-underline hover:!bg-primary-500 dark:bg-primary-800 dark:hover:!bg-primary-700"
{{ with .Get "href" }}href="{{ . }}"{{ end }}
{{ with .Get "target" }}target="{{ . }}"{{ end }}
{{ with .Get "rel" }}rel="{{ . }}"{{ end }}
role="button">
{{ .Inner }}
</a>

View File

@@ -0,0 +1,8 @@
<div class="flex cursor-pointer justify-end -mt-4">
<a
href="{{ .Params.href }}"
class="rounded-lg border border-primary-400 px-2 py-[1px] text-s text-primary-700 dark:border-primary-600 dark:text-primary-400 hover:bg-primary-100 dark:hover:bg-primary-800 transition-colors duration-200 hover:rounded-lg"
>
Read more
</a>
</div>