Compare commits
13 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| c1f8934637 | |||
| 824e3a1cfa | |||
| 9b143c942b | |||
| f8265574dc | |||
| 01f188f95c | |||
| 908f90ad04 | |||
| 30ce20565f | |||
| 80e44e9dca | |||
| a2d4cfc764 | |||
| 9f37d75a99 | |||
| 9604c4ba70 | |||
| 7df9adc69a | |||
| 696596068f |
@@ -46,12 +46,12 @@ npx astro dev
|
||||
|
||||
# To release a new version
|
||||
|
||||
## Build in the docker image (make sure you have Docker installed!)
|
||||
## Build the Docker image (this requires having [Docker](https://docs.docker.com/engine/install/) installed!)
|
||||
|
||||
Set the version to the next [semantic version](https://semver.org/) after the version posted at [our co-op cloud's packages site](https://git.coopcloud.tech/RTM/-/packages) under "rtmwebsite":
|
||||
|
||||
``` bash
|
||||
version=<specify-version>
|
||||
version=<specify-version> # example: if the semantic version you see for "rtmwebsite" is 0.0.1, then put version=0.0.2 here since we want to deploy the next version
|
||||
docker build --platform linux/amd64 -t git.coopcloud.tech/rtm/rtmwebsite:$version .
|
||||
```
|
||||
|
||||
@@ -68,7 +68,11 @@ At [our co-op cloud's packages site](https://git.coopcloud.tech/RTM/-/packages),
|
||||
|
||||
## Update recipe
|
||||
|
||||
We use a [private recipe](https://git.coopcloud.tech/RTM/rtm-astro-recipe) to deploy this website. This step needs Wireguard to be activated (download Wireguard and ask Sootie's owner to create a config for you and give you Docker permissions). The following examples will assume your name in Sootie's config is "blueberry"!
|
||||
### One-time Setup
|
||||
|
||||
We use a [private recipe](https://git.coopcloud.tech/RTM/rtm-astro-recipe) to deploy this website. This step needs Tailscale to be activated. Follow our [Fleet Setup and Access Instructions](https://nextcloud.resisttechmonopolies.online/apps/collectives/RTM-Reference-2/Fleet-Setup-and-access-12904) and get set up on Laylotta.
|
||||
|
||||
The following examples will assume your name in Sootie's config is "blueberry"!
|
||||
|
||||
You will need to have wget (`brew install wget` on mac) and [abra](https://docs.coopcloud.tech/abra/) installed.
|
||||
|
||||
@@ -76,7 +80,6 @@ Create an SSH key to use with Sootie with the following command. Take note of th
|
||||
|
||||
```ssh-keygen -t ed25519```
|
||||
|
||||
|
||||
Run the following commands to install the SSH key to Sootie as an authorized key:
|
||||
|
||||
```
|
||||
@@ -84,7 +87,6 @@ ssh-copy-id -i $HOME/.ssh/rtm.pub blueberry@resisttechmonopolies.online
|
||||
ssh -i $HOME/.ssh/rtm 'blueberry@resisttechmonopolies.online'
|
||||
```
|
||||
|
||||
|
||||
In the `$HOME/.ssh/config` file (which you may have to create if it does not exist), paste the following:
|
||||
|
||||
```
|
||||
@@ -97,32 +99,36 @@ Host resisttechmonopolies.online
|
||||
|
||||
You should now be able to SSH into Sootie with just the command `ssh resisttechmonopolies.online`
|
||||
|
||||
|
||||
Run the following command (outside of the terminal in which you ran ssh in the previous step)
|
||||
Run the following command (OUTSIDE of the terminal in which you ran ssh in the previous step)
|
||||
|
||||
```abra server add resisttechmonopolies.online```
|
||||
|
||||
Clone the `sootie-config` repo into your `$HOME/.abra/servers/resisttechmonopolies.online` directory:
|
||||
Clone the `rtm-config` repo:
|
||||
|
||||
``` bash
|
||||
git clone https://git.coopcloud.tech/RTM/sootie-config.git .
|
||||
# DON'T FORGET THE . AT THE END OF THE COMMAND
|
||||
git clone https://git.coopcloud.tech/RTM/rtm-config.git
|
||||
```
|
||||
|
||||
Clone the `rtm-astro-recipe` repo into your `$HOME/.abra/recipes` directory:
|
||||
|
||||
```git clone https://git.coopcloud.tech/RTM/rtm-astro-recipe.git```
|
||||
|
||||
### Every time you deploy
|
||||
|
||||
Update the version number to the latest in
|
||||
Make sure you are connected to Laylotta on Tailscale.
|
||||
|
||||
Update the version number to the latest (the one that you pushed to the Gitea registry previously) in
|
||||
|
||||
``` bash
|
||||
.abra/servers/resisttechmonopolies.online/resisttechmonopolies.online.env
|
||||
rtm-config/abra/servers/laylotta.resisttechmonopolies.online/resisttechmonopolies.online.env
|
||||
```
|
||||
|
||||
Then
|
||||
Then make sure you are in the rtm-config directory and run the following commands:
|
||||
|
||||
``` bash
|
||||
abra app undeploy resisttechmonopolies.online
|
||||
# wait 10 seconds
|
||||
# verify that there is a 404 page at https://resisttechmonopolies.online/
|
||||
|
||||
abra app deploy resisttechmonopolies.online
|
||||
```
|
||||
# verify that the new version is present at https://resisttechmonopolies.online/
|
||||
```
|
||||
@@ -0,0 +1,2 @@
|
||||
User-agent: *
|
||||
Disallow: /
|
||||
@@ -10,15 +10,26 @@ const { title, bigTech, alternatives, bgClass } = Astro.props;
|
||||
---
|
||||
|
||||
<div class={`border rounded-lg p-6 shadow-md ${bgClass} text-gray-900`}>
|
||||
<h2 class="text-2xl font-semibold mb-4">{title}</h2>
|
||||
<p class="text-base mb-4"><span class="line-through">Big Tech Option: {bigTech}</span></p>
|
||||
<h2 class="mb-4 text-2xl font-semibold">{title}</h2>
|
||||
<p class="mb-4 text-base">
|
||||
<span class="line-through">Big Tech Option: {bigTech}</span>
|
||||
</p>
|
||||
<ul class="space-y-4">
|
||||
{alternatives.map(alt => (
|
||||
<li>
|
||||
<h3 class="text-lg font-bold underline">{alt.name}</h3>
|
||||
<p>{alt.description}</p>
|
||||
<a href={alt.url} class="text-blue-500 hover:text-blue-700">Website</a>
|
||||
</li>
|
||||
))}
|
||||
{
|
||||
alternatives.map((alt) => (
|
||||
<li>
|
||||
<h3 class="text-lg font-bold underline">{alt.name}</h3>
|
||||
<p>{alt.description}</p>
|
||||
<a
|
||||
href={alt.url}
|
||||
class="text-blue-500 hover:text-blue-700"
|
||||
rel="noopener noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
Website
|
||||
</a>
|
||||
</li>
|
||||
))
|
||||
}
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
@@ -8,9 +8,9 @@ interface NavbarProps {
|
||||
const NAV_ITEMS = [
|
||||
{ href: "/#aboutus", label: "About Us", activeKey: "AboutUs", text: "text-red-400", darkText: "dark:text-red-400" },
|
||||
{ href: "/#whatwereupto", label: "What We're Up To", activeKey: "WhatWereUpTo", text: "text-orange-400", darkText: "dark:text-orange-400" },
|
||||
{ href: "/#services", label: "Services", activeKey: "Services", text: "text-green-400", darkText: "dark:text-green-400" },
|
||||
{ href: "/#bigtechalternatives", label: "Big Tech Alternatives", activeKey: "BigTechAlternatives", text: "text-purple-400", darkText: "dark:text-purple-400" },
|
||||
// TODO once we have these sections done!
|
||||
// { href: "", label: "Services", activeKey: "Services", text: "text-green-400", darkText: "dark:text-green-400" },
|
||||
// TODO once we have this section done!
|
||||
// { href: "", label: "Calendar", activeKey: "Calendar", text: "text-blue-400", darkText: "dark:text-blue-400" },
|
||||
];
|
||||
|
||||
@@ -19,7 +19,7 @@ export default function Navbar(navbarProps: NavbarProps) {
|
||||
const [isShowingHamburgerFullMenu, setIsShowingHamburgerFullMenu] = useState(false);
|
||||
|
||||
return (
|
||||
<div className={cn("bg-white dark:bg-black")}>
|
||||
<div className={cn("bg-white dark:bg-black px-4")}>
|
||||
<div className={cn("flex flex-row items-center justify-between pb-4 pt-4")}>
|
||||
<a href="/" onClick={() => { setActivePage("Home") }}>
|
||||
<div className={cn("flex items-center gap-3")}>
|
||||
@@ -33,7 +33,7 @@ export default function Navbar(navbarProps: NavbarProps) {
|
||||
/> */}
|
||||
|
||||
<h1 className={cn(
|
||||
"text-2xl md:text-4xl font-bold",
|
||||
"text-2xl md:text-3xl font-bold",
|
||||
activePage === "Home" && "underline",
|
||||
)}>Resist Tech Monopolies</h1>
|
||||
</div>
|
||||
@@ -48,7 +48,7 @@ export default function Navbar(navbarProps: NavbarProps) {
|
||||
setActivePage(activeKey)
|
||||
}}
|
||||
className={cn(
|
||||
"transition-colors text-xl md:text-2xl font-bold",
|
||||
"transition-colors md:text-2xl font-bold",
|
||||
text,
|
||||
darkText,
|
||||
activePage == activeKey && "underline",
|
||||
@@ -66,7 +66,7 @@ export default function Navbar(navbarProps: NavbarProps) {
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{isShowingHamburgerFullMenu && <div className={cn("flex md:hidden flex-col gap-4 bg-[#ece8fc] p-2 mb-2")}>
|
||||
{isShowingHamburgerFullMenu && <div className={cn("flex md:hidden flex-col gap-4 bg-white p-2 mb-2")}>
|
||||
{NAV_ITEMS.map(({ href, label, activeKey, text, darkText }) => (
|
||||
<a
|
||||
key={href}
|
||||
|
||||
@@ -1,64 +1,130 @@
|
||||
<h1 class="text-3xl font-semibold">Points of Unity</h1>
|
||||
|
||||
<p class="mb-4">
|
||||
Our community agreements and decision-making process describe <em>how</em> we work together. The points of unity are the broader philosophies that we're working towards as a group. Perhaps people aren't 100% aligned individually, but this is what the group as a whole believes in when showing up to the work.
|
||||
Our community agreements and decision-making process describe <em>how</em> we work
|
||||
together. The points of unity are the broader philosophies that we're working towards
|
||||
as a group. Perhaps people aren't 100% aligned individually, but this is what the
|
||||
group as a whole believes in when showing up to the work.
|
||||
</p>
|
||||
|
||||
<h2 class="text-2xl font-semibold mt-10 mb-2">Grounding</h2>
|
||||
<h2 class="mb-2 mt-10 text-2xl font-semibold">Grounding</h2>
|
||||
|
||||
<p class="mb-4">
|
||||
We situate ourselves in our context - as Seattle residents and as users and creators of the technologies we aim to resist. We are seeing a long-spanning rise of fascism within national governments here and abroad. In parallel is the increasing power of tech companies over our lives through surveillance and the provisioning of everyday needs, from employment to how we get our internet utilities in the first place. There are rising income disparities across the nation, but also more specifically across everyone who can be considered a "tech worker": from a CEO, to a software engineer to a tech campus cafeteria worker to a child enslaved to mine cobalt in the Congo.
|
||||
We situate ourselves in our context - as Seattle residents and as users and
|
||||
creators of the technologies we aim to resist. We are seeing a long-spanning
|
||||
rise of fascism within national governments here and abroad. In parallel is
|
||||
the increasing power of tech companies over our lives through surveillance and
|
||||
the provisioning of everyday needs, from employment to how we get our internet
|
||||
utilities in the first place. There are rising income disparities across the
|
||||
nation, but also more specifically across everyone who can be considered a
|
||||
"tech worker": from a CEO, to a software engineer to a tech campus cafeteria
|
||||
worker to a child enslaved to mine cobalt in the Congo.
|
||||
</p>
|
||||
|
||||
<p class="mb-4">
|
||||
We know that technology intersects with and amplifies systems of oppression, from anti-Black racism to classism, ableism, cisheteropatriarchy, etc. Big tech permeates all aspects of life in Seattle, but to name a few ways:
|
||||
We know that technology intersects with and amplifies systems of oppression,
|
||||
from anti-Black racism to classism, ableism, cisheteropatriarchy, etc. Big
|
||||
tech permeates all aspects of life in Seattle, but to name a few ways:
|
||||
</p>
|
||||
|
||||
<ul class="list-disc pl-8 mb-4 space-y-2">
|
||||
<li>The rise of a <a href="https://stopsurveillancecity.wordpress.com/" class="font-bold underline hover:text-gray-600">Surveillance City</a> in Seattle facilitates the tracking of out-of-state people seeking abortions, the kidnapping of migrants, and the increased surveillance and criminalization of sex workers, the visibly unhoused, and poor and racialized communities.</li>
|
||||
<li>The <strong>environmental racism</strong> and community impacts of <strong>data centers</strong>, both from the AI bubble and the demand for more data processing that comes with surveillance capitalism.</li>
|
||||
<li><strong>The AI genocide</strong> in Palestine abetted by Google, Amazon, Boeing and Microsoft, all local Seattle employers.</li>
|
||||
<li>Rising <strong>gentrification</strong> and <strong>income inequality</strong> that comes from financialization of real estate and the gentrifying waves of tech workers moving into the city.</li>
|
||||
<ul class="mb-4 list-disc space-y-2 pl-8">
|
||||
<li>
|
||||
The rise of a <a
|
||||
href="https://stopsurveillancecity.wordpress.com/"
|
||||
class="font-bold underline hover:text-gray-600"
|
||||
rel="noopener noreferrer"
|
||||
target="_blank">Surveillance City</a
|
||||
> in Seattle facilitates the tracking of out-of-state people seeking abortions,
|
||||
the kidnapping of migrants, and the increased surveillance and criminalization
|
||||
of sex workers, the visibly unhoused, and poor and racialized communities.
|
||||
</li>
|
||||
<li>
|
||||
The <strong>environmental racism</strong> and community impacts of <strong
|
||||
>data centers</strong
|
||||
>, both from the AI bubble and the demand for more data processing that
|
||||
comes with surveillance capitalism.
|
||||
</li>
|
||||
<li>
|
||||
<strong>The AI genocide</strong> in Palestine abetted by Google, Amazon, Boeing
|
||||
and Microsoft, all local Seattle employers.
|
||||
</li>
|
||||
<li>
|
||||
Rising <strong>gentrification</strong> and <strong>income inequality</strong
|
||||
> that comes from financialization of real estate and the gentrifying waves of
|
||||
tech workers moving into the city.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<p class="mb-4">
|
||||
Some of us are employed by Big Tech companies, and we are all living on stolen Coast Salish land covered by the broken Treaty of Point Elliot of 1855; we understand that we are contributing - directly or indirectly - to these oppressions, and seek to use our skills towards more liberatory ends.
|
||||
Some of us are employed by Big Tech companies, and we are all living on stolen
|
||||
Coast Salish land covered by the broken Treaty of Point Elliot of 1855; we
|
||||
understand that we are contributing - directly or indirectly - to these
|
||||
oppressions, and seek to use our skills towards more liberatory ends.
|
||||
</p>
|
||||
|
||||
<h2 class="text-2xl font-semibold mt-10 mb-2">Theory of Change</h2>
|
||||
<h2 class="mb-2 mt-10 text-2xl font-semibold">Theory of Change</h2>
|
||||
|
||||
<p class="mb-4">
|
||||
We are committed to fostering our collective understanding of resisting tech monopolies and building a constellation of alternative technologies that exist outside of exploitative, oppressive systems. We seek out radical possibilities by building connections across our communities with others struggling to resist tech monopolies and reject work that expands the reach of these monopolies.
|
||||
We are committed to fostering our collective understanding of resisting tech
|
||||
monopolies and building a constellation of alternative technologies that exist
|
||||
outside of exploitative, oppressive systems. We seek out radical possibilities
|
||||
by building connections across our communities with others struggling to
|
||||
resist tech monopolies and reject work that expands the reach of these
|
||||
monopolies.
|
||||
</p>
|
||||
|
||||
<p class="mb-4">
|
||||
We don't need to passively wait around for somebody to come implement these solutions. Making improvements to our lives and our communities paves the way for collective liberation. Dismantling smaller elements of a system is practice for uprooting the whole and replacing it with a constellation of liberatory alternatives.
|
||||
We don't need to passively wait around for somebody to come implement these
|
||||
solutions. Making improvements to our lives and our communities paves the way
|
||||
for collective liberation. Dismantling smaller elements of a system is
|
||||
practice for uprooting the whole and replacing it with a constellation of
|
||||
liberatory alternatives.
|
||||
</p>
|
||||
|
||||
<h2 class="text-2xl font-semibold mt-10 mb-2">Role of Technology</h2>
|
||||
<h2 class="mb-2 mt-10 text-2xl font-semibold">Role of Technology</h2>
|
||||
|
||||
<p class="mb-4">
|
||||
"We believe our communities and organizing efforts can and should harness the possibilities of new technology." (<a href="https://mijente.net/our-dna/" class="underline hover:text-gray-600">Mijente</a>) However, we don't innovate for the sake of innovation, but aim to create with intention, listen to the perspectives of those we hope to serve (including ourselves), and hold each other accountable in this work.
|
||||
"We believe our communities and organizing efforts can and should harness the
|
||||
possibilities of new technology." (<a
|
||||
href="https://mijente.net/our-dna/"
|
||||
class="underline hover:text-gray-600"
|
||||
rel="noopener noreferrer"
|
||||
target="_blank">Mijente</a
|
||||
>) However, we don't innovate for the sake of innovation, but aim to create
|
||||
with intention, listen to the perspectives of those we hope to serve
|
||||
(including ourselves), and hold each other accountable in this work.
|
||||
</p>
|
||||
|
||||
<h2 class="text-2xl font-semibold mt-10 mb-2">Our Position in the Movement</h2>
|
||||
<h2 class="mb-2 mt-10 text-2xl font-semibold">Our Position in the Movement</h2>
|
||||
|
||||
<p class="mb-4">
|
||||
We don't see ourselves as a vanguard organization - that is, we make no claims to being the sole authority on resisting tech monopolies and we will never tell a front-line community or group of tech users what they actually need. Everyone benefits from the work of resisting tech monopolies, and for that reason we do the work for ourselves as much as we do it for anybody we are in solidarity with.
|
||||
We don't see ourselves as a vanguard organization - that is, we make no claims
|
||||
to being the sole authority on resisting tech monopolies and we will never
|
||||
tell a front-line community or group of tech users what they actually need.
|
||||
Everyone benefits from the work of resisting tech monopolies, and for that
|
||||
reason we do the work for ourselves as much as we do it for anybody we are in
|
||||
solidarity with.
|
||||
</p>
|
||||
|
||||
<p class="mb-4">
|
||||
However we also recognize our own privilege in being highly-skilled tech workers: because of this we center the voices of the people most vulnerable to various tech monopolies, and aim to share our expertise so that others can also become agents in co-creating technologies of liberation and resistance.
|
||||
However we also recognize our own privilege in being highly-skilled tech
|
||||
workers: because of this we center the voices of the people most vulnerable to
|
||||
various tech monopolies, and aim to share our expertise so that others can
|
||||
also become agents in co-creating technologies of liberation and resistance.
|
||||
</p>
|
||||
|
||||
<h2 class="text-2xl font-semibold mt-10 mb-2">Friendly Vibes</h2>
|
||||
<h2 class="mb-2 mt-10 text-2xl font-semibold">Friendly Vibes</h2>
|
||||
|
||||
<p class="mb-4">
|
||||
Holding all of the above, we're also a group of friends here for the scrappy, hacky vibes. We don't take our work too seriously and we're here to work joyfully. This is first and foremost a community.
|
||||
Holding all of the above, we're also a group of friends here for the scrappy,
|
||||
hacky vibes. We don't take our work too seriously and we're here to work
|
||||
joyfully. This is first and foremost a community.
|
||||
</p>
|
||||
|
||||
<h2 class="text-2xl font-semibold mt-10 mb-2">Acknowledgments</h2>
|
||||
<h2 class="mb-2 mt-10 text-2xl font-semibold">Acknowledgments</h2>
|
||||
|
||||
<p class="mb-4">
|
||||
These points of unity were inspired by the Prison Library Solidarity Network, the Coalition of Anti-Racist Whites, Ruha Benjamin's work on Abolitionist Tech, and Mijente.
|
||||
These points of unity were inspired by the Prison Library Solidarity Network,
|
||||
the Coalition of Anti-Racist Whites, Ruha Benjamin's work on Abolitionist
|
||||
Tech, and Mijente.
|
||||
</p>
|
||||
|
||||
@@ -0,0 +1,47 @@
|
||||
<h1 class="text-3xl font-semibold">Services</h1>
|
||||
|
||||
<section class="flex flex-col">
|
||||
<h2 class="text-2xl font-semibold mt-4">Our Mission</h2>
|
||||
We promote free and open source options with a non-judgmental attitude. We understand
|
||||
that almost everyone ends up using Big Tech software sometimes. We want to help
|
||||
you meet your own goals, whether it be reducing what you pay big corporations or
|
||||
increasing your privacy.
|
||||
|
||||
<h2 class="text-2xl font-semibold mt-4">Managed Service Hosting</h2>
|
||||
We offer individuals and organizations access to a suite of open-source, privacy-friendly
|
||||
tools, including: • NextCloud (alternative to Google Workspace, Microsoft 365,
|
||||
etc.) • Loomio (democratic, asynchronous decision-making platform) • Zulip (alternative
|
||||
to Slack, Teams, Discord) • Keycloak (Single Sign-On/SSO) • Vaultwarden (password
|
||||
manager) • Headscale (VPN) • Matrix (decentralized, federated alternative to Discord)
|
||||
• Immich (alternative to Google Photos) Our team has decades of collective expertise
|
||||
in cloud computing and open-source software. We're patient, responsive to users'
|
||||
needs, and skilled at translating from tech jargon to plain language.
|
||||
|
||||
<h2 class="text-2xl font-semibold mt-4">Data Migration</h2>
|
||||
We know a lot of people want to move away from the Big Tech ecosystem but feel
|
||||
overwhelmed and don't know where to start. We've been doing this for years, and
|
||||
we know how to help you move your data away from Big Tech and select appropriate,
|
||||
privacy-friendly, open-source alternatives that still meet your needs. We offer
|
||||
individual, organization, and family pricing.
|
||||
|
||||
<h2 class="text-2xl font-semibold mt-4">Training</h2>
|
||||
We offer in-person events to help individuals and organizations understand the
|
||||
risks of Big Tech, improve their digital security, and learn about privacy-friendly,
|
||||
open-source alternatives. Here are a few of the events we've held: • DiscoTechs
|
||||
(science-fair style event where you can learn about a variety of alternatives to
|
||||
Big Tech) • Digital Security workshops (hands-on sessions to improve your security
|
||||
posture and understand what threats are actually relevant for you and your organization)s
|
||||
• Office Hours (drop-in IT help)
|
||||
|
||||
<h2 class="text-2xl font-semibold mt-4">Tech Consulting</h2>
|
||||
Does your organization need help choosing IT tools? Need a website built or hosted?
|
||||
Maybe you want to self-host your own server infrastructure, but need a little support.
|
||||
Whatever your tech needs, just drop us a line, and we'll see if we can help.
|
||||
|
||||
<a
|
||||
href="https://nextcloud.resisttechmonopolies.online/apps/forms/s/L2aP5oxnbmJcot9CPYGmKAQy"
|
||||
class="max-w-[120px] rounded-sm bg-[#4ade80] my-4 px-6 py-3 text-center font-semibold text-white transition-colors"
|
||||
>
|
||||
Hire us!
|
||||
</a>
|
||||
</section>
|
||||
@@ -1,56 +1,48 @@
|
||||
<h1 class="pb-4 text-3xl font-semibold">What We're Up To</h1>
|
||||
<div class="grid grid-cols-1 gap-8 xl:grid-cols-3">
|
||||
<div class="grid justify-items-center gap-8">
|
||||
<a href="/projects/bookclub/" class="underline decoration-solid">
|
||||
<img
|
||||
src="/assets/book-club.png"
|
||||
alt="4 books we've read: Common Cicruits, Race After Technology, Teaching Community Technology, and Internet for the People"
|
||||
loading="lazy"
|
||||
class="h-[250px] border"
|
||||
/>
|
||||
</a>
|
||||
|
||||
<a
|
||||
href="/projects/bookclub/"
|
||||
<div class="grid max-w-[1600px] grid-cols-1 gap-8 xl:grid-cols-3">
|
||||
<a href="/projects/bookclub/" class="grid justify-items-center gap-8">
|
||||
<img
|
||||
src="/assets/book-club.png"
|
||||
alt="4 books we've read: Common Cicruits, Race After Technology, Teaching Community Technology, and Internet for the People"
|
||||
loading="lazy"
|
||||
class="h-[250px] rounded-[4px] object-contain xl:object-scale-down"
|
||||
/>
|
||||
|
||||
<div
|
||||
class="max-w-[240px] rounded-sm bg-[#fb923c] px-6 py-3 text-center font-semibold text-white transition-colors"
|
||||
>
|
||||
What We're Reading
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
|
||||
<div class="grid justify-items-center gap-8">
|
||||
<a href="/projects/PetCalendar/" class="underline decoration-solid">
|
||||
<img
|
||||
src="/assets/pet-calendar-2026-cover.jpg"
|
||||
alt="The cover of our pet calendar; a collage of dogs and cats with computer stuff"
|
||||
loading="lazy"
|
||||
class="h-[250px] border"
|
||||
/>
|
||||
</a>
|
||||
<a href="/projects/PetCalendar/" class="grid justify-items-center gap-8">
|
||||
<img
|
||||
src="/assets/pet-calendar-2026-cover.jpg"
|
||||
alt="The cover of our pet calendar; a collage of dogs and cats with computer stuff"
|
||||
loading="lazy"
|
||||
class="h-[250px] rounded-[4px] object-contain xl:object-scale-down"
|
||||
/>
|
||||
|
||||
<a
|
||||
href="/projects/petcalendar/"
|
||||
<div
|
||||
class="max-w-[240px] rounded-sm bg-[#fb923c] px-6 py-3 text-center font-semibold text-white transition-colors"
|
||||
>
|
||||
Pet Calendar
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
|
||||
<div class="grid justify-items-center gap-8">
|
||||
<a href="/projects/zines/" class="underline decoration-solid">
|
||||
<img
|
||||
src="/assets/zines-thumbnail.png"
|
||||
alt="4 zines we made: Creating an Internet for the People, De-Monopoly DiscoTech 101, How to Get Started with Signal, and Brief Notes from a De-Monopoly DiscoTech"
|
||||
loading="lazy"
|
||||
class="h-[250px] border"
|
||||
/>
|
||||
</a>
|
||||
<a href="/projects/zines/" class="grid justify-items-center gap-8">
|
||||
<img
|
||||
src="/assets/zines-thumbnail.png"
|
||||
alt="4 zines we made: Creating an Internet for the People, De-Monopoly DiscoTech 101, How to Get Started with Signal, and Brief Notes from a De-Monopoly DiscoTech"
|
||||
loading="lazy"
|
||||
class="h-[250px] rounded-[4px] object-contain xl:object-scale-down"
|
||||
/>
|
||||
|
||||
<a
|
||||
href="/projects/zines/"
|
||||
<div
|
||||
class="max-w-[240px] rounded-sm bg-[#fb923c] px-6 py-3 text-center font-semibold text-white transition-colors"
|
||||
>
|
||||
Zines
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
+11
-11
@@ -5,15 +5,16 @@ import BigTechAlternatives from "@/components/BigTechAlternatives.astro";
|
||||
import WhatWereUpTo from "@/components/WhatWereUpTo.astro";
|
||||
import Layout from "@/layouts/Layout.astro";
|
||||
import "@/styles/globals.css";
|
||||
import Services from "@/components/Services.astro";
|
||||
---
|
||||
|
||||
<Layout>
|
||||
<main class="px-4">
|
||||
<main>
|
||||
<section class="sticky top-0">
|
||||
<Navbar client:load activePage="Home"/>
|
||||
<Navbar client:load activePage="Home" />
|
||||
</section>
|
||||
|
||||
<section id="aboutus" class="scroll-m-20">
|
||||
<section id="aboutus" class="scroll-m-20 px-4">
|
||||
<section>
|
||||
<h1 class="pb-4 text-3xl font-semibold">About Us</h1>
|
||||
|
||||
@@ -37,11 +38,10 @@ import "@/styles/globals.css";
|
||||
|
||||
<p>
|
||||
Do you believe technology can and should be used for good? Do you
|
||||
think a democratic internet could liberate us? Join us!
|
||||
think a democratic internet could liberate us? Join us! We share this
|
||||
vision, and we want to work together to achieve it.
|
||||
</p>
|
||||
|
||||
<p>We share this vision, and we want to work together to achieve it.</p>
|
||||
|
||||
<div class="my-8">
|
||||
<a
|
||||
href="https://shlink.resisttechmonopolies.online/HNrZG"
|
||||
@@ -55,19 +55,19 @@ import "@/styles/globals.css";
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<section id="whatwereupto" class="scroll-m-20 ">
|
||||
<section id="whatwereupto" class="scroll-m-20 px-4">
|
||||
<WhatWereUpTo />
|
||||
</section>
|
||||
|
||||
<!-- <section id="services" class="scroll-m-20 my-8">
|
||||
TODO services
|
||||
</section> -->
|
||||
<section id="services" class="my-8 scroll-m-20 px-4">
|
||||
<Services />
|
||||
</section>
|
||||
|
||||
<!-- <section id="calendar" class="scroll-m-20 my-8">
|
||||
TODO calendar
|
||||
</section> -->
|
||||
|
||||
<section id="bigtechalternatives" class="scroll-m-20 my-8">
|
||||
<section id="bigtechalternatives" class="my-8 scroll-m-20">
|
||||
<BigTechAlternatives />
|
||||
</section>
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ import "../../styles/globals.css";
|
||||
---
|
||||
|
||||
<Layout>
|
||||
<main class="px-4 flex min-h-screen flex-col justify-between">
|
||||
<main class="flex min-h-screen flex-col justify-between px-4">
|
||||
<div>
|
||||
<section class="sticky top-0">
|
||||
<Navbar client:load activePage="WhatWereUpTo" />
|
||||
@@ -47,7 +47,11 @@ import "../../styles/globals.css";
|
||||
Try out Mastadon for algorithmless social media that won't sell
|
||||
your data!
|
||||
</p>
|
||||
<a class="mb-2 underline" href="https://joinmastodon.org/"
|
||||
<a
|
||||
class="mb-2 underline"
|
||||
href="https://joinmastodon.org/"
|
||||
rel="noopener noreferrer"
|
||||
target="_blank"
|
||||
>Join Mastadon!
|
||||
</a>
|
||||
|
||||
@@ -66,6 +70,8 @@ import "../../styles/globals.css";
|
||||
<a
|
||||
class="mb-2 underline"
|
||||
href="https://www.xda-developers.com/tips-for-self-hosting-beginners/"
|
||||
rel="noopener noreferrer"
|
||||
target="_blank"
|
||||
>Beginner's Guide to Self-Hosting!
|
||||
</a>
|
||||
|
||||
@@ -81,6 +87,8 @@ import "../../styles/globals.css";
|
||||
<a
|
||||
class="mb-2 underline"
|
||||
href="https://tutorials.mediaket.net/software-tutorials/calibre-how-to-use-it.html"
|
||||
rel="noopener noreferrer"
|
||||
target="_blank"
|
||||
>Get Started with Calibre!
|
||||
</a>
|
||||
|
||||
@@ -99,6 +107,8 @@ import "../../styles/globals.css";
|
||||
<a
|
||||
class="mb-2 underline"
|
||||
href="https://www.geeksforgeeks.org/linux-unix/30-days-of-linux/"
|
||||
rel="noopener noreferrer"
|
||||
target="_blank"
|
||||
>30 Days of Linux for Beginners!
|
||||
</a>
|
||||
|
||||
@@ -116,6 +126,8 @@ import "../../styles/globals.css";
|
||||
<a
|
||||
class="mb-2 underline"
|
||||
href="https://graziamagazine.com/me/articles/history-keffiyeh-palestine/"
|
||||
rel="noopener noreferrer"
|
||||
target="_blank"
|
||||
>Learn the history and meaning of the keffiyeh!
|
||||
</a>
|
||||
|
||||
@@ -134,6 +146,8 @@ import "../../styles/globals.css";
|
||||
<a
|
||||
class="mb-2 underline"
|
||||
href="https://web.archive.org/web/20260108185516/https://www.androidauthority.com/ente-photos-hands-on-3542198/"
|
||||
rel="noopener noreferrer"
|
||||
target="_blank"
|
||||
>In-depth overeview of Ente Photos migration!
|
||||
</a>
|
||||
|
||||
@@ -152,6 +166,8 @@ import "../../styles/globals.css";
|
||||
<a
|
||||
class="mb-2 underline"
|
||||
href="https://protasm.com/blogs/news/an-extensive-tutorial-on-how-to-setup-a-pi-hole"
|
||||
rel="noopener noreferrer"
|
||||
target="_blank"
|
||||
>Extensive PiHole Tutorial!
|
||||
</a>
|
||||
|
||||
@@ -174,7 +190,11 @@ import "../../styles/globals.css";
|
||||
Try out DuckDuckGo as a privacy-friendly alternative to Google
|
||||
search and Chrome!
|
||||
</p>
|
||||
<a class="mb-2 underline" href="https://duckduckgo.com/"
|
||||
<a
|
||||
class="mb-2 underline"
|
||||
href="https://duckduckgo.com/"
|
||||
rel="noopener noreferrer"
|
||||
target="_blank"
|
||||
>Download Duck Duck Go!
|
||||
</a>
|
||||
|
||||
@@ -195,6 +215,8 @@ import "../../styles/globals.css";
|
||||
<a
|
||||
class="mb-2 underline"
|
||||
href="https://www.youtube.com/watch?v=1-Xl6dhDV3Q"
|
||||
rel="noopener noreferrer"
|
||||
target="_blank"
|
||||
>
|
||||
How to Build Radical Community!
|
||||
</a>
|
||||
@@ -209,6 +231,8 @@ import "../../styles/globals.css";
|
||||
<a
|
||||
class="mb-2 underline"
|
||||
href="https://social-ecology.org/wp/neighbor-union-cohort/"
|
||||
rel="noopener noreferrer"
|
||||
target="_blank"
|
||||
>Learn about Neighbor Unions!
|
||||
</a>
|
||||
|
||||
@@ -228,6 +252,8 @@ import "../../styles/globals.css";
|
||||
<a
|
||||
class="mb-2 underline"
|
||||
href="https://jellyfin.org/docs/general/quick-start/"
|
||||
rel="noopener noreferrer"
|
||||
target="_blank"
|
||||
>Quickstart for JellyFin!
|
||||
</a>
|
||||
|
||||
@@ -243,7 +269,11 @@ import "../../styles/globals.css";
|
||||
Try out Meet.coop as an open-source, privacy-friendly, and renewable
|
||||
energy-powered alternative to Zoom and Hangouts!
|
||||
</p>
|
||||
<a class="mb-2 underline" href="https://www.meet.coop/"
|
||||
<a
|
||||
class="mb-2 underline"
|
||||
href="https://www.meet.coop/"
|
||||
rel="noopener noreferrer"
|
||||
target="_blank"
|
||||
>Make a Meet.coop account!
|
||||
</a>
|
||||
|
||||
@@ -252,7 +282,11 @@ import "../../styles/globals.css";
|
||||
<hr class="mb-4" />
|
||||
|
||||
<p class="mb-2">Free alternative: Jitsi</p>
|
||||
<a class="mb-2 underline" href="https://meet.jit.si/"
|
||||
<a
|
||||
class="mb-2 underline"
|
||||
href="https://meet.jit.si/"
|
||||
rel="noopener noreferrer"
|
||||
target="_blank"
|
||||
>Start a Meeting with Jitsi!
|
||||
</a>
|
||||
|
||||
@@ -272,6 +306,8 @@ import "../../styles/globals.css";
|
||||
<a
|
||||
class="mb-2 underline"
|
||||
href="https://radicale.org/master.html#simple-5-minute-setup"
|
||||
rel="noopener noreferrer"
|
||||
target="_blank"
|
||||
>Setting up Radicale Tutorial!
|
||||
</a>
|
||||
|
||||
@@ -280,7 +316,11 @@ import "../../styles/globals.css";
|
||||
|
||||
<hr class="mb-4" />
|
||||
<p class="mb-2">Alternative: Proton Calendar</p>
|
||||
<a class="mb-2 underline" href="https://calendar.proton.me/"
|
||||
<a
|
||||
class="mb-2 underline"
|
||||
href="https://calendar.proton.me/"
|
||||
rel="noopener noreferrer"
|
||||
target="_blank"
|
||||
>Switch to Proton Calendar!
|
||||
</a>
|
||||
|
||||
|
||||
@@ -26,18 +26,20 @@ import "../../styles/globals.css";
|
||||
<div class="rounded-lg border p-6">
|
||||
<h2 class="mb-4 text-2xl font-semibold">Current Book</h2>
|
||||
<div>
|
||||
Teaching Community Technology Handbook - Detroit Community Technology
|
||||
Project (read for free <a
|
||||
Teaching Community Technology Handbook - Detroit Community
|
||||
Technology Project (read for free <a
|
||||
class="underline"
|
||||
href="https://detroitcommunitytech.org/?q=teachcommtech"
|
||||
>here
|
||||
</a>)
|
||||
rel="noopener noreferrer"
|
||||
target="_blank">here</a
|
||||
>)
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="rounded-lg border p-6">
|
||||
<h2 class="mb-4 text-2xl font-semibold">Past Books</h2>
|
||||
<ul class="list-disc pl-6">
|
||||
<li>Holding Change - Adrienne Maree Brown</li>
|
||||
<li>Race After Technology - Ruha Benjamin</li>
|
||||
<li>Common Circuits - Luis Felipe R. Murillo</li>
|
||||
<li>Internet for the People - Ben Tarnoff</li>
|
||||
|
||||
Reference in New Issue
Block a user