1 line
849 KiB
JSON
1 line
849 KiB
JSON
{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"quick-commands/","title":"Quick Commands","text":""},{"location":"quick-commands/#build-site","title":"Build Site","text":"<pre><code># navigate to mkdocs directory \nmkdocs build\n</code></pre>"},{"location":"quick-commands/#ollama","title":"Ollama","text":"<p>Pull a model into the ollama environment: </p> <pre><code># Replace action and model with your own...\ndocker exec -it ollama-changemaker ollama [action] [model]\n</code></pre>"},{"location":"readme/","title":"Changemaker V5","text":"<p>Changemaker V5 is a battle-tested, lightweight, self-hosted productivity suite which empowers you to deploy secure, locally-built websites, blogs, newsletters, & forms \u2013 from personal projects to full-fledged campaigns \u2013 granting you complete control, inherent security, and true freedom of speech. </p> <p>It is a project undertaken by The Bunker Operations, headquarted in Edmonton, Alberta, Canada, as to provide our community a digital campaign alternative to mainstream American systems. </p> <p></p>"},{"location":"readme/#contents","title":"Contents","text":"<ul> <li>Prerequisites</li> <li>Quick Start</li> <li>Detailed Installation</li> <li>1. Install Docker and Docker Compose</li> <li>2. Clone the Repository</li> <li>3. Configure Your Environment</li> <li>4. Start the Services</li> <li>5. Run Post-Installation Tasks</li> <li>Local Service Ports</li> <li>Cloudflare Tunnel Setup</li> <li>Install Cloudflared on Ubuntu 24.04</li> <li>Configure Your Cloudflare Tunnel</li> <li>Create a Cloudflare System Service</li> <li>Add CNAME Records</li> <li>Website Build and Deployment Workflow</li> <li>Accessing Your Services</li> <li>Troubleshooting</li> </ul>"},{"location":"readme/#development-pathway","title":"Development Pathway","text":"<p>Changemaker's identified wants for development: </p> <ul> <li>Internal integrations for assset management i.e. shared plain file locations </li> <li>Database connections for automation systems i.e. manauls for Nocodb & n8n on connecting services</li> <li>Manual & landing site for the whole system i.e. upgrading bnkops.com </li> <li>Trainings and manuals across the board </li> </ul> <p>Idenitfied Feature Requests: </p> <ul> <li>Event Management: Looking at hi.ewvents</li> <li>Scheduling: Looking at rally</li> <li>Support and user chat: looking at chatwoot</li> <li>Mass community chat: looking at thelounge</li> <li>Team chat and project management: looking at rocket chat \u2714\ufe0f</li> </ul> <p>Bugs:</p> <ul> <li>Readme needs a full flow redo - \u2705 next up </li> <li>Config script needs to be updated for nocodb for a simpler string / set the string - </li> <li>Gitea DNS application access bypass not properly setting - \u2705 bypass needing manual setup / need to explore api more</li> <li>Portainer not serving to http - \ud83e\udd14 portainer to be limited to local access </li> <li>nocodb setup upping odd - \u2705 password needs no special characters</li> <li>ferdium port mismatch - \u2705 was a cloudflare port setting missmatch</li> </ul>"},{"location":"readme/#prerequisites","title":"Prerequisites","text":"<ul> <li>A Linux server (Ubuntu 22.04/24.04 recommended)</li> <li>Docker & Docker Compose</li> <li>Internet connection</li> <li>(Optional) Root or sudo access</li> <li>(Optional) A domain name for remote access</li> <li>(Optional) Cloudflare account for tunnel setup</li> </ul>"},{"location":"readme/#quick-start-for-local-dev","title":"Quick Start for Local Dev","text":"<p>Review all off the applications here</p> <p>If you're familiar with Docker and want to get started quickly:</p> <pre><code># Clone the repository\ngit clone https://gitea.bnkhome.org/bnkops/Changemaker.git\ncd changemaker\n</code></pre> <p>See Setting Up Cloudflare Credentials for how to get cloudflare credentials for config.sh.</p> <pre><code># Use default configuration for local development.\n# To configure for remote deployment with Cloudflare, first make the script executable:\nchmod +x config.sh\n\n# Then run the configuration script. You will need your Cloudflare details.\n./config.sh\n</code></pre> <pre><code># Start all services\ndocker compose up -d\n</code></pre> <p>First time installation can take several miniutes</p> <p>On a 1GB internet connection, instal time is approximately 5 minutes.</p>"},{"location":"readme/#configure-portainer-immediately","title":"\u26a0\ufe0f Configure Portainer Immediately \ud83e\udd8a","text":"<p>Portainer has a timed build process that needs to be completed on successful build. Proceed to configure the service by visiting https://localhost:9444 </p> <p>Gitea has a install process that you should complete immediately after connecting system to dns and domain services. </p>"},{"location":"readme/#on-successful-build-vist-local-homepage","title":"On Successful Build, Vist Local Homepage","text":"<p>The local homepage - http://localhost:3011 is configured with all of the services you can access securely locally. </p> <p>To access services outside of network, configure a VPN, Tailscale, or continue to Cloudflare publishing documentation.</p>"},{"location":"readme/#local-service-ports","title":"Local Service Ports","text":"<p>When running Changemaker locally, you can access the services at the following ports on your server:</p> Service Local Port Local URL Root/Website (Nginx) 4001 http://localhost:4001 Homepage (local) 3011 http://locahost:3011 Homepage 3010 http://localhost:3010 Excalidraw 3333 http://localhost:3333 Listmonk 9000 http://localhost:9000 Monica CRM 8085 http://localhost:8085 MkDocs 4000 http://localhost:4000 Flatnotes 8089 http://localhost:8089 Code Server 8888 http://localhost:8888 Ollama 11435 http://localhost:11435 OpenWebUI 3005 http://localhost:3005 Gitea 3030 http://localhost:3030 Portainer 8005 https://localhost:9444 Mini QR 8081 http://localhost:8081 Ferdium 3009 http://localhost:3009 Answer 9080 http://localhost:9080 NocoDB 8090 http://localhost:8090 n8n 5678 http://localhost:5678 ConvertX 3100 http://localhost:3100 Rocket.Chat 3004 http://localhost:3004"},{"location":"readme/#ubuntu-os-build-outs","title":"Ubuntu OS & Build Outs","text":"<p>You can deploy Changemaker on any OS using Docker however we also provide several full Ubuntu build-outs. These scripts can speed up your deployment immensely and Changemaker is developed on a like system: </p> <ol> <li>build.server - this build-out is a lightweight deployment aimed for dedicated server machines. It is focused on entry level users who would build on a dedicated machine. </li> <li>build.homelab - this build-out is full-some development focused build-out that The Bunker Operations uses for our day-to-day operations. </li> </ol> <p>Configuration and services scripts for futher developing the system can be found at the scripts repo. </p>"},{"location":"readme/#1-install-docker-and-docker-compose","title":"1. Install Docker and Docker Compose","text":"<p>Install Docker and Docker Compose on your system if they're not already installed: </p> <p>Install Docker & Docker Compose</p> <p>Verify that Docker and Docker Compose are installed correctly:</p> <pre><code>docker --version\ndocker compose version\n</code></pre>"},{"location":"readme/#2-clone-the-repository","title":"2. Clone the Repository","text":"<pre><code>git clone https://github.com/your-org/changemaker-v5.git\ncd changemaker-v5\n</code></pre>"},{"location":"readme/#2-configure-your-environment","title":"2. Configure Your Environment","text":""},{"location":"readme/#setting-up-cloudflare-credentials","title":"Setting Up Cloudflare Credentials","text":"<p>To use the configuration script, you'll need to collect several Cloudflare credentials:</p> <p>Required Cloudflare Information</p> <p>You'll need three important pieces of information from your Cloudflare account: - API Token with proper permissions - Zone ID for your domain - Tunnel ID</p>"},{"location":"readme/#1-create-an-api-token","title":"1. Create an API Token","text":"<ol> <li>Go to your Cloudflare Dashboard \u2192 Profile \u2192 API Tokens</li> <li>Click \"Create Token\"</li> <li>Choose one of these options:</li> <li>Use the \"Edit zone DNS\" template</li> <li>Create a custom token with these permissions:<ul> <li>Zone:DNS:Edit</li> <li>Access:Apps:Edit</li> </ul> </li> <li>Restrict the token to only your specific zone/domain</li> <li>Generate and copy the token</li> </ol>"},{"location":"readme/#2-get-your-zone-id","title":"2. Get your Zone ID","text":"<ol> <li>Go to your domain's overview page in the Cloudflare dashboard</li> <li>The Zone ID is displayed on the right sidebar</li> <li>It looks like: <code>023e105f4ecef8ad9ca31a8372d0c353</code></li> </ol>"},{"location":"readme/#3-get-your-tunnel-id","title":"3. Get your Tunnel ID","text":"<ol> <li>If you've already created a tunnel, you can find the ID:</li> <li>Go to Cloudflare Zero Trust dashboard \u2192 Access \u2192 Tunnels</li> <li>Click on your tunnel</li> <li>The Tunnel ID is in the URL: <code>https://dash.teams.cloudflare.com/xxx/network/tunnels/xxxx</code></li> <li>It looks like: <code>6ff42ae2-765d-4adf-8112-31c55c1551ef</code></li> </ol> <p>Keep Your Credentials Secure</p> <p>Store these credentials securely. Never commit them to public repositories or share them in unsecured communications.</p> <p>You have two options:</p> <p>Option A: Use the configuration wizard (recommended)</p> <pre><code># Make the script executable\nchmod +x config.sh\n\n# Run the configuration wizard\n./config.sh\n</code></pre> <p>Option B: Configure manually <pre><code># Edit the .env file with your settings\nnano .env\n</code></pre></p>"},{"location":"readme/#4-start-the-services","title":"4. Start the Services","text":"<pre><code># Pull and start all containers in detached mode\ndocker compose up -d\n</code></pre> <p>Configure Portainer</p> <p>Portainer has a timed build process. Make sure to immediatly configure the service at https://localhost:9444 following successful build. </p> <p>All services can now be accessed through on local machine. If deploying to public, it is recommended to configure portainer and then continue configuration for all other services once tunnel is established. Then use the public links for configuration of services. For online deployment with Cloudflare, continue to next steps. </p>"},{"location":"readme/#4-cloudflare-tunnel-setup","title":"4. Cloudflare Tunnel Setup","text":"<p>For secure remote access to your services, you can set up a Cloudflare Tunnel.</p>"},{"location":"readme/#install-cloudflared-on-ubuntu-2404","title":"Install Cloudflared on Ubuntu 24.04","text":"<p>Cloudflared Installation Guide</p>"},{"location":"readme/#configure-your-cloudflare-tunnel","title":"Configure Your Cloudflare Tunnel","text":"<p>You can use our Cloudflare Configuration Guide however remember to copy the values of the example config for this deployment. </p>"},{"location":"readme/#create-a-cloudflare-system-service","title":"Create a Cloudflare System Service","text":"<p>Cloudflare Service Setup Guide</p>"},{"location":"readme/#add-cname-records","title":"Add CNAME Records","text":"<p>After setting up your Cloudflare Tunnel, you need to add CNAME records for your services. You can do this manually in the Cloudflare DNS panel or with using the following script: <code>add-cname-records.sh</code></p> <pre><code># Make the script executable\nchmod +x add-cname-records.sh\n\n# Run the script to add CNAME records\n./add-cname-records.sh\n</code></pre> <p>This script will add CNAME records for all Changemaker services to your Cloudflare DNS.</p> <p>It will also set up a Cloudflare Access Application for all services execpt for your website and gitea. This is a extra layer of security that we do recommend for your deployment. It will automatically allow any emails with from the root domain that you set in the <code>config.sh</code> process. For example, if you set your root domain to <code>example.com</code> your access rule will allow emails ending with @example.com thorugh. You can update your access settings in the Cloudflare Zero Trust dashboard.</p> <p>Cloudflare Zero Trust</p> <p>To ensure that system is secure, we highly recommend setting up some level of access control using Cloudflare Zero Trust. The <code>add-cname-records.sh</code> will do this automatically however the user is encouraged to familiarize themselves with Cloudflares Zero Trust access system. </p>"},{"location":"readme/#website-build-and-deployment-workflow","title":"Website Build and Deployment Workflow","text":"<p>Changemaker uses MkDocs to create your website content, which is then served by an Nginx server. To update your website, you need to:</p> <ol> <li>Edit your content using either the Code Server or locally on your machine</li> <li>Build the static site files </li> <li>Let the Nginx server (mkdocs-site-server) serve the built site</li> </ol>"},{"location":"readme/#building-your-website","title":"Building Your Website","text":"<p>You can build your website in two ways:</p>"},{"location":"readme/#option-1-using-code-server-recommended-for-remote-deployments","title":"Option 1: Using Code Server (recommended for remote deployments)","text":"<ol> <li>Access Code Server at http://localhost:8888 or https://code-server.yourdomain.com</li> <li>Navigate to the mkdocs directory <code>/home/coder/mkdocs/</code></li> <li>Open a terminal in Code Server</li> <li>Run the build command: <pre><code>cd /home/coder/mkdocs\nmkdocs build\n</code></pre></li> </ol>"},{"location":"readme/#option-2-locally-on-your-machine","title":"Option 2: Locally on your machine","text":"<ol> <li>Navigate to the mkdocs directory in your project: <pre><code>cd /home/bunker-admin/Changemaker/mkdocs\n</code></pre></li> <li>Run the build command: <pre><code>mkdocs build\n</code></pre></li> </ol> <p>After building, the static site files will be generated in the <code>mkdocs/site</code> directory, which is automatically mounted to the Nginx server (mkdocs-site-server). Your website will be immediately available at: - Locally: http://localhost:4001 - With Cloudflare: https://yourdomain.com</p>"},{"location":"readme/#development-vs-production","title":"Development vs Production","text":"<ul> <li>During development, you can use the MkDocs live server at port 4000, which automatically rebuilds when you make changes</li> <li>For production, build your site as described above and let the Nginx server at port 4001 serve the static files</li> </ul>"},{"location":"readme/#accessing-your-services","title":"Accessing Your Services","text":"<p>The Homepage acts as a central dashboard for all your Changemaker services. You can access it at:</p> <ul> <li>Locally: http://localhost:3011 or http://your-server-ip:3011</li> <li>With Cloudflare: https://homepage.yourdomain.com</li> </ul> <p>The Homepage will display links to all your deployed services, making it easy to navigate your Changemaker ecosystem.</p> <p>After installation and cloudflare deployment you can also access individual services at the following URLs:</p> <ul> <li>Website: https://yourdomain.com</li> <li>Homepage: https://homepage.yourdomain.com</li> <li>Live Preview: https://live.yourdomain.com</li> <li>Excalidraw: https://excalidraw.yourdomain.com</li> <li>Listmonk: https://listmonk.yourdomain.com</li> <li>Monica CRM: https://monica.yourdomain.com</li> <li>MkDocs: https://yourdomain.com</li> <li>Flatnotes: https://flatnotes.yourdomain.com</li> <li>Code Server: https://code-server.yourdomain.com</li> <li>Ollama: https://ollama.yourdomain.com</li> <li>OpenWebUI: https://open-web-ui.yourdomain.com</li> <li>Gitea: https://gitea.yourdomain.com</li> <li>Portainer: https://portainer.yourdomain.com</li> <li>Mini QR: https://mini-qr.yourdomain.com</li> <li>Ferdium: https://ferdium.yourdomain.com</li> <li>Answer: https://answer.yourdomain.com</li> <li>NocoDB: https://nocodb.yourdomain.com</li> <li>n8n: https://n8n.yourdomain.com</li> <li>ConvertX: https://convertx.yourdomain.com</li> <li>Rocket.Chat: https://rocket.yourdomain.com</li> </ul>"},{"location":"readme/#troubleshooting","title":"Troubleshooting","text":"<p>If you encounter issues:</p> <ol> <li> <p>Check the Docker logs: <pre><code>docker compose logs\n</code></pre></p> </li> <li> <p>Verify service status: <pre><code>docker compose ps\n</code></pre></p> </li> <li> <p>Ensure your Cloudflare Tunnel is running: <pre><code>sudo systemctl status cloudflared\n</code></pre></p> </li> <li> <p>Check CNAME records in your Cloudflare dashboard.</p> </li> </ol> <p>For additional help, please file an issue on our GitHub repository.</p>"},{"location":"archive/","title":"Archive","text":"<p>The following is content for the archive. </p> <p>It is highly likely that a lot of links will be broken in this page, so please check it carefully!</p>"},{"location":"archive/cm.archive/Feature%20Tracking/","title":"Feature Tracking \u2728","text":"<p>Keeping track of Change Maker's evolution. Stay updated on what's coming next!</p>"},{"location":"archive/cm.archive/Feature%20Tracking/#currently-in-development","title":"Currently in Development \ud83d\ude80","text":"<p>Change Maker V4 is actively being developed by the bnkops team. Here's what's on the horizon:</p>"},{"location":"archive/cm.archive/Feature%20Tracking/#core-infrastructure-updates","title":"Core Infrastructure Updates \ud83c\udfd7\ufe0f","text":"<ul> <li>\ud83c\udf10 DNS Integration</li> <li>Seamless domain hosting under bnkops.com #not started</li> <li>Simplified domain management #in progress</li> <li> <p>Integrated DNS configuration tools #not started</p> </li> <li> <p>\u26a1 One-Click Installation</p> </li> <li>Streamlined public access deployment #in progress</li> <li>Simplified setup process #in progress</li> <li>Reduced technical barriers #in progress</li> </ul>"},{"location":"archive/cm.archive/Feature%20Tracking/#enhanced-editor-experience","title":"Enhanced Editor Experience \ud83d\udcdd","text":"<ul> <li>\ud83c\udfa8 Expanded Frontend Editor</li> <li>Advanced markdown editing capabilities #Open</li> <li>Improved content management interface #Open</li> <li>Enhanced preview functionality #Open</li> <li>Real-time collaboration features #In Progress</li> </ul>"},{"location":"archive/cm.archive/Feature%20Tracking/#mobile-optimization","title":"Mobile Optimization \ud83d\udcf1","text":"<ul> <li>\ud83d\udcf1 Enhanced Mobile Features</li> <li>Streamlined content uploading #Not Started</li> <li>Improved mobile UI/UX #In Progress</li> <li>Touch-optimized controls #Not Started</li> <li>Responsive design improvements #In Progress</li> </ul>"},{"location":"archive/cm.archive/Feature%20Tracking/#communication-automation","title":"Communication & Automation \ud83e\udd16","text":"<ul> <li>\ud83d\udce8 Local Communication Suite</li> <li>Newsletter system integration #done</li> <li>Email targeting capabilities #done</li> <li>Advanced automation workflows #in progress</li> <li>Database integration options #in progress</li> </ul>"},{"location":"archive/cm.archive/Feature%20Tracking/#content-management","title":"Content Management \ud83d\udcca","text":"<ul> <li>\ud83c\udff7\ufe0f Meta Properties System</li> <li>Document state tracking (draft/published) #in progress</li> <li>Author attribution #done</li> <li>Publication timestamps #in progress</li> <li>Version control #in progresss</li> <li>Content lifecycle management #in pprgoress</li> </ul>"},{"location":"archive/cm.archive/Feature%20Tracking/#current-features-overview","title":"Current Features Overview \ud83c\udf1f","text":"<p>For reference, here are some of our current notable features:</p> <ul> <li>\ud83d\udcf1 Mobile-First Design</li> <li>Responsive Web Build</li> <li>Responsive layout</li> <li> <p>Cross-device compatibility</p> </li> <li> <p>\ud83d\udd0d Search Capabilities</p> </li> <li>Real-time suggestions</li> <li>Keyword highlighting</li> <li> <p>Instant results</p> </li> <li> <p>\ud83c\udfa8 Accessibility</p> </li> <li>Dark/Light mode support</li> <li>Screen reader optimization</li> <li> <p>Accessibility-first design</p> </li> <li> <p>\ud83d\udd12 Privacy & Security</p> </li> <li>Self-hosted platform</li> <li>No external dependencies</li> <li>Complete data control</li> <li>VPN compatibility</li> </ul> <p>\ud83d\udca1 Want to stay updated? Subscribe to our newsletter for development updates and release notifications.</p>"},{"location":"archive/cm.archive/Free%28ish%29/","title":"Free(ish)","text":"<p>Free(ish) is our way of saying that Changemaker does require an exchange; we ask that you voluntarily provide an email address. We do this because in political work, system security is paramount. If we uncover security vulnerabilities, it's crucial that we can contact you.</p> <p>We maintain a single mailing list and send updates approximately bi-weekly. Please join us!</p> Subscribe to Updates ~Weekly Updates <p> Hi Friend! Subscribing here will get you weekly updates from The Bunker Ops Admin (Bunker Admin) Reed Larsen (thatreallyblondehuman). Expect personal, code, and political updates. </p> Subscribe"},{"location":"archive/cm.archive/Who%20is%20bnkops/","title":"Who is Bnkops?","text":""},{"location":"archive/cm.archive/Who%20is%20bnkops/#we-are-a-co-operative","title":"We Are a Co-operative","text":"<p>The Bunker Operations is a co-operative based in amiskwaciy-w\u00e2skahikan (Edmonton). The administration team is comprised of settlers and we are grateful for all that the earth has provided us on this land. </p> <p>Our organized group comprises trusted collaborators, comrades, and co-conspirators who share common goals in maintaining, growing, and thriving in community \ud83e\udd1d\ud83c\udfe1\ud83d\udc9c. We provide comprehensive consulting services, web infrastructure, and resources to various organizations.</p> <p>You can see another of our projects here:</p> <p>repo.bnkops.com</p> <p>You have seen our Featured Partner banner above. We have a number of partners who we work with to provide services and support to our community.</p> <p>Want to work with us in partnership?</p> <p>Contact us: </p> <p>Email</p>"},{"location":"archive/cm.archive/Who%20is%20bnkops/#members-of-bnkops-change-maker-team","title":"Members of Bnkops Change Maker Team","text":""},{"location":"archive/cm.archive/Who%20is%20bnkops/#the-bunker-admin-reed","title":"The Bunker Admin - Reed","text":"<p>The Bunker Admin is the primary administrator of the Change Maker system. They are responsible for the overall operation of the system and the development of the software.</p> <p>Reed is a settler living in amiskwaciy-w\u00e2skahikan (Edmonton). Their family has been living between Treaty 6 and 7 lands for 3 generations. Blessed with the opportunity to live and work on this land, they are grateful for all that the earth has provided them.</p> <p>Reed is a human of many talents. They love to learn; often sporadically and in great bursts of excitment for a new topic, thing, or idea. They have a dry sense of humor and a love for the absurd. Catch them at a the dingiest dvd rental store, or the most obscure of bookstores, or sipping oat milk lattes at a local cafe.</p> <p>They have enjoyed many different labors in their time, including: </p> <ul> <li>\ud83c\udfe0\ud83d\udd28 Working in the construction industry, specifically in housing</li> <li>\ud83d\udcda\ud83d\udc68\u200d\ud83c\udfeb Thriving as a teacher, specifically with children and youth teaching english</li> <li>\ud83c\udf93\ud83d\udcca Studying as a student, in the field of political science and Alberta political identity</li> <li>\ud83c\udf93\ud83d\udc54 Laboring as a Student leader, including as a President to the University of Alberta Students' Union</li> <li>\ud83c\udf31\ud83d\udde3\ufe0f Lobbying as a political advocate, specifically for students, green energy, education, and the environment</li> <li>\ud83c\udf08\ud83d\udcaa Organizing as a community organizer, with groups like Pride Corner and Tawaw outreach</li> <li>\ud83d\udcbb\ud83c\udf10 Coding as developer, specifically in web development and design</li> <li>\ud83c\udfa8\ud83d\udd8c\ufe0f Creating art, specifically in the form of painting and drawing</li> </ul> <p>Known Aliases: </p> <ul> <li>thatreallyblondehuman \ud83d\udc71\u200d\u2640\ufe0f\ud83d\udc71\u200d\u2642\ufe0f</li> <li>canadianforsure \ud83c\udde8\ud83c\udde6</li> <li>bunker admin \ud83c\udfe2</li> </ul> <p>Learn more about Reed in depth</p> <p>Contact Reed</p>"},{"location":"archive/cm.archive/Who%20is%20bnkops/#the-bunker-strategist-shayla-breen","title":"The Bunker Strategist - Shayla Breen","text":"<p>The Bunker Strategist is responsible for the strategic direction of the Change Maker project. They are the supporting role to the Bunker Admin and help to guide the project in the right direction.</p> <p>Contact Shayla</p>"},{"location":"archive/cm.archive/Why%20Change%20Maker/","title":"Why Change MakerBuild your power, don't pay for it.\"Oh so its kinda like nexopia for politics however all on my computer?\"","text":"\ud83d\udcbe Your Data, Your Rules <p>Keep your digital footprint truly private. Your site and content are built locally, on your machine. That way, we can't peek, we can't leak, we can't sell what we can't see. Simple as that.</p> \ud83d\udcda Community Library <p>Write your site in the same manner as a repository. Over time, your repository gets bigger. Like a library with good sustainable funding, your repository can become a beacon for community information.</p> \u26a1 Digital Independence <p>Why fund the competition? Most software companies are digital mercenaries, working for the highest bidder. Take control of your digital destiny without feeding the corporate beast.</p> \u23e9 Lightning Fast <p>Got thoughts? Put 'em online faster than you can say \"corporate overlords.\" No tech degree required.</p> \ud83e\udd14 Level Up <p>Start with basic text, end up mastering web development. It's like a game, but the final boss is digital dependency.</p> \ud83d\udcab Free(ish)! <p>Just drop us your email and get full access. No catches, no surprise bills, no selling your soul to Silicon Valley.</p> Do you own your data, or are you just renting it? - Change Maker's First User The Original Internet Promise <p>Remember when the internet was meant to be everyone's digital commons? That vision still lives, though it's been overshadowed by corporate platforms. What began as an open space has largely transformed into a marketplace, with companies repackaging freely available solutions behind sleek marketing.</p> <p>Enter Software-as-a-Service (SaaS), the modern equivalent of cure-all tonics \ud83d\udc0d\ud83c\udfa9. \"Subscribe to solve all your problems!\" they say - just keep paying monthly until those fees stack higher than a mortgage.</p> <p>At bnkops, we believe in community power. By sharing our activist toolkit, we're supporting our communities, organizations, and fellow changemakers in building a more equitable world. These tools can help us organize against the rise of facism in ways we haven't even imagined yet.</p> <p>This project returns to the internet's original promise - putting digital power back in the hands of everyday people on everyday computers. While we might not have flashy features or marketing budgets, we offer something better: a as secure as we can make it, functional activist platform available, and it's free(ish).</p> <p>The best part? Your data stays completely yours. The system runs locally, so we can't access your information or suddenly start charging fees. Your movement, your data, your control. \u270a</p> 1990s <p>Free Internet</p> Open protocols 2000s <p>Big Tech Rise</p> Centralization 2010s <p>SaaS Trap</p> Subscriptions 2020s <p>Surveillance Era</p> Data sold NOW <p>Time to Act</p> Take control CORPORATE EVIL LEVEL: CRITICAL Corporate Evil is the Default Selection <p>We will not defeat capitalism and the march towards facism by giving our data and dollars to companies that would sell us to the highest bidder. Nearly all software corporations are already selling out your movements data.</p> A brief list of examples: <p>Google has billion dollar contracts with Israel to serve the technology that enables genocide.</p> <p>Microsoft is the technology provider of the US military.</p> <p>OpenAI (chatGPT) is used by intelligence agencies</p> <p>Mailchimp, owned by Inuit, fired nearly 1,800 employees and slanderd them all</p> <p>Twitter is owned my a manic billionaire that is a maga weirdo</p> <p>Facebook chats have been used to imprison abortion rights advocates</p> <p>A Nationbuilder founder Robert Greenwald is close with Mark Zuckerberg and its initial founders include prominent republicans. Plus the service is effectively banned in Europe over privacy concerns</p> Sharing is caring. Knowledge is power. Creation is a community process. <p>Want to read more theory on this? Read some papers:</p> <ul> <li>Distribute Digital Organizing is the Way Out</li> <li>If you do politics who is reading your secrets</li> <li>How to not get got making content</li> <li>What is a Repo and Why Make One \ud83d\udcad \ud83c\udf44</li> </ul> It's Truly Free(ish) All we ask in return is your email. <p>By joining our platform, you gain access to a system that bnkops excels in. We are a collective dedicated to positive change, and while we do charge for our expertise, your email helps us stay connected and grow together. Consider partnering with us in the future to collaborate with like-minded individuals who are committed to building a better tomorrow.</p> <p>Our platform is designed to be accessible to everyone, regardless of their financial situation. We believe that everyone should have access to the tools they need to make a difference in the world, and we're committed to providing those tools to you for free.</p> <p> We ask for your email also so we can reach you with updates; the only way to stay secure is to keep developing and updating our systems. We promise not to spam you, and you can unsubscribe at any time.</p> Subscribe <p> </p> <p> </p> <p> Weekly(ish) Update </p> <p> </p>"},{"location":"archive/cm.archive/known%20bugs/","title":"Known Bugs","text":""},{"location":"archive/cm.archive/known%20bugs/#blog-in-editor","title":"Blog in Editor","text":"<ul> <li>A person can open the blog folder and its contents however the live preview is not able to update. </li> <li>we need a backup instructional page. </li> </ul>"},{"location":"archive/cm.archive/blog/","title":"Blog","text":"<p>This is the archive of blog posts from previous bnkops changemaker deployments. </p>"},{"location":"archive/cm.archive/blog/posts/Admin%20Log/","title":"Admin Logs","text":"<p>The admin log is a one stop shop for all the updates and changes made to the Change Maker system.</p>"},{"location":"archive/cm.archive/blog/posts/Admin%20Log/#development-path","title":"Development Path","text":"<p>This app is under intensive development. Updates will be pushed on completion. V4 will aim to be a stable release. </p> <p>Priority development right now: </p> <ul> <li>Install script that simplifies public deployment </li> <li>Nocodb integration for database</li> </ul> <p>bnkops is working on V4 right now, which will also be free. Core features coming include:</p> <ul> <li>DNS (domain) hosting services under bnkops.com</li> <li>One click install script for public access</li> <li>Expanded editor with more standard markdown editing features and content management</li> <li>Expanded mobile features, such as content uploading and improved ui</li> <li>Options to install local newsletter, email targeter, automation systems, and database integrations</li> <li>Meta properties for documentation for states like draft, publish, author, publication time, etc. </li> </ul>"},{"location":"archive/cm.archive/blog/posts/Admin%20Log/#features-for-fun","title":"Features for Fun","text":"<p>Time allows we will also work to release some updates that are not core components however are \"nice to have\". </p> <ul> <li>Emoji integration with editor</li> </ul>"},{"location":"archive/cm.archive/blog/posts/Admin%20Log/#updates","title":"Updates","text":""},{"location":"archive/cm.archive/blog/posts/Admin%20Log/#change-maker-v383-28112024","title":"Change Maker V3.8.3 28/11/2024","text":"<ul> <li>More input commands finished up. </li> <li>Lots of random bug fixes; line spacing and stuff like that. </li> <li>Added drag and drop functionality for the file manager.</li> </ul>"},{"location":"archive/cm.archive/blog/posts/Admin%20Log/#change-maker-v382-26112024","title":"Change Maker V3.8.2 - 26/11/2024","text":"<ul> <li>Fixed a series of bugs and overhauled the insert function for links. Moved it to a static bar at the top of the editor. Like this more for sure. Needs further updates yet however working well. </li> <li>Fixed a bunch of lesser bugs; reload triggers and whatnot where generally broken. </li> </ul>"},{"location":"archive/cm.archive/blog/posts/Admin%20Log/#change-maker-v381-25112024","title":"Change Maker V3.8.1 - 25/11/2024","text":"<p>Holy cow a lot of updates done. </p> <ul> <li>Listmonk up and config files for up and down fixed </li> <li>Big rework of Changemaker website, including new landing page and new features </li> <li>Lots of bug fixing and general improvements</li> <li>wrote some fun special things, like the custom code for things like the music player and newsletter signup. </li> </ul>"},{"location":"archive/cm.archive/blog/posts/Admin%20Log/#listmonk-integration-19112024","title":"Listmonk Integration - 19/11/2024","text":"<p>Version 3.5 ships with Listmonk. Going to integrate a home page for the system; a sort of login page. Listmonk is a fully featured messaging app; allowing messaging across several mediums. Simplicity combined with power; everything we like. </p> <p>Listmonk</p>"},{"location":"archive/cm.archive/blog/posts/Admin%20Log/#mkdocs-config-save-button-addition-04112024","title":"MkDocs Config Save Button Addition - 04/11/2024","text":"<p>Added manual save functionality for mkdocs.yml to prevent accidental publishing:</p> <ul> <li>Removed auto-save for config file only</li> <li>Added save button (only visible when editing mkdocs.yml)</li> <li>Added save status indicators and feedback</li> <li>Regular markdown files still auto-save as before</li> </ul> <p>Modified files: - Editor.js: Added save button + disabled config auto-save - No backend changes required</p> <p>Button appears next to settings icon when editing mkdocs.yml.</p>"},{"location":"archive/cm.archive/blog/posts/Admin%20Log/#admin-log-preview-url-toggle-update-20240411","title":"Admin Log: Preview URL Toggle Update - 2024/04/11","text":"<p>Added local/production preview toggle in editor UI:</p> <ul> <li>Added getMkdocsUrl() to constants.js</li> <li>Created PreviewToggle component with Local/Prod indicator</li> <li>Updated preview panel to use dynamic URL switching</li> <li>Default: prod (changemaker.bnkops.com)</li> <li>Toggle: local (localhost:4000)</li> </ul> <p>Files modified: - constants.js: Added URL switcher - Editor.js: Added toggle + URL handling - New: PreviewToggle.js</p> <p>No breaking changes. Maintains all existing functionality.</p>"},{"location":"archive/cm.archive/blog/posts/Admin%20Log/#change-maker-v32-nov-4-2024","title":"Change Maker V3.2 - Nov. 4 2024","text":"<p>V3.2 updates: </p> <ul> <li>Reworking of position of link suggestions and improved speed in search. </li> </ul>"},{"location":"archive/cm.archive/blog/posts/Admin%20Log/#change-maker-v31-nov-4-2024","title":"Change Maker V3.1 - Nov. 4 2024","text":"<p>Change Maker V3.1 includes the following updates: </p> <ul> <li>Improved linking systems; changed from using wikilinks to standard markdown links for compatibility with site builder </li> <li>General bug fix's qr</li> </ul>"},{"location":"archive/cm.archive/blog/posts/Newsletter%201.0/","title":"Newsletter 1.2","text":"<p>Hay! It's Reed. A rant, some media, and a ask inside; whatcha think? check it out? \ud83e\udd14\ud83e\udd37\u200d\u2642\ufe0f</p> <p>Yoooooooooo,</p> <p>Suh friend! In this update I rant about Facebook, provide some media, and have a ask for you. Check it out below! </p>"},{"location":"archive/cm.archive/blog/posts/Newsletter%201.0/#facebook-deleted","title":"Facebook Deleted!","text":"<p>Facebook is swiftly going to follow Twitter in toxicity. Invest elsewhere or fall to the trap of arguing with conservative bots. Like legit, Facebook is leaning into bots, and for sure bad actors are salivating at the chance to unleash programmatic content. The same company that caused BREXIT WITH JUST MEMES now has AI posting on it's own. They tried to \"sell\" it to you. Its joever. Every and any account could be a bot. It is simple to take your likeness. They don't respect your data; well proven. There comes a day when Facebook sells digital ghosts; the ability to talk to a dead loved one. Literal demon daemons. </p> <p>Dead! Dusted! Deleted! My personal account down. </p> <p>Well, in 30 days. Facebook knows it's a addictive thing and it tries super hard to impress the value of it's service as you leave. It took like a dozen clicks, confirmations, lists of things, surveys, and bunch of other stuff just to be told my info won't be up for deletion for 30 days. So will see if we go back \ud83e\udd37\u200d\u2642\ufe0f</p> <p>Anyway, it actually did feel something doing this. Right on the delete button, I could feel my stomach somewhat drop. Some sort of anxiety, like the same feeling coming off a drug. Take it from a addict, those sweaty palms for sure a sign of how addictive this thing is. </p> <p>To combat that, here I am sharing. Hope to hear from you. Legit is me over here typing away. </p> <p>Try out Change Maker? I use the system to make this newsletter :) </p>"},{"location":"archive/cm.archive/blog/posts/Newsletter%201.0/#code-releases","title":"Code Releases","text":""},{"location":"archive/cm.archive/blog/posts/Newsletter%201.0/#password-hurray","title":"Password: Hurray!","text":""},{"location":"archive/cm.archive/blog/posts/Newsletter%201.0/#found-media","title":"Found Media","text":"<p>I love old, weird, odd, and often times horrific media. Like gory, rough, catholically evil things. </p> <p>Berserk is one of these kinds of show. It tortures. It is evil. It is gross. Toxic. Male gazy, because shocker, the leading characters are men. I project transness onto the character Griffith and probably will do a cosplay sometime. Death is prolific throughout. However the absolute destruction of the characters, the way it builds them up for the evil, is next to none. It leaves a solid slime of 'wtf' on the brain. </p> <p>Talking about catholically evil things; this take-down by CJ the X of Jordan Peterson suits is sublime. Plus you can learn a bunch about suits while watching it. </p> <p>Okay for one more evil recommendation; have you seen squid game? Did you like it? </p> <p>You would love Psycho Pass. This show passes itself off as a copy buddy show at the start, and has plenty of tropes, however, the representation of the absolute nature of a surveillance state combined with out-right \"brain-in-a-jar\" facist thinking is a combination that is surreal. I am 2/3rds done and best guess is that the show argues how if we live in the surveillance panopticon and the state still has authority; it will abuse its power. It grapples with the question; what happens when the state is the only remaining source of violence?</p> <p>Season two also has a wonderful line about medical care for mental health; healthcare, without thought for the individual, is also violent in nature. For each, their own, is the only way. This is why we must protect peoples rights to self-determiniation, even those we consider criminal. </p>"},{"location":"archive/cm.archive/blog/posts/Newsletter%201.0/#help","title":"Help!","text":"<p>Friend, I need your help. I need to get out and more and chat with people. I have already written up a bunch of content that I am hoping to chat with people about. I need a hand sharing it. Do you think anyone in your network would like to chat more about: </p> <ul> <li>What distributed digital organizing is</li> <li>How to do politics online without supporting billionaire oligarchs who want your every secret</li> <li>Ways to build followings and not get got in the age of surveillance capitalism</li> </ul> <p>This email is tied to my personal inbox. If you share this and introduce me to a colleague I would be thrilled and will owe you a solid. </p> <p>If you would like to chat any of the above, or just be pen pals through email, it would be wonderful. I am embracing slower and thoughtful communication; come along with me? </p> <p>Anyway, I think that is all for now folks! Wishing y'all peace and prosperity. </p>"},{"location":"archive/cm.archive/blog/posts/The%20Revolution%20Will%20Not%20Get%20Likes/","title":"The Revoltion Will Not Get Likes","text":""},{"location":"archive/cm.archive/blog/posts/The%20Revolution%20Will%20Not%20Get%20Likes/#the-social-media-harm-machine","title":"The Social Media Harm Machine","text":"<p>There isn't a single activist in my social circles that actually wants to be on social media. Being a social media manager for a movement is like being voluntarily assigned to digital self-harm duty. Getting doxxed has become such a rite of passage for leftists, we might as well start handing out merit badges. Meanwhile, platforms are openly throttling progressive content while boosting blonde trad wives explaining why women shouldn't have opinions. X has basically become 4chan's corporate cousin, and yet here we all are, still posting.</p>"},{"location":"archive/cm.archive/blog/posts/The%20Revolution%20Will%20Not%20Get%20Likes/#why-though-like-seriously-why","title":"Why Though? Like, Seriously, Why?","text":"<p>Why do our movements keep feeding energy into platforms owned by techbro capitalists who are literally selling our DMs to cops? Why give free content to companies that see our existence as a Terms of Service violation? </p> <p>Let's call it what it is: Addiction. </p> <p>I (your friendly neighborhood bnkops admin) am straight up admitting it \u2013 I'm an addict. The doomscroll is real. My amygdala is basically playing Russian roulette every time I refresh: will it be a happy puppy or literal war crimes? Vegas slots probably have better odds for my mental health.</p>"},{"location":"archive/cm.archive/blog/posts/The%20Revolution%20Will%20Not%20Get%20Likes/#breaking-free-no-judgment-zone","title":"Breaking Free (No Judgment Zone)","text":"<p>Like any addiction, people need to find their own path out. I've gone cold turkey on mobile apps. Started writing on platforms I actually control. Pro tip: try going phone-free for just one hour a day. A 15-minute walk without your digital pacifier hits different \u2013 clarity comes through like [chef's kiss].</p> <p>No shade though \u2013 addiction is addiction. And like any vulnerability, oppressors know exactly how to weaponize it. The right wing troll swarms are like digital locusts, except locusts eventually leave. Try blocking the endless wave of MAGA bots \u2013 it's like playing whack-a-mole with a broken mallet.</p>"},{"location":"archive/cm.archive/blog/posts/The%20Revolution%20Will%20Not%20Get%20Likes/#the-dystopia-is-not-coming-its-livestreaming","title":"The Dystopia Is Not Coming - It's Livestreaming","text":"<p>These platforms are increasingly becoming real-world threat multipliers. Elon Musk and Trump have basically built digital brownshirt armies. Coming soon to a Twitter near you: Musk playing innocent about how his \"metaphorical\" AI-generated hate posts led to actual violence. </p> <p>We have written at length about how leftists are making themselves vulnerable to attack by being on these platforms. The time to transition off was yesterday.</p>"},{"location":"archive/cm.archive/blog/posts/The%20Revolution%20Will%20Not%20Get%20Likes/#the-liberal-delusion","title":"The Liberal Delusion","text":"<p>Liberals be like \"don't worry, privacy laws will save us!\" while we're already living in cyberpunk minus the cool aesthetics. Surveillance capitalism has pulled off the ultimate protection racket \u2013 pay us or you're not safe (but also you're not safe if you do pay us). </p> <p>The liberal brain rot runs so deep they're trusting Elon \"Definitely Not A Bond Villain\" Musk with global satellite communications. Local activists using Gmail might as well CC their strategy docs directly to the opposition. Bonus points: your entire contact list gets implicated too!</p>"},{"location":"archive/cm.archive/blog/posts/The%20Revolution%20Will%20Not%20Get%20Likes/#its-getting-worse-fast","title":"It's Getting Worse, Fast","text":"<p>With the subtlety of a brick through a Starbucks window, these platforms are ramping up suppression of any non-capitalist thought. Today it's shadowbans, tomorrow it's sharing your location with \"concerned authorities,\" and next week it's \"predictive threat assessment\" (aka pre-crime).</p> <p>Straight bet: when mass deportations hit the US, every major social platform will have their data ready to go faster than you can say \"just following orders.\"</p>"},{"location":"archive/cm.archive/blog/posts/The%20Revolution%20Will%20Not%20Get%20Likes/#your-digital-exit-strategy-youre-gonna-need-it","title":"Your Digital Exit Strategy (You're Gonna Need It)","text":"<p>If you're running an org heavy on social, here's your homework:</p> <ul> <li>Export your followers/following lists NOW. When (not if) you get banned, you'll want that rolodex</li> <li>Get those emails and phone numbers like you're a club promoter in 2005</li> <li>Meet your actual neighbors (yes, the ones behind those scary doors called \"outside\")</li> <li>Return to analog: Flyers, stickers, graffiti. Make the streets your timeline</li> </ul>"},{"location":"archive/cm.archive/blog/posts/The%20Revolution%20Will%20Not%20Get%20Likes/#money-talks-so-stop-paying-your-oppressors","title":"Money Talks, So Stop Paying Your Oppressors","text":"<p>Stop throwing money at social media ads. You're basically paying your executioner for a slightly sharper axe. If you must spend cash on promotion:</p> <ul> <li>Plaster every telephone pole in a 5-mile radius</li> <li>Become the person coffee shop bulletin boards fear</li> <li>Make your car a rolling billboard</li> <li>Find local podcasters who aren't Joe Rogan clones</li> <li>Turn the subway into your personal art gallery</li> </ul>"},{"location":"archive/cm.archive/blog/posts/The%20Revolution%20Will%20Not%20Get%20Likes/#the-offline-revolution","title":"The Offline Revolution","text":"<p>Remember: The revolution will not be monetized. It won't have sponsored content. It won't be algorithm-optimized. And it definitely won't fit in your Instagram grid.</p> <p>But it might just start with a conversation at your local coffee shop, a flyer in someone's hand, or a really spicy piece of bathroom graffiti.</p>"},{"location":"archive/cm.archive/blog/posts/The%20Revolution%20Will%20Not%20Get%20Likes/#read-more","title":"Read More","text":"<p>Want more info to covince you to leave these platforms: </p> <ul> <li>Twitter is Dead, Long Live X</li> <li>Are you a leftist? Who is reading your secrets?</li> <li>Distributed Digital Organizing is the Way Out</li> <li>How To Not Get Got Making Content</li> </ul> <p>\"The master's tools will never dismantle the master's house, but they might help us build our own somewhere else.\" \u2013 Audre Lorde (but make it digital resistance). </p> Remember: You Are Not Your Likes <p>The revolution will not be monetized.</p> <p>The revolution will not have sponsored content.</p> <p>The revolution will not be algorithm-optimized.</p> <p>The revolution will not be in your feed.</p> Immediate Actions: <ul> <li> \u2192 Export your follower data today </li> <li> \u2192 Start building your physical mailing list </li> <li> \u2192 Set up local communication networks </li> <li> \u2192 Plan your platform exit strategy </li> </ul> \"The master's tools will never dismantle the master's house.\" - Audre Lorde"},{"location":"archive/cm.archive/blog/posts/Update%201/","title":"Update","text":"<p>This is a test</p> <p></p> <p>Why Change Maker</p> <p>Test</p> <p>Test</p> <p>Hello this is a test note</p> <p>test (1)</p> <ol> <li>this is a test annotation</li> </ol> <p>bold </p> <ul> <li> <p>Test</p> <p>Test</p> </li> <li> <p>Test</p> <p>Test</p> </li> <li> <p>Test</p> <p>Test</p> </li> <li> <p>TEst</p> <p>TEst</p> </li> </ul> Subscribe <p> </p> <p> </p> <p> Weekly(ish) Update </p> <p> </p> <p>Hay send this email! </p> <p>Imagine the email content here! </p> <p>test</p>"},{"location":"archive/cm.archive/blog/posts/Update%202/","title":"Change Maker Update V3.8.7","text":"<p>Okay so we have a decent new update! Introducing </p> <ul> <li>Landing Page - Change Maker landing page for navigating application.</li> <li>NocoDB - Database management for all and any data.</li> </ul>"},{"location":"archive/cm.archive/blog/posts/Update%202/#landing-page","title":"Landing Page","text":"<p>The landing page is our newest custom built addition to the Change Maker system. It is going to be the central hub for managing the applications of Change Maker. </p> <p>The User Management grants different users access to the Landing Page and is only visible to the account administrator. </p> <p>Security</p> <p>The landing page is not yet secure for production use. Make sure to set access rules inside each application based on documentation. We also recommend using Cloudflare Zero Trust access rules to secure applications for two-factor authentication. </p>"},{"location":"archive/cm.archive/blog/posts/Update%202/#nocodb","title":"NocoDB","text":""},{"location":"archive/cm.archive/blog/posts/Update%202/#nocodb-is-a-no-code-database-platform-that-allows-teams-to-collaborate-and-build-applications-with-ease-of-a-familiar-and-intuitive-spreadsheet-interface-this-allows-even-non-developers-or-business-users-to-become-software-creators-nocodb","title":"\"NocoDB is a no-code database platform that allows teams to collaborate and build applications with ease of a familiar and intuitive spreadsheet interface. This allows even non-developers or business users to become software creators.\" - NocoDBSubscribe","text":"<p>This is such a powerful app! Import data from any source cough Nationbuilder cough and start building value based on that data. You can make forms, kabans, and move data between Change Maker databases with ease. As we grow out the network of apps, this database center will be what our automation systems reference and Change Maker dashboards are built on. A great way to save a tonne of dollars is to reduce how many contacts you store elsewhere and start storing them for free locally. </p> <p>NocoDB Manual </p> <p>So if you are on the mailing list these features are in Change-Maker-V3.8.7. Sign up for the newsletter to be kept up to date with releases: </p> <p> </p> <p> </p> <p> Weekly(ish) Update </p> <p> </p>"},{"location":"archive/cm.archive/blog/posts/Update%203/","title":"Update 1.0","text":"<p>Hello new friends! Thanks for joining us on this journey. It has been awhile since we provided a update and so we have a lot of exciting updates to share with you. These include: </p> <ul> <li>Development</li> <li>AI Model Hosting</li> <li>User Management System</li> <li>Updated User Interface</li> <li>Simple Button</li> </ul>"},{"location":"archive/cm.archive/blog/posts/Update%203/#development","title":"Development","text":"<p>The next quarter we are focused on two things: fast value adds and stable production ready installation scripts. This means we are going to be adding new, already secure, and production ready applications to the Change Maker system and updating the current applications to be more stable and secure on installation. </p> <p>Following the addtion of the fast value applications and a stable installation script, we will begin the process of integratting all the applications across the system. The original peices of Change Maker, like the tech running the repo, will also be updated to more stable and secure systems. </p>"},{"location":"archive/cm.archive/blog/posts/Update%203/#fast-value","title":"Fast Value","text":"<p>We have currently flagged the followng applications for integration into Change Maker: </p> <ul> <li>HiEvents is a event management software. They offer effortless event management for conferences, nightclubs, and everything in between.</li> <li>Mattermost is a full slack alternative. They offer full data sovereignty and security for your teams sensitive communications.</li> <li>BluSky is a federated social media platform. Using your existing Change Maker domain, you can host your own BluSky server for complete control over your social media presence.</li> <li>Budibase is a low-code app builder. It serves as a comprehensive alternative to Google Forms and Sites, enabling the creation of applications like Email Targeter.</li> <li>n8n is a low-code automation platform. As the leading automation software for technical teams, it may enable seamless automation across your entire Change Maker installation.</li> <li>Monica is a relationship-focused CRM system. It excels in politics by prioritizing genuine connections and offering clear visualization of households and community relationships.</li> <li>Answers is a team-oriented Q&A platform. It streamlines volunteer organization and helps teams quickly understand various campaign roles and responsibilities.</li> </ul>"},{"location":"archive/cm.archive/blog/posts/Update%203/#production-ready-installation-scripts","title":"Production Ready Installation Scripts","text":"<p>General development is focused getting the current build-out to production ready with a one command install on most standard operating systems. This will include a new configuration script and a new start script with more detailed instructions on how to up Change Maker. </p>"},{"location":"archive/cm.archive/blog/posts/Update%203/#timing","title":"Timing","text":"<p>We suspect this round of development to take 3-4 months, depending on other workloads. If anyone is interested in helping out, please reach out to us at admin@bnkops.ca.</p>"},{"location":"archive/cm.archive/blog/posts/Update%203/#ai-model-hosting","title":"AI Model Hosting","text":"<p>We are also working to move all our systems of of Meta products; this includes this the models running Daisy AI.</p> <p>We are also working on building our first server to host AI models so we can move our entire development stack to a secure and private environment.</p>"},{"location":"archive/cm.archive/blog/posts/Update%203/#user-management-system","title":"User Management System","text":"<p>Right now we ask users to create access rules for the Change Maker network of apps using Cloudflare Zero Trust. As a alternative to this cloud system, we are going to be integrating Keycloak into the Change Maker system ASAP. This will allow for a more secure and robust user management system that is localized to the installation device and can be used across all Change Maker applications.</p>"},{"location":"archive/cm.archive/blog/posts/Update%203/#updated-user-interface","title":"Updated User Interface","text":"<p>The system also now ships with a updated login page for the landing page, landing page, and introduces dark mode to the editor.</p> <p></p> <p></p> <p></p>"},{"location":"archive/cm.archive/blog/posts/Update%203/#simple-button","title":"Simple Button","text":"<p>Simple Button is now available! You can find it under the Simple Button page on our manuals site. We are going to integrate the Simple Button into the Change Maker system to allow for easy campaign button integration.</p>"},{"location":"archive/cm.archive/blog/posts/Update%204/","title":"Update 4.0","text":"<p>Okay taking notes as I go this time around. Follow along as I do a clean up of the Change Maker system.</p>"},{"location":"archive/cm.archive/blog/posts/Update%204/#development","title":"Development","text":"<p>Okay starting off by doing a file clean-up. Lots of baggage in the system right now. </p> <ol> <li>Cleaned up the code and home.html file. </li> <li>Creating a stremalined home page. </li> </ol> <p>DS</p>"},{"location":"archive/cm.archive/blog/posts/Update%205/","title":"Changemaker 3.9.4","text":"<p>We have jumped several updates! A quick overview: </p>"},{"location":"archive/cm.archive/blog/posts/Update%205/#new-functionality","title":"New Functionality","text":""},{"location":"archive/cm.archive/blog/posts/Update%205/#monica-crm","title":"Monica CRM","text":"<p>Changemaker now bundles with Monica! This CRM is geared towards personal and familiar relations; way more useful for mapping connections between people then a sales based CRM. </p>"},{"location":"archive/cm.archive/blog/posts/Update%205/#annoucement-bar-editor","title":"Annoucement Bar Editor","text":"<p>Users can now edit the annoucement bar from inside changemaker itself. </p> <p></p> <p>Also updated the editor panels for the home.html and the mkdocs.yml for consitent styling across all editor panels. </p>"},{"location":"archive/cm.archive/blog/posts/Update%205/#simple-button-updates","title":"Simple Button Updates","text":"<p>Simple Buttons now have a <code>copy</code> features for all text components, making them more versatile and usable even if the user doesnt have a emial client configured. Clicking the <code>send email</code> button now also automatically copies email body text to clipboard. </p> <p></p>"},{"location":"archive/cm.archive/blog/posts/Update%205/#onboarding-flow","title":"Onboarding Flow","text":"<p>A all new first build experience is completed, which steps the user through deploying their first Changemaker </p> <p></p>"},{"location":"archive/cm.archive/blog/posts/Update%205/#general-bug-fixes","title":"General Bug Fixes","text":"<ul> <li>Cleaned up landing page and env files</li> <li>Moved a lot of configuration to root</li> <li>Fixed bug for saving the home.html</li> <li>Moved the home.html template editor to main panel. </li> <li>Updated all the editor panels. </li> </ul>"},{"location":"archive/cm.archive/blog/posts/Update%206/","title":"Changemaker 3.9.9","text":"<p>Big update! We have officially gotten Syncthing integrated! Rigorous testing is still needed to find out hitches however any docs written with this system now can be shared directly and built with another ChangeMaker system; also opening the door for connected & communicative systems.</p> <p>The original theory is coming together. </p>"},{"location":"archive/cm.archive/blog/posts/Update%206/#next-objectives","title":"Next Objectives","text":"<p>Video Server I have decided to park finding a video hosting solution for the time being; this may require that bnkops just hosts a dedicated web server node. Trying to build this using the changemaker script would be tricky however hosting it on a dedicated machine a lot easier. </p> <p>Looking into MediaCMS: https://github.com/mediacms-io/mediacms</p> <p>And also looking into Owncast: https://owncast.online/</p> <p>Pangolin A open sourced self-hosted alternative to cloudflared tunnels has been released: https://github.com/fosrl/pangolin?tab=readme-ov-file</p>"},{"location":"archive/cm.archive/blog/posts/Update%207/","title":"Changemaker 3.9.9.1","text":"<p>Okay latest update is Apache Answers added to the system. </p> <p>Tonnes of backend support stuff and bug fixes: </p> <ul> <li>new system for domain updating (still needs some work)</li> </ul>"},{"location":"archive/cm.archive/blog/posts/myfirst/","title":"Learning the Blog System","text":"<p>Just now learning how the blog system works in mkdocs.</p> <p>Never actually had to use this before; was not creating content like this. I think this is how we will integrate the changelog and other updates. Further, want to make any posts made in the listmonk to show up as blog posts, if wanted. </p>"},{"location":"archive/cm.archive/manuals/","title":"Change Maker Codebase Overview","text":"Over 0 lines of code/content and counting initializing documentation system checking dependencies... \u2713 site built ready to serve \u2713 newsletter configured ready \u2713 real-time preview active \u2713 editor built online \u2728 change maker ready! <p>Welcome to the Change Maker codebase documentation! On this page you will find a highlevel overview of how the system works and how to get started. For more detailed information, check out the rest of the manuals section for in-depth guides on specific topics.</p>"},{"location":"archive/cm.archive/manuals/#modular-codebase","title":"Modular Codebase","text":"<p>Change Maker is built with a modular codebase that separates the frontend, backend, and content components. This modular design allows for easy customization, extensibility, and maintenance of the system.</p> <p>The system uses Docker for containerization, making it easy to deploy and run on any platform. It is designed to be self-hosted, giving you full control over your data and content. </p> <p>Installation, from just the startup script, does require a internet connection. This is because the system needs to download the latest versions of the software it uses.</p>"},{"location":"archive/cm.archive/manuals/#key-components","title":"Key Components","text":"<p>The Change Maker codebase consists of the following key components:</p> <p>Mkdocs-Material Theme: The system uses the Mkdocs-Material theme for building documentation websites. The theme provides a clean, responsive design with support for custom templates and styles. It handles the building of your website. Mkdocs-Material can be installed as a standalone package or used as part of the Change Maker system. Check out the Mkdocs-Material documentation for more information: </p> <p>Mkdocs-Material Theme</p> <p>Landing Page System: The landing page is built using a custom template that displays links to apps as installed and a simple user management system for accessing the backend. </p> <p>NocoDB Integration: The system integrates with NocoDB, an open-source no-code database platform that serves as a modern alternative to Airtable. It provides a powerful backend database solution for storing and managing structured data, with features like automated REST APIs, role-based access control, and a spreadsheet interface. NocoDB can be accessed through the admin interface and is used for managing dynamic content and user data. Check out NocoDB documentation for more information:</p> <p>NocoDB Documentation</p> <p>Frontend Editor: The frontend editor is a React-based application that provides a user interface for editing content, managing files, and viewing previews. It supports markdown with Obsidian-style features, real-time previews, and content conversion for markdown files. It is a fully custom built system from bnkops.</p> <p>Listmonk Integration: The system integrates with Listmonk, an open-source self-hosted newsletter and mailing list manager. Listmonk allows you to collect and manage subscriber information, send newsletters, and track engagement. The integration enables you to collect subscriber information and send updates to users who subscribe to your content. Check out Listmonk documentaiton for more information: </p> <p>Listmonk Documentation</p>"},{"location":"archive/cm.archive/manuals/#architecture-overview","title":"Architecture Overview","text":"<p>Change Maker is built with a modular architecture consisting of several key components:</p>"},{"location":"archive/cm.archive/manuals/#frontend","title":"Frontend","text":"<ul> <li>Technologies Used: React, JavaScript</li> <li>Location: <code>frontend/</code></li> <li>Description: Provides a user interface for editing content, managing files, and viewing previews. The editor supports markdown with Obsidian-style features, real-time previews, and content conversion for markdown files.</li> </ul>"},{"location":"archive/cm.archive/manuals/#backend","title":"Backend","text":"<ul> <li>Technologies Used: Node.js, Express</li> <li>Location: <code>backend/</code></li> <li>Description: Handles server-side operations, including file management, content conversion, and serving the frontend application. It manages the interaction between the editor and the underlying file system.</li> </ul>"},{"location":"archive/cm.archive/manuals/#documentation-content","title":"Documentation Content","text":"<ul> <li>Format: Markdown files</li> <li>Location: <code>docs/</code></li> <li>Description: Contains the markdown files that make up the content of the website. The files are organized into manuals, guides, and other documentation.</li> </ul>"},{"location":"archive/cm.archive/manuals/#templates-and-overrides","title":"Templates and Overrides","text":"<ul> <li>Location: <code>docs/overrides/</code></li> <li>Description: Custom HTML templates and CSS styles used to override and extend the default theme. The <code>home.html</code> template is used for customizing the landing page.</li> </ul>"},{"location":"archive/cm.archive/manuals/#configuration","title":"Configuration","text":"<ul> <li>File: <code>mkdocs.yml</code></li> <li>Description: Configuration file for MkDocs, specifying site settings, navigation structure, theme customization, and plugins. It controls how the site is built and displayed.</li> </ul>"},{"location":"archive/cm.archive/manuals/#core-features","title":"Core Features","text":"<ul> <li> <p>Simple Markdown Writing: Use Markdown for easy content creation with support for Obsidian-style links and features.</p> </li> <li> <p>Real-time Preview: See changes immediately with live previews of your content.</p> </li> <li> <p>Customizable Templates: Tailor the look and feel of your site using custom HTML templates and CSS overrides.</p> </li> <li> <p>Self-Hosted Platform: Run everything on your own hardware with no external dependencies or cloud services required.</p> </li> <li> <p>Privacy Focused: No external requests, GDPR compliant, and cookie-free by default.</p> </li> </ul>"},{"location":"archive/cm.archive/manuals/#need-help","title":"Need Help?","text":"<p>Browse through the detailed guides in the manuals section or reach out to the bnkops team for support. We're here to help you build your digital power!</p>"},{"location":"archive/cm.archive/manuals/Backend%20%26%20Editor/","title":"Backend & Editor","text":"<p> A powerful documentation system that puts you in control. Edit your content locally or remotely with plain text and Markdown, while seeing your changes instantly. </p> \ud83d\udcdd Local-First Editing <p>All content is stored locally in plain text and Markdown format. Edit with your favorite tools, no vendor lock-in.</p> \ud83d\udc41\ufe0f Live Preview <p>See your changes instantly with built-in preview. No need to save or publish - everything updates in real-time.</p> \ud83d\udcf1 Multi-Environment <p>Work seamlessly across desktop and mobile environments. Your workflow, your choice.</p> \ud83d\udd27 Full Customization <p>Access and modify any part of the system. Your site, your rules, your customizations.</p>"},{"location":"archive/cm.archive/manuals/Backend%20%26%20Editor/#desktop-environment","title":"Desktop Environment","text":"<p>Upon first build, bnkops Change Maker V3 comes bundled with the current theme, documentation, and front-page. All can be updated within the app in plain text and notes are written using Markdown.</p> <p></p>"},{"location":"archive/cm.archive/manuals/Backend%20%26%20Editor/#live-preview","title":"Live Preview","text":"<p>Click the double headed arrow to open and close live preview panel. The live preview panel shows your site updates inside the editor live. All changes to .md files are automatically pushed to site; no need to save or manage publication details. V4 will ship with state management (publish, draft, etc.) however if you want to work with drafts we suggest that users write files in obsidian and then copy/paste content to site.</p> <p></p>"},{"location":"archive/cm.archive/manuals/Backend%20%26%20Editor/#files","title":"Files","text":"<p>You will have a files section, which allows you to create, delete, and organize your websites structure. </p> <p>Hidden Content</p> <p>Folders that start with a period (.example) are hidden from navigation in cmeditor and public site. If using obsidian as content management system, this allows for folders to contain files, images, gifs, and website organization essentials without making them public. V4 will come with more fine grain control of what files are served to public and cmeditor.</p> <p></p>"},{"location":"archive/cm.archive/manuals/Backend%20%26%20Editor/#editor","title":"Editor","text":"<p>The editor is where you can write and edit your content. The editor is a plain text editor that supports markdown. Markdown is a simple way to format text that is easy to read and write.</p> <p></p>"},{"location":"archive/cm.archive/manuals/Backend%20%26%20Editor/#backlinks","title":"Backlinks","text":"<p>The backlinks panel on the right hand side is where your you can monitor your internal linking. See where all your files are being referenced and if internal linking is working properly. </p> <p> </p>"},{"location":"archive/cm.archive/manuals/Backend%20%26%20Editor/#settings","title":"Settings","text":"<p>Along the top bar are the settings. The double arrows opens/closes the live preview. The cog icon opens the <code>mkdocs.yml</code> which is how you set your sites features, plugins, and layout. The table icon opens the <code>home.html</code> in which you can edit your websites home page. </p> <p></p>"},{"location":"archive/cm.archive/manuals/Backend%20%26%20Editor/#mkdocsyml","title":"mkdocs.yml","text":"<p>The mkdocs.yml is accessed by clicking the cog icon or by opening the mkdocs.yml file inside your top level /Change Maker V3 folder. This is a plain text file. Edits made to this file, upon save, reload site and update universally. If preview shows site down, it is because syntax for your .yml file is incorrect. To fix, you can check the guides, or you can ask any capable LLM for assistance. See Customize Your Landing Page for prompting manual.</p> <p>Change Maker ships with several dozen features pre-installed and a navigation tree. Features, plugins, and references can be found on the Material for MkDocs site. Many future features will ship as features that are enabled through this plain text system. </p> <p>Check out Material for MkDocs Documentation</p>"},{"location":"archive/cm.archive/manuals/Backend%20%26%20Editor/#change-maker-mkdocsyml","title":"Change Maker mkdocs.yml","text":"mkdocs.yml Configuration <pre><code>site_name: Change Maker # The name of the site\nsite_description: A powerful documentation system combining simplicity with professional features. # A brief description of the site\nsite_url: https://changemaker.bnkops.com/ # The URL where the site is hosted\nsite_author: Bunker Ops # The author or organization responsible for the site\nsite_dir: docs # The directory where the documentation files are stored\n\ntheme:\n logo: logo.svg # The logo file for the site\n name: material # The theme name, in this case, 'material'\n custom_dir: docs/overrides # Directory for custom theme overrides\n palette:\n scheme: slate # The color scheme for the theme\n primary: amber # The primary color for the theme\n accent: deep purple # The accent color for the theme\n features:\n - navigation.sections # Enable navigation sections\n - navigation.instant # Enable instant navigation\n - navigation.instant.progress # Show progress in instant navigation\n - navigation.instant.preview # Enable instant preview in navigation\n - navigation.tracking # Enable navigation tracking\n - navigation.indexes # Enable navigation indexes\n - toc.integrate # Integrate table of contents\n - content.code.copy # Enable copy button for code blocks\n - navigation.path # Show navigation path\n - navigation.top # Enable top navigation\n - navigation.footer # Enable footer navigation\n\nmarkdown_extensions:\n - pymdownx.highlight:\n anchor_linenums: true # Enable line numbers in code blocks\n line_spans: __span # Add spans to lines in code blocks\n pygments_lang_class: true # Use Pygments language class for code blocks\n - pymdownx.inlinehilite # Enable inline highlighting\n - pymdownx.snippets # Enable snippets\n - pymdownx.superfences # Enable superfences for code blocks\n - admonition # Enable admonitions\n - pymdownx.details # Enable details extension\n - attr_list # Enable attribute lists\n\nextra_css:\n - stylesheets/extra.css # Additional CSS file for custom styles\ncopyright: Copyright &copy; 2024 The Bunker Operations # Copyright information\n\nextra:\n generator: false # Disable generator meta tag\n social:\n - icon: material/web # Icon for the social link\n link: https://repo.bnkops.com/Home.html # URL for the social link\n\nplugins:\n - social # Enable social plugin\n - search # Enable search plugin\n\nnav:\n - Welcome to Bnkops Change Maker: index.md # Navigation link to the welcome page\n - Why Change Maker: Why Change Maker.md # Navigation link to the 'Why Change Maker' page\n - Bnkops Deploy: bnkops Deploy.md # Navigation link to the 'Bnkops Deploy' page\n - Manuals: # Navigation section for manuals\n - Getting Started: manuals/index.md # Link to the 'Getting Started' manual\n - Prerequisites: manuals/prerequisites.md # Link to the 'Prerequisites' manual\n - Installation: manuals/Installation.md # Link to the 'Installation' manual\n - Backend & Editor: manuals/Backend & Editor.md # Link to the 'Backend & Editor' manual\n - Simple Markdown Guide: manuals/Simple Markdown Guide.md # Link to the 'Simple Markdown Guide' manual\n - Use Obsidian as Site Editor: manuals/obsidian.md # Link to the 'Use Obsidian as Site Editor' manual\n - Customize Your Landing Page: manuals/Customize Your Landing Page.md # Link to the 'Customize Your Landing Page' manual\n - Example Political Apps: manuals/Examples.md # Link to the 'Example Political Apps' manual\n - Get Online: manuals/Get Site Online.md # Link to the 'Get Online' manual\n - Visit repo.bnkops.com for more!: https://repo.bnkops.com/Home.html # External link to the repository\n - Admin Log: Admin Log.md # Navigation link to the 'Admin Log' page\n</code></pre>"},{"location":"archive/cm.archive/manuals/Backend%20%26%20Editor/#navigation","title":"Navigation","text":"<p>Site wide navigation can be set purposefully by declaring it inside the .yml file or can be left to automatic alphabetical rendering. To switch to alphabetical approach, delete nav section in .yml file. Hybrid approaches are possible for things like blogs; see Material for MkDocs for more. </p> <p></p>"},{"location":"archive/cm.archive/manuals/Backend%20%26%20Editor/#qr-code-maker","title":"QR Code Maker","text":"<p>Qr code maker is a feature that allows you to generate QR codes for your site. This is useful for sharing your site with others. You can access the feature by clicking on the icon above the editor or by typing [[qr]] in the editor.</p> <p></p> <p></p>"},{"location":"archive/cm.archive/manuals/Backend%20%26%20Editor/#landing-page-html-panel","title":"Landing Page HTML Panel","text":"<p>Click on the table icon to open the landing page HTML panel. See Customize Your Landing Page for more instruction for updating this section. </p> <p></p>"},{"location":"archive/cm.archive/manuals/Backend%20%26%20Editor/#mobile-environment","title":"Mobile Environment","text":"<p>The mobile development currently deploys folded on load. This can be intimidating on first glance; trust us it is okay. To get to editor smoothly: </p> <ol> <li>Select a file and collapse the file menu</li> <li>Close the preview menu by clicking the double header arrow icon</li> <li>Collapse the backlinks section</li> </ol>"},{"location":"archive/cm.archive/manuals/Backend%20%26%20Editor/#editing-on-mobile-browser","title":"Editing on Mobile Browser","text":""},{"location":"archive/cm.archive/manuals/Backend%20%26%20Editor/#diving-further","title":"Diving Further","text":"<p>The entire site is built locally, which means all your files are available for updates locally. You can use any editor, such as VSCode, Obsidian, Texteditor, or your preferred platform to do site wide updates. As there are no blackbox code sections, you can access and modify any part of the system. </p> <p></p>"},{"location":"archive/cm.archive/manuals/Backend%20%26%20Editor/#extracss","title":"extra.css","text":"<p>Want to spruce up your site even further? Access the extra.css file <code>docs/stylesheets/extra.css</code> and add in any site wide css styling you would like to add. Shipped by default are code block improvements. </p> <p></p>"},{"location":"archive/cm.archive/manuals/Backend%20%26%20Editor/#again-learn-more-at-mkdocs-material","title":"Again, Learn More At Mkdocs-Material","text":"<p>The system uses mkdocs-material as the backend that builds your site. Material for Mkdocs is also a open-source project that has a massive community behind it. They have extensive documentation to setup a vast array of features and customization.</p> <p>Exciting to us, and coming to you all soon, is support for site creation in over 60 languages. and built in features like data privacy.</p> <p>Check out Material for MkDocs Documentation</p> <p></p>"},{"location":"archive/cm.archive/manuals/Build%20Site/","title":"Building Your Custom Site","text":"<p>Getting started with Change Maker is simple and flexible. Here are the steps to create your own custom site from scratch.</p>"},{"location":"archive/cm.archive/manuals/Build%20Site/#starting-from-scratch","title":"Starting from Scratch","text":"<p>Your site only needs a few things to get started:</p> <p>Docs folder: This is where all your content will live. You can organize your content into subfolders and files as needed.</p> <p>Configuration file: This file contains the settings for your site, such as the site title and description.</p> <p>Navigation: This text defines the structure of your site, including the order of pages and the hierarchy of the navigation.</p>"},{"location":"archive/cm.archive/manuals/Build%20Site/#docs","title":"Docs","text":"<ol> <li> <p>Backup the Docs Folder: Before making any changes, it's a good idea to backup the <code>docs</code> folder. This ensures you have a copy of the original content and all these manuals. </p> </li> <li> <p>Create a New Folder: Create a new folder called <code>docs</code> in the root directory. This will be the root folder for your custom site.</p> </li> <li> <p>Add Your Content: Add your content to the <code>docs</code> folder. You can create subfolders and organize your content as needed.</p> </li> </ol>"},{"location":"archive/cm.archive/manuals/Build%20Site/#configuration","title":"Configuration","text":"<p>The most basic configuration for your site is the <code>mkdocs.yml</code> file. This file contains the site title, description, and other settings.</p> Basic mkdocs.yml Configuration <pre><code>title: My Custom Site\ndescription: This is my custom site.\n</code></pre> <p>You can find all the configuration options on the mkdocs documentation page: </p> <p>MkDocs documentation</p> <p>The Bunker Operations Current Configuration:</p> Bunker Operations mkdocs.yml Configuration <pre><code>site_name: Change Maker\nsite_description: A powerful documentation system combining simplicity with professional features. Own your documentation, data, and design; don't rent it.\nsite_url: https://changemaker.bnkops.com/\nsite_author: Bunker Ops\nsite_dir: docs\n\ntheme:\n logo: logo.svg\n name: material\n custom_dir: docs/overrides\n palette:\n scheme: slate\n primary: amber\n accent: deep purple\n features:\n - navigation.sections\n - navigation.instant\n - navigation.instant.progress \n - navigation.instant.preview\n - navigation.tracking\n - navigation.indexes\n - toc.integrate\n - content.code.copy\n - navigation.path\n - navigation.top\n - navigation.footer\n - header.autohide\n\nmarkdown_extensions:\n - pymdownx.highlight:\n anchor_linenums: true\n line_spans: __span\n pygments_lang_class: true\n - pymdownx.inlinehilite\n - pymdownx.snippets\n - pymdownx.superfences\n - admonition\n - pymdownx.details\n - attr_list\n - md_in_html\n - footnotes\n - pymdownx.emoji:\n emoji_index: !!python/name:material.extensions.emoji.twemoji\n emoji_generator: !!python/name:material.extensions.emoji.to_svg\n\nextra_css:\n - stylesheets/extra.css\n - https://fonts.googleapis.com/icon?family=Material+Icons\n\ncopyright: Copyright &copy; 2024 The Bunker Operations - Built with Change Maker\n\nextra:\n generator: false\n social:\n - icon: material/web\n link: https://repo.bnkops.com/Home.html\n\nplugins:\n - social\n - search\n - blog:\n draft_on_serve: false\n\nnav:\n - Welcome to Bnkops Change Maker: index.md\n - Why Change Maker: Why Change Maker.md\n - Bnkops Deploy: bnkops Deploy.md\n - Admin Log: blog/index.md\n - Install & Manuals:\n - Getting Started: manuals/index.md\n - Prerequisites: manuals/prerequisites.md\n - Installation: manuals/Installation.md\n - Reset & Build: manuals/Build Site.md\n - Backend & Editor: manuals/Backend & Editor.md\n - Simple Markdown Guide: manuals/Simple Markdown Guide.md\n - Commands: manuals/Commands.md\n - Use Obsidian as Site Editor: manuals/obsidian.md\n - Customize Your Landing Page: manuals/Customize Your Landing Page.md\n - Example Political Apps: manuals/Examples.md\n - Get Online: manuals/Get Site Online.md\n - Visit repo.bnkops.com for more!: https://repo.bnkops.com/Home.html\n - Feature Tracking: Feature Tracking.md\n - Who is bnkops: Who is bnkops.md\n</code></pre>"},{"location":"archive/cm.archive/manuals/Build%20Site/#navigation","title":"Navigation","text":"<p>The navigation for your site is defined in the mkdocs.yml file. This file contains the structure of your site, including the order of pages and the hierarchy of the navigation. You have two options for defining the navigation:</p> <ol> <li>Manual Navigation: You can manually define the navigation in the <code>mkdocs.yml</code> file. This gives you full control over the structure of your site. For example </li> </ol> Manual Navigation Example <pre><code>nav:\n - Home: index.md \n - About: about.md\n - Contact: contact.md\n</code></pre> <ol> <li>Automatic Navigation: You can let MkDocs automatically generate the navigation based on the structure of your <code>docs</code> folder. This is the default behavior if you don't define the navigation in the <code>mkdocs.yml</code> file. Mkdocs will generates navigation via alphabetical order of the files in the <code>docs</code> folder. </li> </ol> <p>For example, if you have the following files in your <code>docs</code> folder:</p> Example Docs Folder Structure <pre><code>docs/\n index.md\n about.md\n contact.md\n</code></pre> <p>These will load up in the navigation as follows:</p> Generated Navigation Example <pre><code>- About\n- Contact\n- Home\n</code></pre> <p>index.md</p> <p>The <code>index.md</code> file is always the first file in the navigation. The root index.md file is always the first file in the navigation. It works as the home page with it is located in the root of the <code>docs</code> folder. If you create a index.md file in a subfolder, it will be the first file in the navigation of that subfolder.</p>"},{"location":"archive/cm.archive/manuals/Build%20Site/#more-customization","title":"More Customization","text":"<p>Follow the rest of the guide to build up your custom site with more advanced features and customization options.</p>"},{"location":"archive/cm.archive/manuals/Code%20Snippets/","title":"Code Snippets","text":"<p>Find below a list of code snippets that can be used in your projects. These are all snippets that we already use in our projects and are tested.</p>"},{"location":"archive/cm.archive/manuals/Code%20Snippets/#email-button","title":"Email ButtonSelect Your City Councillor","text":"<p>A simple email button that allows users to email their selected city councillor.</p> Email Your Councillor \u00d7"},{"location":"archive/cm.archive/manuals/Code%20Snippets/#basic-email-structure","title":"Basic Email Structure","text":"<p>The email template is defined in the <code>emailCouncillor</code> function using two main components: <pre><code>const subject = \"Constituent Feedback - [Your Issue]\";\nconst body = `Dear ${councillor.name},\n// ... rest of the email content\n`;\n</code></pre></p>"},{"location":"archive/cm.archive/manuals/Code%20Snippets/#how-to-modify-the-template","title":"How to Modify the Template","text":""},{"location":"archive/cm.archive/manuals/Code%20Snippets/#1-changing-the-subject-line","title":"1. Changing the Subject Line","text":"<p>Locate the <code>subject</code> constant in the <code>emailCouncillor</code> function: <pre><code>const subject = \"Constituent Feedback - [Your Issue]\";\n</code></pre> Replace the text inside the quotes with your desired subject line.</p>"},{"location":"archive/cm.archive/manuals/Code%20Snippets/#2-modifying-the-email-body","title":"2. Modifying the Email Body","text":"<p>Find the <code>body</code> template string (marked with backticks `) and modify its content: <pre><code>const body = `Dear ${councillor.name},\n\nYour new email template goes here...`;\n</code></pre></p>"},{"location":"archive/cm.archive/manuals/Code%20Snippets/#3-available-variables","title":"3. Available Variables","text":"<p>The following variables are available for use in your template: - <code>${councillor.name}</code> - Councillor's full name - <code>${councillor.ward}</code> - Ward name - <code>${councillor.title}</code> - Councillor's title - <code>${councillor.email}</code> - Councillor's email address</p>"},{"location":"archive/cm.archive/manuals/Code%20Snippets/#4-special-characters-and-formatting","title":"4. Special Characters and Formatting","text":"<ul> <li>Use <code>\\n</code> for line breaks</li> <li>Avoid using special characters like <code>\"</code> or <code>'</code> directly - escape them if needed</li> <li>Remember that HTML formatting will not work in email clients</li> </ul>"},{"location":"archive/cm.archive/manuals/Code%20Snippets/#example-templates","title":"Example Templates","text":""},{"location":"archive/cm.archive/manuals/Code%20Snippets/#general-inquiry-template","title":"General Inquiry Template","text":"<pre><code>const subject = \"General Inquiry from Constituent\";\nconst body = `Dear ${councillor.name},\n\nI am a constituent from ${councillor.ward} seeking information about...`;\n</code></pre>"},{"location":"archive/cm.archive/manuals/Code%20Snippets/#specific-issue-template","title":"Specific Issue Template","text":"<pre><code>const subject = \"Urgent: Traffic Safety Concern\";\nconst body = `Dear ${councillor.name},\n\nI am writing regarding a safety concern at the intersection of...`;\n</code></pre>"},{"location":"archive/cm.archive/manuals/Code%20Snippets/#meeting-request-template","title":"Meeting Request Template","text":"<pre><code>const subject = \"Meeting Request from ${councillor.ward} Constituent\";\nconst body = `Dear ${councillor.name},\n\nI would like to schedule a meeting to discuss...`;\n</code></pre>"},{"location":"archive/cm.archive/manuals/Code%20Snippets/#implementation-tips","title":"Implementation Tips","text":"<ol> <li>Keep subject lines concise and specific</li> <li>Include clear calls to action in the body</li> <li>Maintain professional formatting</li> <li>Test the template with various email clients</li> <li>Consider mobile device compatibility</li> </ol>"},{"location":"archive/cm.archive/manuals/Code%20Snippets/#technical-notes","title":"Technical Notes","text":"<ul> <li>The template uses <code>encodeURIComponent()</code> to properly encode special characters</li> <li>Maximum email length may vary by email client</li> <li>Some email clients may have limitations on mailto link functionality</li> </ul> Edmonton Council Emailer Code <pre><code><!-- Begin Edmonton Council Emailer -->\n<div id=\"edmonton-council-emailer\" class=\"ece-container\">\n <style>\n #edmonton-council-emailer,\n #edmonton-council-emailer * {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n font-family: inherit;\n }\n\n #edmonton-council-emailer.ece-container {\n position: relative;\n width: 100%;\n max-width: 1200px;\n margin: 20px auto;\n padding: 30px;\n font-family: Arial, sans-serif;\n font-size: 16px;\n line-height: 1.5;\n color: #fff;\n background: #1e2124;\n border-radius: 12px;\n isolation: isolate;\n box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);\n }\n\n #edmonton-council-emailer .ece-button-container {\n display: flex;\n align-items: center;\n gap: 20px;\n background: #2a2d31;\n padding: 20px;\n border-radius: 8px;\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);\n }\n\n #edmonton-council-emailer .ece-button {\n padding: 15px 30px;\n font-size: 18px;\n background-color: #ffc107;\n color: #000;\n border: none;\n border-radius: 8px;\n cursor: pointer;\n transition: all 0.3s ease;\n font-weight: bold;\n text-transform: uppercase;\n letter-spacing: 1px;\n }\n\n #edmonton-council-emailer .ece-button:hover {\n background-color: #ffcd38;\n transform: translateY(-2px);\n box-shadow: 0 4px 12px rgba(255, 193, 7, 0.3);\n }\n\n #edmonton-council-emailer .ece-modal {\n display: none;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: rgba(0,0,0,0.8);\n z-index: 2147483647; /* Set to maximum value */\n }\n\n #edmonton-council-emailer .ece-modal-content {\n position: relative;\n background-color: #1e2124;\n margin: 5% auto;\n padding: 30px;\n width: 80%;\n max-width: 1200px;\n max-height: 80vh;\n overflow-y: auto;\n border-radius: 12px;\n box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);\n border: 1px solid #ffc107;\n }\n\n #edmonton-council-emailer .ece-close {\n position: absolute;\n right: 20px;\n top: 20px;\n font-size: 28px;\n cursor: pointer;\n color: #ffc107;\n text-decoration: none;\n line-height: 1;\n transition: all 0.3s ease;\n width: 40px;\n height: 40px;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 50%;\n background: #2a2d31;\n }\n\n #edmonton-council-emailer .ece-close:hover {\n background: #ffc107;\n color: #000;\n transform: rotate(90deg);\n }\n\n #edmonton-council-emailer .ece-councillor-grid {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));\n gap: 20px;\n margin-top: 20px;\n }\n\n #edmonton-council-emailer .ece-councillor-card {\n border: 1px solid #2a2d31;\n border-radius: 12px;\n padding: 15px;\n cursor: pointer;\n transition: all 0.3s ease;\n background-color: #2a2d31;\n }\n\n #edmonton-council-emailer .ece-councillor-card:hover {\n transform: translateY(-5px);\n box-shadow: 0 8px 24px rgba(255, 193, 7, 0.2);\n border-color: #ffc107;\n }\n\n #edmonton-council-emailer .ece-councillor-card img {\n width: 100%;\n height: 200px;\n object-fit: cover;\n border-radius: 8px;\n transition: all 0.3s ease;\n }\n\n #edmonton-council-emailer .ece-councillor-card:hover img {\n transform: scale(1.02);\n }\n\n #edmonton-council-emailer .ece-councillor-card h3 {\n margin: 15px 0 5px;\n color: #fff;\n font-size: 1.2em;\n font-weight: bold;\n }\n\n #edmonton-council-emailer .ece-councillor-card p {\n margin: 5px 0;\n color: #ffc107;\n font-size: 1em;\n }\n\n #edmonton-council-emailer .ece-modal h2 {\n color: #ffc107;\n font-size: 2em;\n margin-bottom: 30px;\n font-weight: bold;\n text-align: center;\n }\n\n @keyframes countUp {\n from {\n transform: translateY(20px);\n opacity: 0;\n }\n to {\n transform: translateY(0);\n opacity: 1;\n }\n }\n\n #edmonton-council-emailer {\n position: static; /* Remove any positioning if unnecessary */\n z-index: auto; /* Reset z-index */\n }\n </style>\n\n <div class=\"ece-button-container\">\n <button class=\"ece-button\" onclick=\"ECE.openModal()\">Email Your Councillor</button>\n </div>\n\n <div class=\"ece-modal\" id=\"ece-modal\">\n <div class=\"ece-modal-content\">\n <span class=\"ece-close\" onclick=\"ECE.closeModal()\">&times;</span>\n <h2>Select Your City Councillor</h2>\n <div class=\"ece-councillor-grid\" id=\"ece-councillor-grid\"></div>\n </div>\n </div>\n\n <script>\n const ECE = {\n count: 0,\n councillors: [\n {\n name: \"Mayor Amarjeet Sohi\",\n title: \"City-Wide Mayor\",\n email: \"mayorsoffice@edmonton.ca\",\n image: \"https://www.edmonton.ca/sites/default/files/public-files/feature-images/Mayor-Sohi-800x494.jpg\",\n ward: \"City-Wide\"\n },\n {\n name: \"Councillor Erin Rutherford\",\n title: \"Ward Anirniq Councillor\",\n email: \"erin.rutherford@edmonton.ca\",\n image: \"https://www.edmonton.ca/sites/default/files/public-files/feature-images/Anirniq-councillor_800x494.jpg\",\n ward: \"Anirniq\"\n },\n {\n name: \"Councillor Aaron Paquette\",\n title: \"Ward Dene Councillor\",\n email: \"aaron.paquette@edmonton.ca\",\n image: \"https://www.edmonton.ca/sites/default/files/public-files/feature-images/Dene-councillor_800x494.jpg\",\n ward: \"Dene\"\n },\n {\n name: \"Councillor Jennifer Rice\",\n title: \"Ward Ipiihkoohkanipiaohtsi Councillor\",\n email: \"jennifer.rice@edmonton.ca\",\n image: \"https://www.edmonton.ca/sites/default/files/public-files/feature-images/Ipiihkoohkanipiaohtsi-councillor_800x494.jpg\",\n ward: \"Ipiihkoohkanipiaohtsi\"\n },\n {\n name: \"Councillor Keren Tang\",\n title: \"Ward Karhiio Councillor\",\n email: \"keren.tang@edmonton.ca\",\n image: \"https://www.edmonton.ca/sites/default/files/public-files/feature-images/Karhiio-councillor_800x494.jpg\",\n ward: \"Karhiio\"\n },\n {\n name: \"Councillor Ashley Salvador\",\n title: \"Ward M\u00e9tis Councillor\",\n email: \"ashley.salvador@edmonton.ca\",\n image: \"https://www.edmonton.ca/sites/default/files/public-files/feature-images/M\u00e9tis-councillor_800x494.jpg\",\n ward: \"M\u00e9tis\"\n },\n {\n name: \"Councillor Andrew Knack\",\n title: \"Ward Nakota Isga Councillor\",\n email: \"andrew.knack@edmonton.ca\",\n image: \"https://www.edmonton.ca/sites/default/files/public-files/feature-images/Nakota-Isga-councillor_800x494.jpg\",\n ward: \"Nakota Isga\"\n },\n {\n name: \"Councillor Anne Stevenson\",\n title: \"Ward O-day'min Councillor\",\n email: \"anne.stevenson@edmonton.ca\",\n image: \"https://www.edmonton.ca/sites/default/files/public-files/feature-images/O-day'min-councillor_800x494.jpg\",\n ward: \"O-day'min\"\n },\n {\n name: \"Councillor Michael Janz\",\n title: \"Ward papastew Councillor\",\n email: \"michael.janz@edmonton.ca\",\n image: \"https://www.edmonton.ca/sites/default/files/public-files/feature-images/papastew-councillor_800x494.jpg\",\n ward: \"papastew\"\n },\n {\n name: \"Councillor Tim Cartmell\",\n title: \"Ward pih\u00easiwin Councillor\",\n email: \"tim.cartmell@edmonton.ca\",\n image: \"https://www.edmonton.ca/sites/default/files/public-files/feature-images/pih\u00easiwin-councillor_800x494.jpg\",\n ward: \"pih\u00easiwin\"\n },\n {\n name: \"Councillor Sarah Hamilton\",\n title: \"Ward sipiwiyiniwak Councillor\",\n email: \"sarah.hamilton@edmonton.ca\",\n image: \"https://www.edmonton.ca/sites/default/files/public-files/feature-images/sipiwiyiniwak-councillor_800x494.jpg\",\n ward: \"sipiwiyiniwak\"\n },\n {\n name: \"Councillor Jo-Anne Wright\",\n title: \"Ward Sspomitapi Councillor\",\n email: \"jo-anne.wright@edmonton.ca\",\n image: \"https://www.edmonton.ca/sites/default/files/public-files/feature-images/Sspomitapi-councillor_800x494.jpg\",\n ward: \"Sspomitapi\"\n },\n {\n name: \"Councillor Karen Principe\",\n title: \"Ward tastawiyiniwak Councillor\",\n email: \"karen.principe@edmonton.ca\",\n image: \"https://www.edmonton.ca/sites/default/files/public-files/feature-images/tastawiyiniwak-councillor_800x494.jpg\",\n ward: \"tastawiyiniwak\"\n }\n ],\n\n init: function() {\n if (window.ECEInitialized) return;\n window.ECEInitialized = true;\n\n document.getElementById('ece-modal').addEventListener('click', function(event) {\n if (event.target === this) {\n ECE.closeModal();\n }\n });\n },\n\n createCouncillorCards: function() {\n const grid = document.getElementById('ece-councillor-grid');\n if (!grid) return;\n\n this.councillors.forEach(councillor => {\n const card = document.createElement('div');\n card.className = 'ece-councillor-card';\n card.innerHTML = `\n <img src=\"${councillor.image}\" alt=\"${councillor.name}\">\n <h3>${councillor.name}</h3>\n <p>${councillor.ward}</p>\n `;\n card.onclick = () => this.emailCouncillor(councillor);\n grid.appendChild(card);\n });\n },\n\n openModal: function() {\n const modal = document.getElementById('ece-modal');\n if (!modal) return;\n\n modal.style.display = 'block';\n if (!document.getElementById('ece-councillor-grid').children.length) {\n this.createCouncillorCards();\n }\n },\n\n closeModal: function() {\n const modal = document.getElementById('ece-modal');\n if (modal) modal.style.display = 'none';\n },\n\n emailCouncillor: function(councillor) {\n this.closeModal();\n\n const subject = \"Constituent Feedback - [Your Issue]\";\n const body = `Dear ${councillor.name},\n\nI am a constituent in ${councillor.ward} and I am writing to you regarding [describe your issue].\n\n[Describe how this issue affects you and your community]\n\nI would appreciate if you could [describe your requested action].\n\nThank you for your time and consideration.\n\nSincerely,\n[Your Name]\n[Your Address]\n[Your Phone Number]`;\n\n const encodedSubject = encodeURIComponent(subject);\n const encodedBody = encodeURIComponent(body);\n\n window.location.href = `mailto:${councillor.email}?subject=${encodedSubject}&body=${encodedBody}`;\n }\n };\n\n // Initialize the component when the document is ready\n document.addEventListener('DOMContentLoaded', function() {\n ECE.init();\n });\n </script>\n</div>\n<!-- End Edmonton Council Emailer -->\n</code></pre>"},{"location":"archive/cm.archive/manuals/Commands/","title":"Quick Link & Command System Guide","text":""},{"location":"archive/cm.archive/manuals/Commands/#using-command-functions-in-the-editor","title":"Using Command Functions in the Editor","text":"<p>The Editor provides a set of command functions that make it easy to insert various elements into your documents. This guide will walk you through how to use these commands and how to update or add new ones.</p> <p>Commands are triggered by typing [[ and a key letter. For example, to insert a button, you would type <code>[[btn]]</code> in the editor. This will trigger the button command and prompt you to enter the button text and URL. This same fuctionality can insert files, images, and other elements into your documents. </p> <p>The available commands are defined in the <code>commands.js</code> file, where you can customize or add new commands as needed.</p> <p>This same functionality can be used in the Obsidian editor, allowing you to quickly insert elements into your documents with minimal effort. </p>"},{"location":"archive/cm.archive/manuals/Commands/#available-commands","title":"Available Commands","text":""},{"location":"archive/cm.archive/manuals/Commands/#insert-button","title":"Insert Button","text":"<ul> <li>Trigger: <code>btn</code></li> <li>Description: Inserts a styled button.</li> <li>How to Use:</li> <li>Type <code>[[btn]]</code> in the editor.</li> <li>A prompt will appear asking for the button text and URL.</li> <li>Fill in the details and the button will be inserted.</li> </ul>"},{"location":"archive/cm.archive/manuals/Commands/#insert-qr-code","title":"Insert QR Code","text":"<ul> <li>Trigger: <code>qr</code></li> <li>Description: Inserts a QR code image.</li> <li>How to Use:</li> <li>Type <code>[[qr]]</code> in the editor.</li> <li>A QR code will be generated and inserted at the cursor position.</li> </ul>"},{"location":"archive/cm.archive/manuals/Commands/#insert-admonition","title":"Insert Admonition","text":"<ul> <li>Trigger: <code>adm</code></li> <li>Description: Inserts an admonition block (e.g., note, warning).</li> <li>How to Use:</li> <li>Type <code>[[adm]]</code> in the editor.</li> <li>A prompt will appear asking for the type, title, and content of the admonition.</li> <li>Fill in the details and the admonition block will be inserted.</li> </ul>"},{"location":"archive/cm.archive/manuals/Commands/#insert-annotation","title":"Insert Annotation","text":"<ul> <li>Trigger: <code>ann</code></li> <li>Description: Inserts an annotation with Markdown support.</li> <li>How to Use:</li> <li>Type <code>[[ann]]</code> in the editor.</li> <li>A prompt will appear asking for the text to annotate and the annotation content.</li> <li>Fill in the details and the annotation will be inserted.</li> </ul>"},{"location":"archive/cm.archive/manuals/Commands/#insert-4-card-grid","title":"Insert 4-Card Grid","text":"<ul> <li>Trigger: <code>grid4</code></li> <li>Description: Inserts a grid with 4 cards.</li> <li>How to Use:</li> <li>Type <code>[[grid4]]</code> in the editor.</li> <li>A prompt will appear asking for the titles and contents of the four cards.</li> <li>Fill in the details and the grid will be inserted.</li> </ul>"},{"location":"archive/cm.archive/manuals/Commands/#insert-blog-front-matter","title":"Insert Blog Front Matter","text":"<ul> <li>Trigger: <code>blogfm</code></li> <li>Description: Inserts a basic blog front matter template.</li> <li>How to Use:</li> <li>Type <code>[[blogfm]]</code> in the editor.</li> <li>A prompt will appear asking for the author's name.</li> <li>Fill in the details and the front matter will be inserted.</li> </ul>"},{"location":"archive/cm.archive/manuals/Commands/#updating-commands","title":"Updating Commands","text":"<p>To update or add new commands, follow these steps:</p> <p>Open the 'commands.js' File: - Navigate to the commands.js file in your project.</p> <p>Add or Modify Commands:</p> <ul> <li>Each command is defined as an object within the <code>defaultCommands</code> array.</li> <li>To add a new command, create a new object with the following structure: <pre><code>{\n trigger: \"newTrigger\",\n name: \"New Command Name\",\n template: \"Template for the new command\",\n description: \"Description of the new command\",\n params: [\n { name: \"param1\", prompt: \"Prompt for parameter 1\" },\n { name: \"param2\", prompt: \"Prompt for parameter 2\" }\n ]\n}\n</code></pre></li> <li>Example: <pre><code>{\n trigger: \"example\",\n name: \"Insert Example\",\n template: \"Example content with $param1$ and $param2$\",\n description: \"Inserts example content\",\n params: [\n { name: \"param1\", prompt: \"Enter first parameter\" },\n { name: \"param2\", prompt: \"Enter second parameter\" }\n ]\n}\n</code></pre></li> </ul>"},{"location":"archive/cm.archive/manuals/Commands/#save-the-file","title":"Save the File:","text":"<p>Save the changes to the <code>commands.js</code> file.</p> <p>Reload the Editor:</p> <ul> <li>Reload the editor to apply the changes to the command functions.</li> <li>To reload, you need to down and rebuild the docker container labeled change-maker-v[insert version #]-frontend. </li> <li>This will apply the changes to the editor and make the new commands available for use.</li> </ul> <p>Rebuild Application: </p> <p>If reloading editor does not push updates, you can rebuild application using <code>./start.sh</code> in the root directory.</p> <p>Backup Your Data Before Rebuilding</p> <p>Do not forget to backup your data before rebuilding the application. Critical is that you backup your listmonk data and all your customizations in the Listmonk container. Specifically ensure that your subscribers are backed up before proceeding. </p> <p>Run commands in root folder: <pre><code>docker-compose down\n./start.sh\n</code></pre></p>"},{"location":"archive/cm.archive/manuals/Customize%20Your%20Landing%20Page/","title":"Customize Your Landing Page","text":""},{"location":"archive/cm.archive/manuals/Customize%20Your%20Landing%20Page/#basic-set-up","title":"Basic Set Up","text":"<p>To return to base configuration for landing page, navigate to your index.md file, and delete the properties at top of file: </p> <pre><code>// Delete this text from your index.md file\n---\ntitle: Welcome to Bnkops Change Maker V3\ntemplate: home.html\n---\n</code></pre> <p>This will allow you to write your home page in standard markdown. </p>"},{"location":"archive/cm.archive/manuals/Customize%20Your%20Landing%20Page/#custom-set-up","title":"Custom Set Up","text":"<p>Alternatively you can edit your home pages html directly in editor. To view your front/home page html, click on the table icon next to the gear icon. Edit content and click save to upload and update landing page. </p>"},{"location":"archive/cm.archive/manuals/Customize%20Your%20Landing%20Page/#but-bnkops-i-dont-read-or-write-html","title":"But bnkops I don't read or write html \ud83d\ude27","text":"<p>Don't panic! That is what this guide is for. Learn how to update your front page effortlessly.</p>"},{"location":"archive/cm.archive/manuals/Customize%20Your%20Landing%20Page/#prompting-for-updating","title":"Prompting for Updating","text":"<p>The code presented is standard html, which is easy to update by large language models (LLMs), often referred to as Ai. bnkops has written a manual for creating a local llm system that can do this work entirely for free. We also supply access to Daisy, our own local, ethical, and custom LLM upon request. You can use any LLM to write this page; including freely accessible systems like chatgpt, claude, llama, or even whatsapp chat. </p> <p>These same techniques can be used on the site settings (accessed through the cog icon). All documentation on site options is available here. </p> <p>When asking an LLM to help customize your landing page, follow these key principles:</p> <ol> <li> <p>Provide Context: Let the LLM know about the existing structure <pre><code>I'm using MkDocs Material theme with a custom landing page. \nThe template extends main.html and uses a dark theme. \nI am want to fully update my landing page.\n</code></pre></p> </li> <li> <p>Specify Requirements: Clearly state what elements you want <pre><code>I need:\n- A hero section with a gradient background\n- Feature cards with hover effects\n- Smooth scroll animations\n- Custom CSS styling that matches the dark theme\n</code></pre></p> </li> <li> <p>Reference Existing Code: If you're modifying an existing design <pre><code>I'm starting with the default home.html template. Here's the current code:\n[paste your current home.html content]\n</code></pre></p> </li> </ol>"},{"location":"archive/cm.archive/manuals/Customize%20Your%20Landing%20Page/#example-prompts","title":"Example Prompts","text":""},{"location":"archive/cm.archive/manuals/Customize%20Your%20Landing%20Page/#for-basic-modifications","title":"For Basic Modifications","text":"<pre><code>Please update my home.html template to add a new feature card section about [topic].\nKeep the existing dark theme (#1e2127) and yellow accents (#ffd700).\n</code></pre>"},{"location":"archive/cm.archive/manuals/Customize%20Your%20Landing%20Page/#for-animation-effects","title":"For Animation Effects","text":"<pre><code>Add smooth scroll animations to my home.html template. I want:\n- Elements to fade in as they scroll into view\n- Subtle hover effects on cards\n- No flashy or distracting animations\n- Animations should complement the dark theme\n</code></pre>"},{"location":"archive/cm.archive/manuals/Customize%20Your%20Landing%20Page/#for-complete-redesigns","title":"For Complete Redesigns","text":"<pre><code>Create a custom home.html template for MkDocs Material with:\n1. Dark theme matching [#1e2127](http://localhost:4000/tags/1e2127) background\n2. Yellow (#ffd700) accent colors\n3. [List your specific sections]\n4. [List your desired animations]\n\nKeep the template extending from main.html and ensure all styling is contained within the content block.\n</code></pre>"},{"location":"archive/cm.archive/manuals/Customize%20Your%20Landing%20Page/#important-reminders","title":"Important Reminders","text":"<ul> <li>Template Structure: Always remind the LLM to use <code>{% extends \"main.html\" %}</code> and proper block structure</li> <li>Color Scheme: Specify the exact colors (#1e2127 for background, [#ffd700] for accents)</li> <li>Compatibility: Ask for self-contained CSS and JavaScript (no external dependencies)</li> <li>Accessibility: Request that animations respect user preferences (<code>prefers-reduced-motion</code>)</li> </ul>"},{"location":"archive/cm.archive/manuals/Customize%20Your%20Landing%20Page/#example-complete-prompt","title":"Example Complete Prompt","text":"<p>Here's a full example of a well-structured prompt:</p> <pre><code>Please help me update my MkDocs Material landing page. I need:\n\n1. Template Structure:\n- Extend from main.html\n- Keep all CSS in a style block\n- Keep JavaScript in a script block\n\n2. Design Requirements:\n- Dark theme (#1e2127 background)\n- Yellow accents (#ffd700)\n- Responsive layout\n- Smooth animations on scroll\n\n3. Specific Sections:\n- Hero section with gradient\n- Feature cards with hover effects\n- Documentation section\n- Getting started guide\n\n4. Animations:\n- Fade-in on scroll\n- Subtle hover effects\n- No aggressive animations\n\nPlease provide the complete home.html template with all necessary CSS and JavaScript included.\n</code></pre>"},{"location":"archive/cm.archive/manuals/Customize%20Your%20Landing%20Page/#testing-the-results","title":"Testing the Results","text":"<p>After receiving the HTML:</p> <ol> <li>Save it to <code>docs/overrides/home.html</code>. You can do this directly in editor and click the save button to upload. You may receive a error reading; remember to reload page after saving. Error messages often will automatically resolve after a few minutes and reoload.</li> <li>Check the template extends properly</li> <li>Verify all styles are contained within the template</li> <li>Test responsiveness at different screen sizes</li> <li>Ensure animations work smoothly</li> </ol>"},{"location":"archive/cm.archive/manuals/Customize%20Your%20Landing%20Page/#iterative-improvements","title":"Iterative Improvements","text":"<p>If you need adjustments:</p> <ol> <li>Specify exactly what needs changing</li> <li>Provide the current code</li> <li>Describe the desired outcome</li> <li>Ask for specific sections to be updated</li> </ol> <p>Remember: LLMs can be creative with designs while maintaining your core requirements. Be specific about what must be preserved (like color schemes and structure) but allow flexibility for creative elements.</p>"},{"location":"archive/cm.archive/manuals/Examples/","title":"Example Political Apps","text":"<p>In addition to Change Maker, bnkops has already completed development on plugins for newsletters, email targeting, and micro sites. These technologies are also highly customizable, free to deploy, and actively maintained by bnkops. </p> <p>bnkops will bake these plugins directly into the installation process for Change Maker (V4 here we come). For now, manuals for installation, hosting, and deployment can be found at repo.bnkops.com. </p>"},{"location":"archive/cm.archive/manuals/Examples/#email-button","title":"Email Button","text":"<p>Insert a counter button to email local council members in Edmonton. Example: </p> Email Your Councillor 0 emails sent \u00d7 Select Your City Councillor <p>See Code Snippets For More</p>"},{"location":"archive/cm.archive/manuals/Examples/#embed-any-iframe","title":"Embed Any iframe","text":"<p>Any iframe embedding will work and render on site allowing for adding audio/visuals from thousands of different sources. For example: </p> \ud83c\udfbc \ud83c\udfb5 \ud83c\udfb5 The revolution will be sung before it is written \u2728"},{"location":"archive/cm.archive/manuals/Examples/#newsletter","title":"Newsletter","text":"<p>bnkops uses listmonk for its newsletter management. An example deployment: </p> \ud83d\udceb Subscribe for Updates Email Address Name (Optional) Periodic Updates (~1 Weekly) Subscribe"},{"location":"archive/cm.archive/manuals/Examples/#simple-target","title":"Simple Target","text":"<p>Simple Target is a bnkops app that facilitates a email campaign pointed at a inbox. These can be embedded with ease. </p>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/","title":"Get Online","text":"<p>Update</p> <p>Change Maker V3 online access requires customized deployment package. Change Maker V4 will include a automated process for getting online. If wanting to deploy asap email admin@thebunkerops.ca for partnership opportunities or follow manual.</p> <p>This guide will help you get your site online quickly and easily. By following these steps, you can have your site up and running in no time. We are recommending the service that we use to get online, which is Cloudflare. There are dozens of ways to host your site and application online. This guide will walk you through the process of setting up Cloudflare Tunnel to get your site online. </p> <p>Cloudflare</p>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#alternatives-to-cloudflare-tunnels","title":"Alternatives to Cloudflare Tunnels","text":"<p>If Cloudflare Tunnels don't meet your needs, here are some other options to consider:</p> <p>NGINX Reverse Proxy</p> <ul> <li>Use NGINX to route traffic to your local server.</li> <li>Provides load balancing, SSL termination, and caching.</li> </ul> <p>Apache Reverse Proxy</p> <ul> <li>Similar to NGINX, but uses Apache HTTP Server.</li> <li>Offers extensive configuration options and modules.</li> </ul> <p>Localtunnel</p> <ul> <li>Quickly expose your local server to the internet.</li> <li>Easy to set up with minimal configuration.</li> </ul> <p>Ngrok</p> <ul> <li>Provides secure introspectable tunnels to localhost.</li> <li>Offers additional features like custom subdomains and webhooks.</li> </ul> <p>Serveo</p> <ul> <li>Another tool to expose local servers to the internet.</li> <li>No installation required, works over SSH.</li> </ul> <p>Each of these alternatives has its own set of features and benefits, so you can choose the one that best fits your requirements.</p>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#what-is-cloudflare","title":"What is Cloudflare?","text":"<p>Cloudflared Docmentation</p> <p>Cloudflare is a service that provides a range of features to improve the security, performance, and reliability of your website. It acts as a reverse proxy between your website visitors and your web hosting provider. Why we use Cloudlfare:</p> <ul> <li>Security: Protects your site from malicious attacks, including DDoS attacks, by filtering traffic before it reaches your server.</li> <li>Performance: Speeds up your website by caching content and serving it from data centers around the world.</li> <li>Reliability: Ensures your site remains available even if your server goes down by using its global network to keep your site online.</li> </ul> <p>The Cloudflare backend and admin tools are also quite powerfull; allowing you to manage your site, monitor traffic, and configure security settings all in one spot. We quite enjoy the free analytics that are not pervasive trackers; just simple info about where people are visiting your site from. </p>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#before-you-start","title":"Before You Start","text":"<ul> <li>You need a domain name (like yoursite.com)</li> <li>Your domain should be using Cloudflare (they have a free plan)</li> <li>Make sure Change Maker is working on your computer first</li> </ul>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#installing-cloudflare-tunnel","title":"Installing Cloudflare Tunnel","text":"<ol> <li>Download Cloudflared</li> <li>Windows: Download the latest release from https://github.com/cloudflare/cloudflared/releases</li> <li>Mac: <code>brew install cloudflare/cloudflare/cloudflared</code></li> <li> <p>Linux: <pre><code>curl -L --output cloudflared.deb https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb\nsudo dpkg -i cloudflared.deb\n</code></pre></p> </li> <li> <p>Login to Cloudflare <pre><code>cloudflared tunnel login\n</code></pre> Follow the browser prompts to authenticate.</p> </li> </ol>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#setting-up-your-tunnel","title":"Setting Up Your Tunnel","text":"<p>Create the Tunnel</p> <ul> <li>Open Terminal (Command Prompt on Windows)</li> <li>Type: <code>cloudflared tunnel create change-maker-site</code></li> <li>Copy the Tunnel ID it gives you (you'll need this)</li> </ul> <p>Create the Settings File</p> <ul> <li>On Windows, create this folder: <code>C:\\Users\\YOUR-USERNAME\\.cloudflared</code></li> <li>On Mac/Linux, it's in: <code>~/.cloudflared</code></li> <li>Create a file called <code>config-site.yml</code> in that folder</li> <li>Open it with Notepad (Windows) or any text editor</li> </ul> <p>Add These Settings <pre><code>tunnel: YOUR-TUNNEL-ID\ncredentials-file: ~/.cloudflared/YOUR-TUNNEL-ID.json\ningress:\n - hostname: yoursite.com\n service: http://localhost:4000\n - hostname: button.yoursite.com\n service: http://localhost:5001\n - hostname: cmeditor.yoursite.com\n service: http://localhost:3000\n - hostname: listmonk.yoursite.com\n service: http://localhost:9000\n - service: http_status:404\n</code></pre> Replace: - <code>YOUR-TUNNEL-ID</code> with the ID from step 1 - <code>yoursite.com</code> with your actual website address</p> <p>Connect to Cloudflare</p> <ul> <li>Go to cloudflare.com and log in</li> <li>Click on your domain</li> <li>Click \"DNS\"</li> <li>Add a new record:<ul> <li>Type: CNAME</li> <li>Name: @ (or leave blank)</li> <li>Target: YOUR-TUNNEL-ID.cfargotunnel.com</li> <li>Proxy status: Proxied (orange cloud)</li> </ul> </li> </ul>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#secure-site","title":"Secure Site","text":"<p>If you are publically serving your site, it is recommended to secure your cmeditor and listmonk sites. This can be done by setting up Cloudflare Access.</p> <p>Cloudlfare Access</p>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#starting-your-tunnel","title":"Starting Your Tunnel","text":"<p>Secure Your CMeditor</p> <p>Make sure your CMEditor is secure and only accessible by you. Access to the system backend can be a security risk.</p>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#method-1-running-manually-easiest-to-start-with","title":"Method 1: Running Manually (Easiest to Start With)","text":"<ol> <li>Start the Tunnel</li> <li>Open Terminal/Command Prompt</li> <li>Type: <code>cloudflared tunnel --config ~/.cloudflared/config-site.yml run</code></li> <li>Leave this window open</li> </ol>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#method-2-running-as-background-services-more-advanced","title":"Method 2: Running as Background Services (More Advanced)","text":"<p>On Windows: <pre><code>cloudflared service install --config C:\\Users\\YOUR-USERNAME\\.cloudflared\\config-site.yml\n</code></pre></p> <p>On Mac/Linux: <pre><code>sudo cloudflared service install --config ~/.cloudflared/config-site.yml\n</code></pre></p>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#checking-if-everything-works","title":"Checking If Everything Works","text":"<ol> <li> <p>Start Change Maker: <pre><code>docker compose down\ndocker system prune -f\ndocker compose up --build\n</code></pre></p> </li> <li> <p>Make sure your tunnels are running (you should see messages in those windows)</p> </li> <li> <p>Try visiting your sites:</p> </li> <li> <p>Main website: <code>https://yoursite.com</code></p> </li> <li>Editor: <code>https://cmeditor.yoursite.com</code></li> <li>Listmonk: <code>https://listmonk.yoursite.com</code></li> </ol>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#making-changes-manually-if-needed","title":"Making Changes Manually (if needed)","text":"<p>If you need to change things by hand, here's what to do:</p>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#1-change-your-website-address","title":"1. Change Your Website Address","text":"<p>Open these files and update the website address:</p> <p>In <code>mkdocs.yml</code>: <pre><code>site_name: Your Site Name\nsite_url: https://yoursite.com/\n</code></pre></p> <p>In <code>docker-compose.yml</code>: <pre><code># Look for lines with:\nSITE_URL=https://yoursite.com\n</code></pre></p> <p>In <code>constants.js</code>: <pre><code>export const MKDOCS_URL = 'https://yoursite.com';\n</code></pre></p>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#2-change-editor-address","title":"2. Change Editor Address","text":"<p>Look for <code>cmeditor.yoursite.com</code> in these files: - <code>docker-compose.yml</code> - <code>constants.js</code> - <code>server.js</code></p>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#troubleshooting","title":"Troubleshooting","text":""},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#common-problems-and-solutions","title":"Common Problems and Solutions","text":"<p>\"Something's already using that port\"</p> <ul> <li>Change the port numbers in the setup</li> <li>Or close other programs that might be using those ports</li> </ul> <p>\"Can't connect to the website\"</p> <ul> <li>Make sure Change Maker is running</li> <li>Check that your Cloudflare tunnels are running</li> <li>Try opening the site on your computer first (localhost)</li> </ul> <p>\"Editor won't save changes\"</p> <ul> <li>Check that all addresses match in your setup</li> <li>Make sure you're using https:// for web addresses</li> <li>Restart Change Maker if needed</li> </ul>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#common-tunnel-problems","title":"Common Tunnel Problems","text":"<p>\"Tunnel Not Connected\"</p> <ul> <li>Check that both tunnel windows are still open</li> <li>Make sure you see \"connected\" messages</li> <li>Try running the tunnel command again</li> </ul> <p>\"Can't Find Certificate\"</p> <ul> <li>Your settings files might be in the wrong place</li> <li>Double-check the folder names and locations</li> <li>Run <code>cloudflared tunnel login</code> and try again</li> </ul> <p>\"Wrong Address\"</p> <ul> <li>Make sure all your domain names match exactly</li> <li>Check Cloudflare DNS settings</li> <li>Look for typos in config files</li> </ul> <p>\"Editor Not Working\"</p> <ul> <li>Make sure both tunnels are running</li> <li>Check that Change Maker is running</li> <li>Verify all your addresses match in the files we changed earlier</li> </ul>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#keeping-your-editor-private-recommended","title":"Keeping Your Editor Private (Recommended)","text":"<ol> <li>Go to Cloudflare Zero Trust</li> <li>Create an Access Policy:</li> <li>Click \"Applications\"</li> <li>Add new application</li> <li>Choose \"Self-hosted\"</li> <li>Enter <code>https://cmeditor.yoursite.com</code></li> <li>Add your email under \"Allowed Users\"</li> <li>Now only you can access the editor</li> </ol>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#need-help","title":"Need Help?","text":"<p>If things aren't working: 1. Check that Change Maker is running 2. Make sure your tunnels are running 3. Look for error messages in the terminal windows 4. Try restarting everything</p>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#safety-tips","title":"Safety Tips","text":"<ol> <li>Keep your editor address private</li> <li>Use strong passwords</li> <li>Regular backups are a good idea</li> <li>Keep your computer's security up to date</li> </ol>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#backup-your-work","title":"Backup Your Work","text":""},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#quick-backup","title":"Quick Backup","text":"<ul> <li>Find your Change Maker folder</li> <li>Copy the whole <code>docs</code> folder somewhere safe</li> <li>That's your content backed up!</li> </ul>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#restore-from-backup","title":"Restore from Backup","text":"<ul> <li>Just copy your backed-up <code>docs</code> folder back</li> <li>Restart Change Maker</li> <li>Your content should be back</li> </ul>"},{"location":"archive/cm.archive/manuals/Get%20Site%20Online/#after-setup","title":"After Setup","text":"<p>Remember to:</p> <ol> <li>Keep the program running when you want your site available</li> <li>Make regular backups of your content</li> <li>Keep your domain and Cloudflare account active</li> <li>Update your software regularly</li> </ol> <p>Need more help? Check the technical manual for detailed instructions or ask in the community forums.</p>"},{"location":"archive/cm.archive/manuals/Installation/","title":"Installation Guide","text":"<p>This guide will walk you through installing and configuring Change Maker.</p> <p>Simple Button - Seperate Installation Instructions</p> <p>If you are looking for instructions on installing Change Maker Simple Button, please refer to the Simple Button Installation Guide.</p>"},{"location":"archive/cm.archive/manuals/Installation/#prerequisites","title":"Prerequisites","text":"<ul> <li>Docker and Docker Compose V2</li> <li>Internet connection for initial setup</li> <li>4GB RAM minimum</li> <li>10GB free disk space</li> </ul>"},{"location":"archive/cm.archive/manuals/Installation/#installation-steps","title":"Installation Steps","text":""},{"location":"archive/cm.archive/manuals/Installation/#1-initial-configuration","title":"1. Initial Configuration","text":""},{"location":"archive/cm.archive/manuals/Installation/#windows-users","title":"Windows Users","text":"<ol> <li>Open PowerShell as Administrator</li> <li>Navigate to the extracted Change Maker folder</li> <li>Run: <code>.\\update-config.ps1</code></li> </ol>"},{"location":"archive/cm.archive/manuals/Installation/#linuxmac-users","title":"Linux/Mac Users","text":"<ol> <li>Open Terminal</li> <li>Navigate to the extracted Change Maker folder</li> <li>Run: <code>chmod +x update-config.sh</code></li> <li>Run: <code>./update-config.sh</code></li> </ol> <p>Configuration Script</p> <p>All of this information should be kept secure. In instances where credentials or passwords are required, ensure that you are in a secure environment. Use strong passwords, such as generated by a password manager or similar tool.</p> <p>The configuration script will prompt you for:</p> <ul> <li>Site URL (e.g., https://changemaker.example.com)</li> <li>Site name (optional)</li> <li>Port numbers for each service:</li> <li>Frontend (default: 3000)</li> <li>Backend API (default: 3001)</li> <li>MkDocs Preview (default: 4000)</li> <li>Listmonk Newsletter (default: 9000)</li> <li>Database credentials</li> <li>Admin user credentials</li> </ul>"},{"location":"archive/cm.archive/manuals/Installation/#2-starting-the-system","title":"2. Starting the System","text":"<p>Docker Prune</p> <p>Using this command will remove all stopped containers, dangling images, and unused networks. This is useful for freeing up disk space and helps to avoid conflicts. Make sure you have no important data in stopped containers before running this command.</p> <p>Alternatively, you can run <code>docker-compose up -d</code> to start the services without pruning.</p>"},{"location":"archive/cm.archive/manuals/Installation/#windows-users_1","title":"Windows Users","text":"<ol> <li>Run: <code>.\\windows-start.ps1</code></li> </ol>"},{"location":"archive/cm.archive/manuals/Installation/#linuxmac-users_1","title":"Linux/Mac Users","text":"<ol> <li>Run: <code>chmod +x start.sh</code></li> <li>Run: <code>./start.sh</code></li> </ol>"},{"location":"archive/cm.archive/manuals/Installation/#3-accessing-the-services","title":"3. Accessing the Services","text":"<p>Once running, you can access the following services:</p> <ul> <li>Main Editor: http://localhost:3000</li> <li>API Backend: http://localhost:3001</li> <li>Documentation Preview: http://localhost:4000</li> <li>Newsletter Dashboard: http://localhost:9000</li> </ul> <p>Some browsers may block your first attempt to access these ports. Often you need to click through a challenge page to proceed. </p>"},{"location":"archive/cm.archive/manuals/Installation/#4-stopping-the-system","title":"4. Stopping the System","text":"<p>In the terminal where you started the system, press <code>Ctrl+C</code> to stop the services. Run <code>docker-compose down</code> to stop all services.</p>"},{"location":"archive/cm.archive/manuals/Installation/#troubleshooting","title":"Troubleshooting","text":""},{"location":"archive/cm.archive/manuals/Installation/#port-conflicts","title":"Port Conflicts","text":"<p>If you see port conflict warnings:</p> <ol> <li>Stop any services using those ports</li> <li>OR run the configuration script again to choose different ports</li> </ol>"},{"location":"archive/cm.archive/manuals/Installation/#docker-issues","title":"Docker Issues","text":"<ul> <li>Ensure Docker Desktop is running (Windows/Mac)</li> <li>Check Docker service status: <code>systemctl status docker</code> (Linux)</li> <li>Verify user permissions: <code>groups</code> should include 'docker' (Linux)</li> </ul>"},{"location":"archive/cm.archive/manuals/Installation/#file-permission-issues","title":"File Permission Issues","text":"<ul> <li>Windows: Run PowerShell as Administrator</li> <li>Linux/Mac: Check folder ownership with <code>ls -la</code></li> </ul>"},{"location":"archive/cm.archive/manuals/Installation/#next-steps","title":"Next Steps","text":"<p>After installation:</p> <ol> <li>Log into the editor using your admin credentials</li> <li>Create your first page</li> <li>Preview your site using the MkDocs preview URL</li> </ol> <p>For detailed usage instructions, refer to the user manual.</p>"},{"location":"archive/cm.archive/manuals/NocoDB/","title":"NocoDB","text":"<p>NocoDB is an open-source platform that transforms your relational databases into a smart spreadsheet interface. It allows you to manage, collaborate, and automate workflows with ease, providing a no-code experience for database management.</p> <p>NocoDB supports various databases such as MySQL, PostgreSQL, SQL Server, and more. It offers features like grid view, kanban view, gallery view, and calendar view to visualize your data in different ways.</p> <p><code>./start.sh</code> now includes the option to install NocoDB. You can choose to install NocoDB along with the other services provided by the script.</p> <p>For more detailed information and documentation, please visit the the documentation: </p> <p>NocoDB Documentation</p>"},{"location":"archive/cm.archive/manuals/NocoDB/#configure-listmonk-data","title":"Configure Listmonk Data","text":"<p>NocoDB installs with a default database configuration. To configure NocoDB to use the Listmonk database, follow these steps:</p>"},{"location":"archive/cm.archive/manuals/NocoDB/#create-a-new-base","title":"Create a New Base","text":"<p>Create a new base in NocoDB by clicking on the <code>+ Create Base</code> icon in the sidebar. Name your new base <code>Listmonk</code>.</p>"},{"location":"archive/cm.archive/manuals/NocoDB/#connect-to-the-listmonk-database","title":"Connect to the Listmonk Database","text":"<p>In your new base, click <code>Connect External Database</code>. </p> <ul> <li>Data Source Name: <code>Listmonk</code></li> <li>Select Connection - <code>New Connection</code></li> <li>Connection Type: <code>PostgreSQL</code></li> <li>Host: <code>listmonk-db</code></li> <li>Port: <code>5432</code></li> <li>Database: <code>listmonk_db</code></li> <li>User: <code>{your listmonk database user}</code> - this is the user you created when setting up Listmonk. Default is <code>listmonk_user</code>. </li> <li>Password: <code>{your listmonk database password}</code> - this is the password you created when setting up Listmonk. Default is <code>changeme</code>.</li> </ul>"},{"location":"archive/cm.archive/manuals/Simple%20Markdown%20Guide/","title":"Simple Markdown Guide","text":"<p>Markdown is an easy-to-use formatting language for creating structured documents. It is also a platform agnostic language; any documents you write in markdown are compatible with nearly any text editor. Here's how to use some common elements:</p>"},{"location":"archive/cm.archive/manuals/Simple%20Markdown%20Guide/#headings","title":"Headings","text":"<p>Create headings by using hashtags (#) at the start of a line:</p>"},{"location":"archive/cm.archive/manuals/Simple%20Markdown%20Guide/#heading-1-heading-1","title":"Heading 1- <code># Heading 1</code>","text":""},{"location":"archive/cm.archive/manuals/Simple%20Markdown%20Guide/#heading-2-heading-2","title":"Heading 2 - <code>## Heading 2</code>","text":""},{"location":"archive/cm.archive/manuals/Simple%20Markdown%20Guide/#heading-3-heading-3","title":"Heading 3 <code>### Heading 3</code>","text":"<p>The more hashtags, the smaller the heading.</p>"},{"location":"archive/cm.archive/manuals/Simple%20Markdown%20Guide/#text-formatting","title":"Text Formatting","text":"<ul> <li>Make text italic by surrounding it with single asterisks: <code>*italic*</code></li> <li>Make text bold by surrounding it with double asterisks: <code>**bold**</code></li> <li>Create ~~strikethrough~~ text with double tildes: <code>~~strikethrough~~</code></li> </ul>"},{"location":"archive/cm.archive/manuals/Simple%20Markdown%20Guide/#lists","title":"Lists","text":""},{"location":"archive/cm.archive/manuals/Simple%20Markdown%20Guide/#unordered-lists","title":"Unordered Lists","text":"<p>Use a dash (-), asterisk (*), or plus (+) for bullet points:</p> <ul> <li>Item 1</li> <li>Item 2</li> <li>Subitem 2.1</li> <li>Subitem 2.2</li> </ul>"},{"location":"archive/cm.archive/manuals/Simple%20Markdown%20Guide/#ordered-lists","title":"Ordered Lists","text":"<p>Use numbers followed by periods for ordered lists:</p> <ol> <li>First item</li> <li>Second item</li> <li>Third item</li> </ol>"},{"location":"archive/cm.archive/manuals/Simple%20Markdown%20Guide/#links","title":"Links","text":"<p>Create a link by putting the link text in square brackets followed by the URL in parentheses:</p> <p><code>[name of file](http://localhost:4000/link to file)</code></p> <p>Visit Wikipedia or is it?</p>"},{"location":"archive/cm.archive/manuals/Simple%20Markdown%20Guide/#images-gifs","title":"Images & Gifs","text":"<p>Add images similarly to links, but with an exclamation mark at the start. Use url to any image on internet or load images locally. Images loaded locally must saved within the ~/Website Maker V3/docs folder:</p> <p><code></code></p> <p></p>"},{"location":"archive/cm.archive/manuals/Simple%20Markdown%20Guide/#quotes","title":"Quotes","text":"<p>Use a greater-than sign (>) to create block quotes:</p> <p>This is a block quote. It can span multiple lines.</p>"},{"location":"archive/cm.archive/manuals/Simple%20Markdown%20Guide/#code","title":"Code","text":"<p>For inline code, use single back-ticks: <code>code here</code>. Useful for highlighting text or making a point.</p> <p>For code blocks, use triple back-ticks. Great for giving people text to copy.:</p> <pre><code>function example() {\n console.log(\"Hello, world!\");\n}\n</code></pre>"},{"location":"archive/cm.archive/manuals/Simple%20Markdown%20Guide/#horizontal-lines","title":"Horizontal Lines","text":"<p>Create a horizontal line with three or more hyphens, asterisks, or underscores:</p>"},{"location":"archive/cm.archive/manuals/Simple%20Markdown%20Guide/#mkdocs-material-syntax","title":"MkDocs Material Syntax","text":"<p>Visit MkDocs Material</p> <p>Material for MkDocs offers a comprehensive suite of features to enhance technical documentation. Below is a summary of key functionalities:</p> <ul> <li> <p>Admonitions: Insert call-out blocks for notes, warnings, and tips. </p> </li> <li> <p>Annotations: Add interactive markers with expandable tooltips for additional context. </p> </li> <li> <p>Buttons: Create styled buttons for links and actions.</p> </li> <li> <p>Code Blocks: Display syntax-highlighted code snippets with optional copy buttons. </p> </li> <li> <p>Content Tabs: Organize content into tabbed sections for better readability.</p> </li> <li> <p>Data Tables: Present tabular data with enhanced styling and functionality.</p> </li> <li> <p>Diagrams: Integrate Mermaid.js for rendering various diagrams like flowcharts and sequence diagrams. </p> </li> <li> <p>Footnotes: Include footnotes for supplementary information without disrupting the main text. </p> </li> <li> <p>Formatting: Apply advanced text formatting options beyond standard Markdown.</p> </li> <li> <p>Grids: Utilize grid layouts to structure content effectively.</p> </li> <li> <p>Icons and Emojis: Incorporate a wide range of icons and emojis to enrich content.</p> </li> <li> <p>Images: Manage image alignment, captions, and lightbox features. </p> </li> <li> <p>Lists: Create various list types, including unordered, ordered, definition, and task lists. </p> </li> <li> <p>Math: Render mathematical expressions using LaTeX syntax.</p> </li> <li> <p>Tooltips: Add hoverable tooltips for terms and abbreviations. </p> </li> </ul> <p>For detailed information on each feature, refer to the Material for MkDocs Reference. </p> <p>Visit MkDocs Material</p> <p>Automatic Link Updating Working</p> <p>The following syntax guide is borrowed from a previous build. Automatic link updating using standard double [ is working.</p>"},{"location":"archive/cm.archive/manuals/Simple%20Markdown%20Guide/#more-instructions-for-embedding-syntax-and-code-injection","title":"More instructions for embedding, syntax, and code injection.","text":"<p>These have been tested on different environment. Can't guarantee success yet. </p> <p>That's it! You now know the basics of Markdown formatting.</p>"},{"location":"archive/cm.archive/manuals/button/","title":"Change Maker Simple ButtonSimple Button","text":"<p> Transform any website into a powerful catalyst for change with our seamless, one-click solution. </p> <p> Free. Open. Built by activists, for activists. </p> <p>Empower your community with zero technical hassle.</p> \ud83d\udce7 Direct Impact <p>Real emails that work</p> \u26a1 Instant Setup <p>From idea to action in minutes</p> \ud83d\udd12 Privacy First <p>Your data stays yours</p> \ud83d\udc9d Always Free <p>No hidden costs</p> \ud83e\udd1d Community Built <p>By organizers, for organizers</p> \ud83c\udf10 Instant Pages <p>Built-in landing pages</p> \ud83d\udd0c Embed Anywhere <p>Works on any website</p> \ud83d\udedf Ongoing Support <p>Community backed help</p> \ud83d\udc69\u200d\ud83d\udcbb Open Code <p>Transparent & secure</p> Live Demo"},{"location":"archive/cm.archive/manuals/button/#why-use-simple-change-button","title":"Why Use Simple Change Button?","text":"<ul> <li>\u2728 Free Forever - No hidden costs, no premium features</li> <li>\ud83d\ude80 5-Minute Setup - From zero to action in minutes</li> <li>\ud83d\udce7 Real Impact - Emails come from real people's accounts</li> <li>\ud83d\udd12 Privacy First - No invasive tracking of users</li> <li>\ud83d\udcaa Community Owned - Built by organizers, for organizers</li> </ul> <p>Install Simple Change Button on your website and start making a difference today!</p>"},{"location":"archive/cm.archive/manuals/button/#installation-guide","title":"Installation Guide","text":"<p>Simple Change Button is a self-hosted tool that requires Docker & Docker Compose to run. Follow these steps to get started:</p> <p>Install Docker & Docker Composer</p> <p>Docker Installation Instructions</p> <p>Releases of the latest version of Simple Change Button are released with the newsletter. To get the latest version, subscribe to the newsletter below:</p> Subscribe <p> </p> <p> </p> <p> Weekly(ish) Update </p> <p> </p> <p>Or you can email the admin directly and request access: </p>"},{"location":"archive/cm.archive/manuals/button/#install","title":"Install","text":""},{"location":"archive/cm.archive/manuals/button/#independent-installation","title":"Independent Installation","text":""},{"location":"archive/cm.archive/manuals/button/#download-and-unzip-the-latest-release","title":"Download and Unzip the Latest Release","text":""},{"location":"archive/cm.archive/manuals/button/#update-env-files","title":"Update .env Files","text":"<p>In the Simple Change Button directory, update the <code>.env</code> files with your desired settings. Theese two files can be found in the <code>backend</code> and <code>frontend</code> directories. </p> <p>.frontend/.env</p> <pre><code>REACT_APP_API_URL=http://localhost:5000\nREACT_APP_PRODUCTION_URL=https://button.bnkops.com // Change this to your domain\nNODE_ENV=development // change to production for production\nPORT=5001\n</code></pre> <p>.backend/.env</p> <pre><code>JWT_SECRET=your-very-secure-and-very-long-secret-key-here // Change this to a secure key\nMONGODB_URI=mongodb://127.0.0.1:27017/emailcounter\nPORT=5000\nNODE_ENV=development // change to production for production\nCORS_ORIGIN=http://localhost:5001\n</code></pre> <p>Run <code>docker-compose up</code> in the Simple Change Button directory. </p> <p>Your Simple Change Button instance will be available at <code>http://localhost:5001</code> in your browser.</p>"},{"location":"archive/cm.archive/manuals/button/#install-with-changemaker","title":"Install With Changemaker","text":"<p>If you are using Changemaker, you can install Simple Change Button during installation. </p> <p>Run <code>./start.sh</code> in the root directory and select Simple Change Button from the list of available tools.</p>"},{"location":"archive/cm.archive/manuals/button/#first-open","title":"First Open","text":"<p>On first open, you will be prompted to create an admin account. Fill in the details and click \"Create Account\". You will then be redirected to the dashboard.</p>"},{"location":"archive/cm.archive/manuals/button/#quick-start","title":"Quick Start","text":"<ol> <li>Create a button in the dashboard</li> <li>Copy the embed code</li> <li>Paste it anywhere on your site</li> <li>Track real engagement</li> </ol>"},{"location":"archive/cm.archive/manuals/button/#dashboard","title":"Dashboard","text":"<p>The dashboard is where you can create, manage, and track your buttons. You can also manage users and view statistics.</p>"},{"location":"archive/cm.archive/manuals/button/#dashboard-features","title":"Dashboard Features","text":"<ul> <li>Total emails sent</li> <li>Per-button metrics</li> <li>Usage trends</li> <li>Real-time statistics</li> <li>Export capabilities</li> <li>User Management</li> </ul>"},{"location":"archive/cm.archive/manuals/button/#analytics","title":"Analytics","text":"<p>Analytics are available in real-time and provide insights into button performance. You can also export data for further analysis.</p>"},{"location":"archive/cm.archive/manuals/button/#user-management","title":"User Management","text":"<p>User management allows you to add, remove, and edit user accounts. Future updates will include assign roles and permissions to users.</p>"},{"location":"archive/cm.archive/manuals/button/#creating-a-button","title":"Creating a Button","text":"<ol> <li>Log into admin dashboard</li> <li>Click \"Create New Button\"</li> <li>Fill in button details</li> <li>Optional: Add CC/BCC</li> <li>Save and get embed code</li> </ol>"},{"location":"archive/cm.archive/manuals/button/#editing-a-button","title":"Editing a Button","text":"<p>Buttons are listed according to time of creation and can be edited at any time. You can change the button text, email body, and other settings.</p>"},{"location":"archive/cm.archive/manuals/button/#standalone-button-page","title":"Standalone Button Page","text":"<p>All buttons also generate a standalone page that can be shared directly. This page includes the button, email body, and other details. Useful for sharing on social media or in emails.</p>"},{"location":"archive/cm.archive/manuals/button/#privacy-security","title":"Privacy & Security","text":"<ul> <li>No personal data collection</li> <li>GDPR-compliant design</li> <li>Encrypted connections</li> <li>Local data storage only</li> </ul>"},{"location":"archive/cm.archive/manuals/button/#deployment","title":"Deployment","text":"<p>Bnkops uses Cloudflare for secure, fast, and reliable hosting. You can also deploy Simple Change Button on your own server.</p> <p>We have instructions for deployment through Cloudflare for the whole Changemaker suite. </p> <p>Cloudflare Deployment</p> <p>However, you can also deploy Simple Change Button independently. Here is a sample configuration file for Cloudflare Tunnel:</p> <p>Cloudflare Tunnel Configuration</p> <pre><code>tunnel: [YOUR-TUNNEL-ID]\ncredentials-file: [path-to-credentials-file]\ningress:\n - hostname: [button.your-domain.com]\n service: http://localhost:5001\n - service: http_status:404\n</code></pre>"},{"location":"archive/cm.archive/manuals/button/#best-practices","title":"Best Practices","text":"<p>Design Recommendations</p> <ul> <li>Keep email body concise</li> <li>Use clear call-to-action text</li> <li>Test buttons before deployment</li> <li>Monitor performance regularly</li> </ul>"},{"location":"archive/cm.archive/manuals/button/#troubleshooting","title":"Troubleshooting","text":"<p>Common Issues</p> <p>Button not tracking:</p> <ul> <li>Check internet connection</li> <li>Verify proper embedding</li> <li>Clear browser cache</li> </ul> <p>Stats not updating:</p> <ul> <li>Refresh dashboard</li> <li>Check server connection</li> <li>Verify permissions</li> </ul>"},{"location":"archive/cm.archive/manuals/button/#support","title":"Support","text":"<p>Contact system administrator for:</p> <ul> <li>Technical issues</li> <li>Feature requests</li> <li>Account problems</li> <li>General assistance</li> </ul> <p>Built with \u2665\ufe0f by communities, for communities</p>"},{"location":"archive/cm.archive/manuals/listmonk/","title":"Listmonk","text":"<p>Listmonk is a self-hosted newsletter and mailing list manager. It is designed to handle high-performance bulk email sending with a focus on speed and efficiency. Listmonk supports both transactional and marketing emails, providing a robust platform for managing email campaigns, subscriber lists, and analytics.</p> <p>Key features of Listmonk include:</p> <ul> <li>High-performance bulk email sending</li> <li>Support for both transactional and marketing emails</li> <li>Subscriber management with segmentation</li> <li>Detailed analytics and reporting</li> <li>Self-hosted and open-source</li> </ul> <p>Listmonk is ideal for organizations looking to maintain control over their email infrastructure while benefiting from powerful email campaign management tools.</p> <p>Listmonk is part of the ChangeMaker project, a suite of open-source tools for content creation, collaboration, and communication.</p> <p>You can find more on Listmonk here: </p> <p>Listmonk</p>"},{"location":"archive/cm.archive/manuals/listmonk/#confguration","title":"Confguration","text":"<p>To configure Listmonk, follow these steps:</p>"},{"location":"archive/cm.archive/manuals/listmonk/#set-up-email-configuration-smtp-settings","title":"Set up Email Configuration SMTP settings.","text":"<p>Almost all email providers require SMTP settings to send emails. You can use your own SMTP server or a third-party service like SendGrid, Mailgun, or Amazon SES. Gmail and Outlook also provide free SMTP services. </p> <p>Bnkops uses Proton Mail for sending emails. We highly recommend their services for secure and reliable email delivery. We also recommend using them as you can use your custom domain for sending emails and they provide a other useful features, such as a vpn service and password manager. </p> <p>Proton Mail</p> <p>To input your SMTP settings, navigate to the Listmonk dashboard and click on the <code>Settings</code> tab.</p> <p></p> <p>If you require assistance with your settings, feel free to reach out to us at admin@bnkops.com.</p>"},{"location":"archive/cm.archive/manuals/listmonk/#configure-appearance","title":"Configure Appearance","text":"<p>You can customize the appearance of your Listmonk dashboard by changing the logo, colors, and other settings. To do this, navigate to the <code>Settings</code> tab and click on the <code>Appearance</code> tab.</p> <p></p> <p>This is bnkops custom public page: </p> <pre><code>body, html {\n background-color: #1c1f26 !important;\n color: #e0e0e0 !important;\n font-family: Arial, sans-serif !important;\n}\n.public {\n background-color: #1c1f26 !important;\n}\n.container {\n max-width: 600px !important;\n margin: 20px auto !important;\n padding: 30px !important;\n background-color: #2c3038 !important;\n border-radius: 8px !important;\n box-shadow: 0 0 20px rgba(0,0,0,0.3) !important;\n}\n.logo {\n display: none !important;\n}\nh1, h2, h3 {\n color: #ffc107 !important;\n}\nh1 {\n font-size: 28px !important;\n text-align: center !important;\n margin-bottom: 20px !important;\n font-weight: bold !important;\n}\nlabel {\n color: #e0e0e0 !important;\n font-weight: bold !important;\n}\ninput[type=\"text\"], input[type=\"email\"], textarea {\n background-color: #1c1f26 !important;\n border: 1px solid #444 !important;\n color: #ffffff !important;\n padding: 12px !important;\n border-radius: 4px !important;\n width: 100% !important;\n box-sizing: border-box !important;\n margin-bottom: 15px !important;\n font-size: 16px !important;\n}\n.btn, button[type=\"submit\"] {\n background-color: #ffc107 !important;\n color: #000000 !important;\n padding: 12px 20px !important;\n border: none !important;\n border-radius: 4px !important;\n cursor: pointer !important;\n font-weight: bold !important;\n width: 100% !important;\n margin-top: 15px !important;\n font-size: 16px !important;\n transition: background-color 0.3s !important;\n}\n.btn:hover, button[type=\"submit\"]:hover {\n background-color: #e0a800 !important;\n}\nfooter {\n display: none !important;\n}\n.checkbox-list label {\n color: #e0e0e0 !important;\n font-weight: normal !important;\n display: inline !important;\n}\n/* Updated link styles to match branding */\na {\n color: #ffc107 !important;\n text-decoration: none !important;\n}\na:hover {\n text-decoration: underline !important;\n}\n/* Make sure links in specific contexts maintain the branding */\n.content a, \n.page-content a, \n.message-content a {\n color: #ffc107 !important;\n text-decoration: none !important;\n}\n.content a:hover, \n.page-content a:hover, \n.message-content a:hover {\n text-decoration: underline !important;\n}\n.mailing-list-archive {\n text-align: right !important;\n margin-top: 15px !important;\n}\n.form-group {\n margin-bottom: 20px !important;\n}\ninput[type=\"checkbox\"] {\n margin-right: 5px !important;\n}\n::placeholder {\n color: #888 !important;\n}\n</code></pre>"},{"location":"archive/cm.archive/manuals/listmonk/#public-pages","title":"Public Pages","text":"<p>Listmonk allows you to create public pages for your subscribers to manage their preferences, unsubscribe, or view archives. You can customize these pages to match your branding.</p> <p>You can also publish newsletters as standalone web pages. This is useful for sharing content on social media or embedding in your website.</p> <p>To create a public page, you can create a campaign, and then in Archive settings, enable <code>Publish to public archive</code>.</p> <p></p>"},{"location":"archive/cm.archive/manuals/listmonk/#users-and-permissions","title":"Users and Permissions","text":"<p>Listmonk allows you to create multiple users with different roles and permissions. You can assign roles such as <code>Admin</code>, <code>Editor</code>, or <code>Viewer</code> to control access to different parts of the dashboard.</p> <p>To manage users, navigate to the <code>Users</code> tab in the Listmonk dashboard. You can add new users, change roles, or revoke access as needed.</p>"},{"location":"archive/cm.archive/manuals/listmonk/#templates","title":"Templates","text":"<p>Listmonk provides a template editor to create beautiful email templates. You can use the built-in editor or import custom HTML templates. You can also export your templates and share them with others.</p> <p>To create a new template, navigate to the <code>Templates</code> tab in the Listmonk dashboard. You can create a new template from scratch or import an existing one. </p> <p>Here is bnkops custom template:</p> <pre><code><!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"utf-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\n <title>{{ .Campaign.Subject }}</title>\n</head>\n<body bgcolor=\"#1a1a1a\" style=\"margin: 0; padding: 0; background-color: #1a1a1a; font-family: Arial, sans-serif; font-size: 20px; line-height: 1.6; color: #f5f5f5;\">\n <table width=\"100%\" bgcolor=\"#1a1a1a\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\">\n <tr>\n <td align=\"center\" style=\"padding: 20px 10px;\">\n <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\" style=\"max-width: 750px;\">\n <!-- Header -->\n <tr>\n <td bgcolor=\"#ffc107\" align=\"center\" style=\"padding: 30px; border-radius: 5px;\">\n <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\">\n <tr>\n <td align=\"center\">\n <h1 style=\"margin: 0 0 20px 0; color: #1a1a1a; font-size: 44px; line-height: 1.2; font-weight: bold; font-family: Arial, sans-serif;\">The Bunker Operations</h1>\n </td>\n </tr>\n <tr>\n <td align=\"center\">\n <table cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\">\n <tr>\n <td bgcolor=\"#1a1a1a\" align=\"center\" style=\"border-radius: 4px;\">\n <a href=\"https://changemaker.bnkops.com/\" style=\"display: inline-block; padding: 12px 30px; color: #ffc107; text-decoration: none; font-size: 22px; font-weight: bold; font-family: Arial, sans-serif;\">Visit Our Website</a>\n </td>\n </tr>\n </table>\n </td>\n </tr>\n </table>\n </td>\n </tr>\n\n <tr><td height=\"25\"></td></tr>\n\n <!-- Main Content -->\n <tr>\n <td bgcolor=\"#2a2a2a\" style=\"padding: 40px; border-radius: 5px;\">\n <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\">\n <tr>\n <td style=\"color: #f5f5f5; font-size: 20px; line-height: 1.6; font-family: Arial, sans-serif;\">\n <div style=\"color: #f5f5f5;\">\n {{ template \"content\" . }}\n </div>\n </td>\n </tr>\n </table>\n </td>\n </tr>\n\n <tr><td height=\"25\"></td></tr>\n\n <!-- View in Browser Section -->\n <tr>\n <td align=\"center\" style=\"padding: 25px 0; border-top: 1px solid #444;\">\n <p style=\"margin: 0 0 20px 0; color: #f5f5f5; font-size: 20px; font-family: Arial, sans-serif;\">Email clients may break formatting and animations. See the proper version here:</p>\n <table cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\">\n <tr>\n <td bgcolor=\"#1a1a1a\" align=\"center\" style=\"border-radius: 4px; border: 2px solid #ffc107;\">\n <a href=\"{{ MessageURL }}\" style=\"display: inline-block; padding: 15px 35px; color: #ffc107; text-decoration: none; font-size: 22px; font-weight: bold; font-family: Arial, sans-serif;\">View in Browser</a>\n </td>\n </tr>\n </table>\n </td>\n </tr>\n\n <!-- Footer -->\n <tr>\n <td align=\"center\" style=\"padding: 25px 0;\">\n <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\">\n <tr>\n <td align=\"center\" style=\"padding-bottom: 20px;\">\n <a href=\"https://changemaker.bnkops.com/\" style=\"color: #ffc107; text-decoration: none; margin: 0 15px; font-size: 20px; font-weight: bold; font-family: Arial, sans-serif;\">Website</a>\n <span style=\"color: #888; font-size: 20px;\">|</span>\n <a href=\"{{ UnsubscribeURL }}\" style=\"color: #ffc107; text-decoration: none; margin: 0 15px; font-size: 20px; font-weight: bold; font-family: Arial, sans-serif;\">{{ L.T \"email.unsub\" }}</a>\n </td>\n </tr>\n <tr>\n <td align=\"center\" style=\"color: #888; font-size: 18px; font-family: Arial, sans-serif;\">\n \u00a9 2024 The Bunker Operations. All rights reserved.\n </td>\n </tr>\n </table>\n </td>\n </tr>\n </table>\n </td>\n </tr>\n </table>\n {{ TrackView }}\n\n <!-- Modified styles for better Proton Mail compatibility -->\n <style>\n /* Base styles */\n body, td, p, li { color: #f5f5f5; }\n\n /* Header styles with forced colors */\n h1 { font-size: 36px; margin: 30px 0 20px 0; font-family: Arial, sans-serif; color: #f5f5f5; }\n h2 { font-size: 32px; margin: 25px 0 18px 0; font-family: Arial, sans-serif; color: #f5f5f5; }\n h3 { font-size: 28px; margin: 20px 0 16px 0; font-family: Arial, sans-serif; color: #f5f5f5; }\n h4, h5, h6 { font-size: 24px; margin: 20px 0 16px 0; font-family: Arial, sans-serif; color: #f5f5f5; }\n\n /* Inline text styles */\n p { font-size: 20px; margin: 0 0 16px 0; line-height: 1.6; font-family: Arial, sans-serif; color: #f5f5f5; }\n a { color: #ffc107; }\n\n /* List styles */\n ul, ol { margin: 0 0 20px 20px; color: #f5f5f5; }\n li { font-size: 20px; margin: 0 0 8px 0; font-family: Arial, sans-serif; color: #f5f5f5; }\n\n /* Blockquote styles */\n blockquote { \n color: #f5f5f5;\n margin: 20px 0;\n padding: 15px 0 15px 20px;\n border-left: 3px solid #ffc107;\n font-size: 20px;\n font-family: Arial, sans-serif;\n }\n </style>\n\n <!-- Inline default styles -->\n <div style=\"display: none;\" data-proton=\"true\">\n <h1 style=\"color: #f5f5f5; font-size: 36px; margin: 30px 0 20px 0; font-family: Arial, sans-serif;\"></h1>\n <h2 style=\"color: #f5f5f5; font-size: 32px; margin: 25px 0 18px 0; font-family: Arial, sans-serif;\"></h2>\n <h3 style=\"color: #f5f5f5; font-size: 28px; margin: 20px 0 16px 0; font-family: Arial, sans-serif;\"></h3>\n <h4 style=\"color: #f5f5f5; font-size: 24px; margin: 20px 0 16px 0; font-family: Arial, sans-serif;\"></h4>\n <p style=\"color: #f5f5f5; font-size: 20px; margin: 0 0 16px 0; line-height: 1.6; font-family: Arial, sans-serif;\"></p>\n <a style=\"color: #ffc107; text-decoration: none; font-weight: bold; font-family: Arial, sans-serif;\"></a>\n </div>\n</body>\n</html>\n</code></pre>"},{"location":"archive/cm.archive/manuals/listmonk/#writing-campaigns","title":"Writing Campaigns","text":"<p>Listmonk provides a powerful editor to create and send email campaigns. You can use the built-in editor to design beautiful emails with text, images, and links. You can also import HTML templates or use the template editor to create custom designs.</p> <p>The editor supports Markdown, so any content you write in Change Maker can be easily copied and pasted into Listmonk.</p>"},{"location":"archive/cm.archive/manuals/listmonk/#more-information","title":"More Information","text":"<p>Visit the Listmonk website for more information and documentation: </p> <p>Listmonk Documentation</p>"},{"location":"archive/cm.archive/manuals/obsidian/","title":"Use Obsidian as Site Editor & CMS","text":"<p>Obsidian is a powerful, open-source knowledge base management tool designed for individuals and teams. It helps users organize, structure, and connect their thoughts, ideas, and information in a flexible and intuitive way. Using Obsidian as your local content manager can massively speed up your site creation process. </p> <p>bnkops Change Maker V3 comes bundled with backend that automatically updates Obsidian internal links. This is a great way to get started if you are new to Obsidian or want to use it as your primary content manager.</p> <p>Obsidian has all the standard document editor palettes, including support for templates, code injection, and command palettes. It is also much easier on the eyes to edit within Obsidian; the system matches what the live preview will render. </p>"},{"location":"archive/cm.archive/manuals/obsidian/#getting-started","title":"Getting Started","text":"<p>Download and install Obsidian</p>"},{"location":"archive/cm.archive/manuals/obsidian/#navigate-to-bankops-change-maker-directory","title":"Navigate to BankOps Change Maker Directory","text":"<p>Navigate to the location where you have already extracted the BankOps Change Maker files. Note path to docs folder inside your application. </p>"},{"location":"archive/cm.archive/manuals/obsidian/#open-docs-folder-as-obsidian-vault","title":"Open \"docs\" Folder as Obsidian Vault","text":"<p>Step 1: Open Folder as Vault On a brand new Obsidian install, you will be given options to open vaults. Choose \"Open Folder as Vault\" and select the docs folder inside your Change Maker V3 application. </p> <p></p> <p>Step 2: Configure Vault Settings One setting does need updating to ensure compatibility. Under Settings -> Files and links -> 'Use Wikilinks' turn to off. This has no affect on Obsidian and makes site building much smoother.</p> <p></p> <p>It is also advised to switch 'New link format' to relative path. Again this helps with site building.</p> <p></p> <p>You can configure additional settings as desired, such as setting a vault name or enabling plugins. </p>"},{"location":"archive/cm.archive/manuals/obsidian/#configuration","title":"Configuration","text":"<p>Right now, bnkops can only guarantee that the base Obsidian configuration will work with the docs folder. Installing plugins may break system. Experiment away. </p>"},{"location":"archive/cm.archive/manuals/obsidian/#obsidian-sync","title":"Obsidian Sync","text":"<p>Obsidian offers a syncing services that works across all platforms for $6 a month. This is a incredible way to sync your docs folder across any number of devices; including a entire team. This allows you to use obsidian as your documentation and CMS system everywhere. </p> <p>If you want to do this for free, you can use Syncthing as alternative. Set up your docs folder in a sync across devices and open as a folder. </p>"},{"location":"archive/cm.archive/manuals/prerequisites/","title":"Prerequisites","text":"<p>To get started with Change Maker, ensure you have the following prerequisites:</p>"},{"location":"archive/cm.archive/manuals/prerequisites/#general-requirements","title":"General Requirements","text":"<ul> <li>Internet Connection: Required for initial setup to download the latest versions of the software.</li> <li>Memory: Minimum 2GB RAM. 4GB RAM is recommended.</li> <li>Disk Space: Around 10GB of free disk space; more or less depending on size of website build. (instalation size is ~1GB).</li> </ul>"},{"location":"archive/cm.archive/manuals/prerequisites/#necessary-docker-and-docker-compose","title":"Necessary: Docker and Docker Compose","text":"<p>Change Maker uses Docker and Docker Compose for containerization. Follow the instructions below to install Docker and Docker Compose on your platform.</p> <p>Docker</p>"},{"location":"archive/cm.archive/manuals/prerequisites/#windows","title":"Windows","text":"<ol> <li>Install Docker Desktop for Windows:<ul> <li>Download and install Docker Desktop from Docker's official site.</li> <li>Ensure WSL 2 is enabled (Docker Desktop will guide you through this process).</li> </ul> </li> </ol>"},{"location":"archive/cm.archive/manuals/prerequisites/#mac","title":"Mac","text":"<ol> <li>Install Docker Desktop for Mac:<ul> <li>Download and install Docker Desktop from Docker's official site.</li> <li>Docker Desktop supports both Intel and Apple Silicon Macs.</li> </ul> </li> </ol>"},{"location":"archive/cm.archive/manuals/prerequisites/#linux","title":"Linux","text":"<ol> <li> <p>Install Docker:</p> <ul> <li>Follow the instructions on Docker's official site to install Docker using your package manager.</li> </ul> </li> <li> <p>Install Docker Compose:</p> <ul> <li>If Docker Compose is not included with your Docker installation, follow the instructions on Docker Compose's official site to install it.</li> </ul> </li> </ol>"},{"location":"archive/cm.archive/manuals/prerequisites/#recommended-obsidian","title":"Recommended: Obsidian","text":"<p>Obsidian is a powerful markdown editor that can be used to edit the documentation files. It is not required, but it is recommended for a better editing experience.</p> <p>Obsidian</p> <p>More info on configurint Obsidian can be found here.</p>"},{"location":"archive/cm.archive/manuals/prerequisites/#power-user-visual-studio-code","title":"Power User: Visual Studio Code","text":"<p>Visual Studio Code is a powerful code editor that can be used to edit the source code. Visual Code Studio, if properly configured, is the fastest method to generate a site. Built in AI allows your to edit your entire codebase using plain language prompts. It is not required, but it is recommended for a better coding experience.</p> <p>Visual Studio Code</p>"},{"location":"archive/repo.archive/","title":"Welcome \ud83d\udc4b","text":"<p>This repo is inactive and archived. After consuming these materials, you can continue journey at: </p> \ud83c\udf31 Continue your journey at Changemaker <p>Hi there! Thanks for popping in. Seeing as you opened the portal, a quick little about us \ud83d\ude42 </p> <p></p>"},{"location":"archive/repo.archive/#repobnkopscom-is-a-peer-to-peer-generated-repository-hosted-and-maintained-by-the-bunker-operations","title":"repo.bnkops.com is a peer-to-peer generated repository hosted and maintained by The Bunker Operations.","text":"<p>The Bunker Operations is a co-operative based in amiskwaciy-w\u00e2skahikan (Edmonton). The administration team is comprised of settlers and we are grateful for all that the earth has provided us on this land. </p> <p>This repo is being established to provide our team, allies, and friends with the benefits of our labor through the curation and hosting of knowledge. Simultaneously, it also is a dumping ground for our thoughts and a method to organize around ideas. </p> <p>Our organized group comprises trusted collaborators, comrades, and co-conspirators who share common goals in maintaining, growing, and thriving in community \ud83e\udd1d\ud83c\udfe1\ud83d\udc9c. We provide comprehensive consulting services, web infrastructure, and resources to various organizations.</p> <p>Right now, our focus is creating resources that are open-source, low-cost, easy to operate, and corporation free. This website is a example; all the information you need to recreate this repo is here and the repo can be maintained for ~$10 a year</p> <p>The repo is a organic website; it grows in the direction its contributors take it and all the information on the site is contributed by the users. As the site is continuously being rebuilt as people contribute to it; you may even witness this in real-time. We like to think of it as myspace meets social work.</p> <p>Need a digital handy-person to help out with your organizations software stack? You can write to us at admin@thebunkerops.ca</p> Subscribe for Updates Periodic Updates (~1 Weekly) <p>Want to explore all that we have to offer? Check out: </p>"},{"location":"archive/repo.archive/#how-to-navigate-the-repo","title":"How to Navigate the Repo","text":"<p>hi hi!</p>"},{"location":"archive/repo.archive/How%20to%20Navigate%20the%20Repo%20%F0%9F%A4%94/","title":"How to Navigate the Repo \ud83e\udd14","text":"<p>I shall be telling this with a sigh Somewhere ages and ages hence: Two roads diverged in a wood, and I\u2014 I took the one less traveled by, And that has made all the difference.</p> <ul> <li>The Road Not Taken by Robert Frost</li> </ul>"},{"location":"archive/repo.archive/How%20to%20Navigate%20the%20Repo%20%F0%9F%A4%94/#dialogue","title":"Dialogue","text":"<p>Hay Bunker Admin! I already know how a website works, why do I need to read about how to navigate the repo?</p> <p>Good question user! The reason you should read this document is because this repo is in a constant state of change. </p> <p>Constant state of change?</p> <p>Yes, this site is being built live by it's users. For example: </p> <p></p> <p>As this is happening at any given time, the information in the repo is being rebuilt in live time, which means navigating the site by the standard means (like muscle memory) may not always be reliable, as urls you find content on today could be different tomorrow. </p> <p>Okay, strange, why? Whats the point of a live site? </p> <p>The reason for this is so that contributors to the repo are able to see their work instantly represented online for anyone else to also see. This does two main things: </p> <ul> <li>Makes the process of developing a website much more rewarding, as you can see your creation going up live. Its a bit gamified to make the experience of generating a repo enjoyable; and </li> <li>Other people, with your repo url, could observe you generating knowledge live. Think of it as a text live stream. </li> </ul> <p>There are several ways this could be used. For example, if you have a group together in a room, everyone could observe the output of the note taker in real time. </p> <p>Okay, isn't that just google docs? Why don't I just use that?</p> <p>You totally could! However this whole project is meant to to provide folks with a alternative to google docs, other cloud providers, and the surveillance associated with those products. </p> <p>The repo is a community project, and if you take the time to learn how to work with it, you may be able to uncover new knowledge. </p>"},{"location":"archive/repo.archive/How%20to%20Navigate%20the%20Repo%20%F0%9F%A4%94/#how-to-navigate","title":"How to Navigate","text":"<p>There are two root methods to navigate the repo. They are: </p> <ol> <li>Menu </li> <li>Search</li> </ol> <p>And there are branching methods to navigate the repo: </p> <ol> <li>Organic </li> <li>Conversation with Daisy </li> </ol>"},{"location":"archive/repo.archive/How%20to%20Navigate%20the%20Repo%20%F0%9F%A4%94/#search","title":"Search","text":"<p>As the site is rebuilt, so is the search engine. That means that all information that is added to the site, as long as it has rebuilt, is now also searchable. Further, the search method also searches the connections that have been made between documents. So with search, you can get info on what you are looking for, and topics surrounding it. </p> <p>In the top left hand corner click the search symbol: </p> <p></p> <p>This will open the search tray: </p> <p></p>"},{"location":"archive/repo.archive/How%20to%20Navigate%20the%20Repo%20%F0%9F%A4%94/#menu","title":"Menu","text":"<p>In the top right hand corner is the drop down menu: </p> <p></p> <p>Clicking this menu will open a menu: </p> <p></p> <p>All repo documents, if using markdown format, have another menu, which is the table of contents for the current page:</p> <p></p> <p>Clicking: </p> <p></p> <p>Opens table of contents: </p> <p></p> <p>That is it! You can navigate to any document on the repo through this method. </p>"},{"location":"archive/repo.archive/How%20to%20Navigate%20the%20Repo%20%F0%9F%A4%94/#organic","title":"Organic","text":"<p>The repo is built using interconnected links. Those links are often highlighted</p> <p>As long as people have been following the Syntax, Embedding, HTML, and Other Code guide, then their links should work. </p> <p>We hope to get to a place where our daily logs can be published so people can fix their broken links </p>"},{"location":"archive/repo.archive/How%20to%20Navigate%20the%20Repo%20%F0%9F%A4%94/#conversation-with-daisy","title":"Conversation with Daisy","text":"<p>This website is built using text files, which makes for lightweight html pages. Reading the information from the site is easy for Daisy. You just need to copy any repo link, pass it over to Daisy, and Daisy can answer questions about the data for you. </p> <p></p> <p>Want to continue reading? Check it out! </p>"},{"location":"archive/repo.archive/How%20to%20Navigate%20the%20Repo%20%F0%9F%A4%94/#what-is-a-repo-and-why-make-one","title":"What is a Repo and Why Make One \ud83d\udcad \ud83c\udf44","text":""},{"location":"archive/repo.archive/What%20is%20a%20Repo%20and%20Why%20Make%20One%20%F0%9F%92%AD%20%F0%9F%8D%84/","title":"What is a Repo and Why Make One \ud83d\udcad \ud83c\udf44","text":"<p>repo, is short for repository /r\u012d-p\u014fz\u2032\u012d-t\u00f4r\u2033\u0113/</p> <p>noun</p> <pre><code>A place where things may be put for safekeeping. A warehouse. A museum.\n</code></pre>"},{"location":"archive/repo.archive/What%20is%20a%20Repo%20and%20Why%20Make%20One%20%F0%9F%92%AD%20%F0%9F%8D%84/#repobnkopscom-is-a-peer-to-peer-generated-repository-website-hosted-and-maintained-by-the-bunker-operations","title":"repo.bnkops.com is a peer-to-peer generated repository website hosted and maintained by The Bunker Operations.","text":"<p>We started this project because we believe there is a need for a community based internet that is not controlled by corporate anti-social systems. We believe it is natural to want to create, to spread ideas, and share knowledge. It is so innate to life that even mushrooms do it. </p> <p>For context: you know that do you know that mushrooms can communicate? That they share resources? That they create networks they create are so massive they cover better parts of the earth? Pretty cool \ud83d\ude0e\ud83c\udf44. They do this without a central planning committee, a google web search, or any other ideological lens. </p> <p>The repo is inspired by larger repository projects like github or wikipedia, the ways in which nature builds its connections, and the human need for community. Unlike other repo projects, the bnkops repo does not require you to surrender your data to a third party host; all your content remains your own, localized on whatever device you are contributing on. </p>"},{"location":"archive/repo.archive/What%20is%20a%20Repo%20and%20Why%20Make%20One%20%F0%9F%92%AD%20%F0%9F%8D%84/#visualization","title":"Visualization","text":"<p>We take inspiration from this. This repo stores and shares knowledge using a peer-to-peer system in which all the contributors must know one another and are mutually responsible to each other; kind of like mushrooms in a forest. By removing barriers to hosting this type of long form information we believe that our communities will share enthusiastically. In this collaborative information generating process we hope to unveil community knowledge that is helpful to ourselves and those around us. </p> <p>By learning to contribute to the repo, you will also learn how to protect your own data and rid yourself of corporate software. The process has the potential to save you thousands of dollars in yearly subscription costs and free you from corporate surveillance. </p> <p>Further, as this project emerges, we suspect it will change. This repo is the product of emergent strategy; we saw a need and have been trying to fulfill it. </p> <p>We will grow towards the sun and grow our roots towards water; chit chatting and helping our neighbors as we do so. </p> <ul> <li>You can read more about the Repo Theory. </li> <li>If you want to join the network, you can learn how to How to Add to the Repo</li> <li>If you are curious as to how the site is being generated live as people type, you can learn more about the mechanics learning How to Replicate this Repo.</li> </ul> <p><code>Daisy, what is a repo?</code></p> <p> Your browser does not support the audio element. </p> <p>I'm fixin' to tell ya!</p> <p>A repository, or \"repo\" for short, is like a big ol' filing cabinet where all your code and data are stored in one place. Think of it like a digital library where you can store, manage, and share your projects with others.</p> <p>In Markdown syntax, here's what a simple repo structure might look like:</p> <p><pre><code>my-repo/\n|--- README.md\n|--- src/\n |--- main.py\n |--- utils.py\n|--- tests/\n |--- test_main.py\n |--- test_utils.py\n</code></pre> This is just a simple example, but you get the idea! A repo can contain multiple files and folders, and it's where you'll store all your project's code, data, and documentation.</p> <p>Now, I know what you're thinkin', \"Daisy, why do we need a special word for this?\" Well, my friend, in the world of software development, \"repo\" is just shorthand for \"repository\", and it's become a widely-used term among coders. </p> <p>Signed, DaisyV4.</p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/2024-09-16/","title":"Admin Log - 2024-09-16","text":"<p>D</p> <p>id some site wide experimentation. Learning about the different loading functions. Wanting to reduce the amount of times the whole sites need rebuilding</p> <p>So far best option is a dirty reload of mkdocs.</p> <p><code>--dirty</code></p> <p>Combined with a up-down rebuild daily should do the trick for now. Leaving the site up under the standard system for now; want things to be simple until they no longer work. </p> <p>Further updates to explore: </p> <ul> <li>One click command to put up the repo. </li> <li>Full rebuild with all the mkdcos-publisher features </li> <li>Templates for meta-data for folks to use </li> </ul> <p>Added new features to the site </p> <pre><code> features:\n - navigation.instant\n - navigation.instant.prefetch\n - navigation.path\n - navigation.top\n</code></pre>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/2024-09-20/","title":"Admin Log - 2024-10-20","text":"<p>Lots of development today: </p> <p>bnkops Simple Targeter is coming along quickly. Learning's from this will be used to give administrative team ability to quickly message repo contributors with email systems. </p> <p>Introduced clipping to the vault. Users, if they have the extenstions, can now swifty clip things into the system. Direct link to clipper</p> <p>The speed of development is still going strong. Should be able to get some more features online shortly. Need to find some organizational partners to really put the drive into the repo. </p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/2024-09-23/","title":"Admin Log - 2024-10-23","text":"<p>Spent tims attempting deployment of Budibase. Turns out that VPNs screw the deployment on base builds. Figured this out playing with base device. </p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/2024-09-24/","title":"Admin Log - 2024-09-24","text":"<p>Found a new alt to canva: </p> <p>https://plus.excalidraw.com/</p> <p>Going to do a write up soon. </p> <p>Need to move system to standalone device for network security. Getting dicy doing everything on homelab. </p> <p>Other updates: - Self hosted budibase doesn't play nice with vpn's. Likely because it needs online access to determine versioning for paid access. Sucks but also like whatever. </p> <p>Looking at proxmox as a solution for homelab. Looks slick: https://www.proxmox.com/en/</p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/2024-09-26/","title":"Admin Log - 2024-09-26","text":"<p>Big day today! New home server arrived today. Got it wired up and going to be migrating the site over to it. Excited to test the system with a new central node. </p> <p>On that note, running the system on a refurbished hp ProDesk. Comes with a keyboard and mouse. Seems a decently capable little machine. Came out to $100. Combined with a cheap af screen, could use the thing as a standard computer to. </p> <p>Excited. \ud83d\ude42</p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/2024-09-27/","title":"Admin Log - 2024-09-27","text":"<p>We are up and running on the server! Hell yeah! </p> <p>Next big tasks are getting n8n and budibase operating on server. </p> <p>So excited for this shift. The system is coming together. </p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/2024-10-02/","title":"Admin Log - 2024-10-02","text":"<p>Been sick the last few days, so been down in the dumps. </p> <p>Today managed to get the server online with budibase and n8n</p> <p>got through the simple set up for the smtp server </p> <p>now just working through hiccups in the codebase. Turns out json is fickle. Need to strip or convert the markdown to be able to pass it between apps. </p> <p>nifty little qr code generator that can be integrated somewhere: https://github.com/bizzycola/qrcode-generator?ref=noted.lol</p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/2024-10-04/","title":"Admin Log - 2024-10-04","text":"<p>A rough week... development slowed to a crawl. </p> <p>Deployed several demo bnkops Simple Targeter </p> <p>Did some back-end updates; - updated the app state to use the sorting field of a time stamp - updated the sample bnkops simple target to be on brand </p> <p>Did some work on the The Bunker Ops Server Build-Out</p> <p>Did some more research into a --dirty build yaml for mkdocs serve and looks like ill do it for a bit. The whole site reload could cause annoyance fast. maybe a flag to not reload the page? </p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/2024-10-05/","title":"Admin Log - 2024-10-05","text":"<p>Update today to simple targeter - can now just do a simple form state </p> <p>Need to make a manual for simple targeter</p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/2024-10-09/","title":"Admin Log - 2024-10-09","text":"<p>phew almost over sickness </p> <p>Sent some emails to folks regarding progress. Need to send out a bit more stuff. </p> <p>Got listmonk online. Going to use it to run newsletters. Hoping that we can connect it to budibase etc. </p> <p>So far so good. List monk is pretty slick. </p> <p>Next up is getting databases all centralized for cleaner management. </p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/2024-10-16/","title":"Admin Log - 2024-10-16","text":"<p>Finally past the sickness! Super jazzed about that lol </p> <p>Getting back into development. Need to do the following stuff: </p> <ul> <li>Try some dirty build settings for the site generation. With more people coming online, going to start needing new solutions here. </li> <li>Finishing and launching beta bnkops Simple Targeter</li> <li>Start communicating the project on large and look for contributors </li> </ul>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/2024-10-18/","title":"Admin Log - 2024-10-18","text":"<p>Decent week of development. Now have a stronger vision of how to get people on to obsidian and syncthing as a google alternative. Going to work on deploying some more stuff for fun. </p> <p>Simple targeter coming along quickly. </p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/2024-10-21/","title":"Admin Log - 2024-10-21","text":"<p>Hello! </p> <p>Today did some more updating to the simple target app. Got the terms of service, aftercare, and other landing pages done. </p> <p>Realizing that need a better system for the page loading on the repo. Having it dirty build might be the only way for the time being. </p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.0/","title":"Update 1.0 - Excalidraw + Listmonk","text":"<p>{{ .Subscriber.Name }}, </p> <p>We hope all is well with you! The fall is the most beautiful time of year.</p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.0/#psa-dont-get-trapped-on-canva","title":"PSA: Don't get trapped on Canva","text":"<p>Canva is doubling their pricing in December. In classic software-as-a-service, they are holding your content hostage for massive pay bump to their executives. </p> <p>Even if you have no intention of leaving Canva or don't pay for the service, we suggest you take the time to download your assets asap. The reason is that companies often will limit or make difficult the pulling of data from the platforms the more expensive they get (trapping you on them). </p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.0/#instructions-here","title":"Instructions here.","text":""},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.0/#excalidraw","title":"Excalidraw","text":"<p>If you are open to making the transition off Canva, we have a forever free alternative for you; excalidraw. </p> <p>We are hosting a excalidraw instance to ensure that the current version remains free for you forever. We commit to keeping it updated. </p> <p>Want to learn the system? Excalidraw has a youtube channel. </p> <p>Deploy your own excalidraw app with instructions here.</p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.0/#bonus-listmonk","title":"Bonus - Listmonk","text":"<p>bnkops is currently testing listmonk. Listmonk is a replacement for Mailchimp or other software for newsletter/campaign management. </p> <p>Can see instructions for getting it online on our server build out. </p> <p>We can't recommend it hearidly until we use it for awhile however working well so far. Can see it backed into the repo. </p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.0/#savings","title":"Savings","text":"<p>These two software replacements combined save the average user: </p> <ul> <li>Canva - $130 a year </li> <li>Mailchimp - (minimum) $360 a year </li> </ul> <p>The server stack is swiftly approaching a $1000 in monthly savings. All on a $150 used computer the size of a toaster and some good old fashioned work. </p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.1/","title":"Hello Friends!","text":"<p>Bnkops is thrilled to have been accepted for Proton Mails SMTP (simple mail transfer protocol) services! </p> <p></p> <p>This means that we are able to send programmatic encrypted emails from our services! We are excited because this: </p> <ul> <li>uncaps the amount of email we can send through our hosted apps like Simple Targeter or the bnkops Server Stack,</li> <li>allows us to fully automate inbox monitoring with Daisy on a much higher security standard, and</li> <li>gets our entire operating stack off of corporate services like Google, Amazon, and Microsoft. </li> </ul> <p><code>well bunker admin, isn't proton just another corporation?</code></p> <p>We don't believe so! We believe that Proton is working as a non-profit with a foundational backing in Switzerland. Proton was crowdfunded to start, and since then, has maintained the path of remaining a non-profit entity. You can check out that story here. </p> <p><code>Cool! How do we get these kind of services?</code></p> <p>Great question! We had to go back and forth on email with the Proton folks for about a week after first clicking on the 'request smtp' services button inside our proton account. We worked with our service representative (imagine that, a real service rep) to answer questions about our services to ensure what we where proposing to do was not just straight up spam. After which, they enabled the services in our account, and we are good to go: </p> <p></p> <p><code>Okay! That seems like more work then just using the free email and smtp services at other places?</code></p> <p>It sure is! However, with like 10 emails and a bit of patience, bnkops no longer supports genocide or is forced to share space with Donald Trump with our data or dollars. </p> <p><code>Genocide? Donald Trump? The heck?</code></p> <p>Yes friend! Google, Microsoft, and Amazon are all backers of the genocide in Gaza. Donald Trump is Nationbuilders largest customer (i just learned it was also the Brexit campaigns choice software \ud83d\ude43). These are mercenary software; every dollar and data point we give them enables crimes against humanity. </p> <p><code>Damn dude, that is a lot for a Tuesday morning</code></p> <p>Truly. This information is annoying, heavy, and frustrating. It is why we are so excited to be using Proton \ud83d\ude42</p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.1/#funner-news","title":"Funner News","text":"<p>Today we are on-boarding contributors to the repo! Excited for some folks to start producing content using our system. </p> <p>Personally, I am making slow progress on transferring all of my data to the repo. With our first active contributors, I am excited to showcase how the system might be used as a social system. The repo dream is starting to take shape. </p> <p></p> Subscribe for Updates Periodic Updates (~1 Weekly)"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.2/","title":"Canva Be Damned: A Full Alt in Obsidian + Simple Targeter Beta - Bnkops Newsletter 1.2","text":""},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.2/#hi-friends","title":"Hi Friends,","text":"<p>I'm back from sickness, feeling speedy, and excited about this update! You're getting two updates this week \ud83d\ude2e</p> <p></p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.2/#canva-be-damned","title":"Canva Be Damned","text":"<p>I'm genuinely thrilled to share this update. That's because Canva has become a massive thorn in operations here, and getting off of it was supposed to be a challenge.</p> <p>To start getting off Canva, I've already set up a standalone alternative online: excalidraw.bnkops.com</p> <p>However, after some research this morning, I found out that the free and open-source software Excalidraw is already integrated into Obsidian and is SUPER fast. Now this might not be free forever (it's like one guy making the plugin), but it's now my official recommendation.</p> <p>To install:</p> <ol> <li>Go to settings (gear icon at the bottom left of Obsidian)</li> <li>Click on \"Community Plugins\"</li> <li>Search for Excalidraw</li> </ol> <p>On install, a handy video will pop up that's 15 minutes long, teaching you the basics of the editor. This thing is powerful; my first glance is that it has integrated nearly every feature you find in a full Photoshop suite, including some optional AI features.</p> <p>Why is this exciting?</p> <p>Well, because I love Obsidian and Excalidraw, and them coming together feels like a dream. Also, because if you're on the repo, this allows you to generate visuals and immediately publish them. You can then use these assets anywhere; integrating them into newsletters, articles, or any of the other features in The Bunker Ops Server Build-Out. If you've been trained on Syncthing, you can automatically sync your content across devices. It uses the Obsidian command line (click Ctrl+P to open in Obsidian) for speedy content creation and is all localized.</p> <p>On the quest to replace Nationbuilder, I've inadvertently also replaced Canva/Photoshop. Pretty good deal! </p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.2/#simple-targeter-beta-testing","title":"Simple Targeter - BETA Testing","text":"<p>Simple Targeter has been deployed for public consumption! Special thanks to Trans.Rights.YEG for picking this up and running with it.</p> <p>Check it out here</p> <p>So far, just some simple back-end issues needed work; no major app breakages. I look forward to getting more feedback.</p> <p>I'm prioritizing a major update to this system, which includes:</p> <ul> <li>Aftercare: Wanting to integrate an email that goes to the public user and a landing page to encourage further actions. This will be toggle-able.</li> <li>Manuals: Needing to write documentation for the use of the app. This is a secondary-priority.</li> <li>Campaign Management: Allowing app administrators to send follow-up emails to their collected list. This feature will allow each app deployment to be reusable, reducing working hours in deployment.</li> </ul>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.2/#feedback-training","title":"Feedback + Training","text":"<p>I believe that this project might be getting too conceptual for people to wrap their heads around. The decentralization of tooling is something that's hard to follow, even for someone terminally plugged in like me. I regularily loose myself in the freedom of it all, however, it has drawn me too deep into it.</p> <p>How it feels to try and communicate this project when I am too plugged in:</p> <p></p> <p>Bnkops is dedicated to getting all allies onto their own dedicated servers so we can collectively build resilience to corporate systems that are sucking energy, time, and dollars out of our communities. </p> <p>I've been thinking on how to better approach this dream. After having trained just a handful of people on the basic systems (we have new contributors on the repo btw \ud83d\ude42), I'm starting to understand that the best way forward is likely through facilitated in-person sessions.</p> <p>The tldr is: I need to stop developing and start communicating with people in real life! </p> <p>To that end, please share your thoughts on this project so far. You can reply to this email or chat with me in person when we see each other.</p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.2/#thanks-for-reading","title":"Thanks for Reading!","text":"<p>Much appreciated y'all.</p> <p>Cheers, Bunker Admin</p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.2/#bonus-wallpaper-from-indoctrinationmation","title":"Bonus - Wallpaper From Indoctrinationmation","text":""},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.3/","title":"Newsletter 1.3","text":"<p>Hi Friends, </p> <p>Fall is here in full swing! It is by far my favorite season; feels good on the bones and the colors are gorgeous. </p> <p>The fall also makes a stark reality more true; winter is coming. Friend of the bnkops Bradley Lafortune has written a great overview of what this means for our community and has called for more housing to be built. </p> <p>We have over 4000 people living without permanent housing in Edmonton. Their are several hundred on the street. The breadlines downtown are astonishing. Unemployment rates are nearing 9%. Rents have never been higher. The sheer amount of suffering happening in the \"wealthiest\" province is shameful. </p> <p>These conditions are only matched by the 1930's great recession. It is self imposed pain; our government sits on a surplus of billions. While our provincial government ponders giving billions of dollars away to hockey teams, our neighbors are freezing to death. It is unconscionable. </p> <p>Building on Brads article, we have released a Simple Target for Minister Jason Nixon urging him to provide the needed funding to turn surplus public lands into housing.</p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.3/#please-share-and-sign","title":"Please share and sign.","text":""},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.3/#simple-target","title":"Simple Target","text":"<p>This small campaign also highlights some updates to Simple Target. The Aftercare page is now live and automated follow up email is coming soon. </p> <p></p> <p>We are building this app using Budibase and n8n; free low code app automation and app builders. The nearest comparative software are google forms and zapier. There is plenty of custom code that makes the system go brrr however we are thrilled by progress so far. </p> <p>You can learn how to deploy these system for free bnkops Simple Targeter</p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.3/#twitter-is-dead-long-live-x-why-you-should-abandon-x","title":"Twitter is Dead, Long Live X --- Why You Should Abandon X","text":"<p>I have been ranting about X for awhile now so went ahead and actually wrote up a rant. TLDR is that Twitter is dead, X is here, using the platform puts our communities in danger, we should all be working to leave the platform. </p> <p>That's all folks! Thanks for tuning in. </p> <p></p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.4/","title":"Newsletter 1.4","text":"<p>Hello again Friend! </p> <p>Apologies to my google subscribers and everyone getting this one twice. I didn't realize that google strips out the code that I use for accessibility (dark themes). This one should come through just fine and if not there is now a button to view in browser at bottom of email. </p> <p>I had a welcome weekend at home! Finally was able to get some rest in, do some laundry, and putz around. This also gave me time to finish off the biggest upgrade to bnkops systems yet. </p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.4/#introducing-bnkops-live-site","title":"Introducing bnkops Live Site!","text":""},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.4/#a-new-open-source-free-and-locally-hosted-website-generation-machine-that-a-host-user-can-access-edit-and-manage-from-any-device-connected-to-the-internet","title":"A new open-source, free, and locally hosted website generation machine that a host user can access, edit, and manage from any device connected to the internet.","text":""},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.4/#using-this-system-combined-with-already-developed-parts-of-the-the-bunker-ops-server-build-out-a-person-will-be-able-to-generate-a-dense-responsive-and-mobile-ready-website-with-a-focus-on-political-action","title":"Using this system, combined with already developed parts of the The Bunker Ops Server Build-Out, a person will be able to generate a dense, responsive, and mobile ready website with a focus on political action.","text":"<p>Our sever stack is approaching the status of being a full replacement for the software-that-shall-not-be-named. In the coming weeks we will be publishing a open demo for our subscribers to poke around on. So if you wanna share it with anyone, think about getting them on this list. </p> <p>Unlike other software in this space, this system is designed to be accessible and simple to use. No extra bloatware, trackers, or random elements; everything is easy to see and manage. Update the entire site using plain language in one simple location. </p> <p></p> <p>With the ability to write your website entirely in Markdown, you can pass content effortlessly between site, newsletter, simple targeter, and any other text editor. You can now write an entire website on the most basic text editor or just use the fastest knowledge app out there (Obsidian) and publish it instantly. Everything is being made mobile friendly, so we can all spend less time raging on X, and more time writing content ;)</p> <p>With your own server deployment, your data is stored locally, and so your data remains yours forever. It is impossible to have your information held hostage behind high fees or custom software, as all files are in plain text which can be opened by any platform. Review your edits live and watch your site come to life with the sweet satisfaction of knowing you own it, forever, for free. </p> <p></p> <p>In the coming weeks, bnkops will be publishing the instructions to install this system on any internet connected computer. That sound like a lot and want someone else to manage the server? We got you. Bnkops can deploy a remote site in minutes and have you uploading your documentation soon afterwards. Become a contributor to the repo without having to do any of the previous leg work. </p> <p>Generated websites are mobile friendly, social media ready, feature packed, and loaded with customization. You can keep it as simple as a the repo or deploy something with incredible depth. You can go as far as to write your own custom pages, templates, layouts, or even code into the system to be rendered by the back-end. </p> <p>As one of our partners said \"oh so its just myspace for politics?\"</p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.4/#deploy-your-thoughts-as-fast-as-they-come-to-you-and-engage-a-audience-to-take-political-action-for-free","title":"Deploy your thoughts, as fast as they come to you, and engage a audience to take political action. For free.","text":"<p>Everything we develop will be published in bnkops manuals. This is the promise of our development journey. Join us in the digital revolution against surveillance capitalism. </p> <p>Speaking of capitalism!</p> <p>I did also manage to write a unhinged blog this weekend about the Political Industrial Complex: </p> <p>Distributed Digital Organizing is The Way Out </p> <p>It is very much the theory behind why we are working so quickly to deploy these systems on scale. Check it out and let me know your thoughts \ud83d\ude05</p> <p>That is all for now folks. Stay sharp out there! </p> <p>Bonus: I know that some new contributor content has recently been posted to the repo. Find it if you can. </p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.5/","title":"Newsletter 1.5","text":"<p>Howdy {{ .Subscriber.Name }},</p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.5/#sneak-peek-change-maker-v3-demo","title":"Sneak Peek Change Maker V3 Demo","text":""},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.5/#build-your-site-keep-your-freedom","title":"Build Your Site, Keep Your Freedom","text":"<p>Demo a free, open-source, one-click install tool that turns any computer into your own website server. Perfect for digital campaigns, blogs, or documentation sites.</p> <ul> <li>Privacy-first: Your content stays under your control</li> <li>Mobile-ready: Write and manage from any device</li> <li>Simple: If you can type, you can make a site</li> <li>Smart: Built-in search, dark mode, and more</li> </ul> <p>Everything, even this newsletter, built, served, and operating from bnkops servers. </p> <p>Check out the full feature set at: https://changemaker.bnkops.com</p> <p>Installation manual and code on schedule for release by ~ end of November. Already being battle-tested by community partners. To make lasting change in the digital world, we need your help. </p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.5/#encourage-folks-to-subscribe-to-get-code","title":"Encourage Folks to Subscribe to Get Code","text":""},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.5/#personal-update","title":"Personal Update","text":"<p>Writing this from a friend's couch, coffee in hand, while our server (lovingly dubbed \"the toaster\") hums away back home. I literally sleep next to it sometimes, about 3 feet away - I take pleasure in knowing that I sleep closer to the server then that bald headed gargantuan Bezos ever did the Amazon racks in his moms garage</p> <p>These past weeks have been challenging. As a trans person who's both navigated and worked within the system (those drag days as SU Pres remain memorable), the current rollback of trans rights weighs heavily. It fuels a persistent drive to resist and create change.</p> <p>This project embodies years of expertise across political science, coding, and computer building, backed by an incredible support network. My therapist wisely suggested getting comfortable for this marathon \u2013 hence, the couch and coffee setup.</p> <p>I used to be that person who dismissed free tools, believing paid ones had to be superior (because the market knows best, right?). Now? Holy cow that garbage is expensive. Ripping people off has become the driving force for capitalism in the digital age. </p> <p>So I'm at peace knowing some folks won't benefit from my work, and that's perfectly fine. Well kinda; I feel strangely protective of the whole thing.</p> <p>Any how... </p> <p>The journey has been solitary \u2013 from writing dense theory to coding thousands of lines and launching a full application. So it's time to expand. I'm meeting with collaborators and rapidly deploying more sites. If you're interested in discussing the project over coffee IRL, reach out.</p> <p>As for V4? It'll arrive when it's ready \u2013 and I promise to stop accidentally smacking the server during midnight rolls</p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.5/#so-i-am-poud-to-announce-our-first-product-more-updates-coming-soon","title":"So I am poud to announce our first product. More updates coming soon.","text":""},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.5/#respect-and-solidarity","title":"Respect and solidarity,","text":"<p>Bunker Admin, thatreallyblondehuman </p>"},{"location":"archive/repo.archive/Admin%20Log%20%E2%8F%AD/Newsletter%201.5/#ps-google-straight-up-breaks-formatting-for-email-they-do-this-because-they-force-a-particular-type-of-code-into-email-they-do-this-to-establish-a-monopoly-on-emai-it-is-the-only-client-that-does-this-take-that-as-you-will-especially-if-you-pay-them-lol","title":"Ps. Google straight up breaks formatting for email. They do this because they force a particular type of code into email. They do this to establish a monopoly on emai. It is the only client that does this. Take that as you will, especially if you pay them lol","text":""},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Bot%20campaign%20backing%20Pierre%20Poilievre%20looks%20the%20work%20of%20an%20amateur%2C%20experts%20say%20%20CBC%20News/","title":"Bot campaign","text":"<p>Bot campaign backing Pierre Poilievre looks the work of an amateur, experts say | CBC News</p> <p>Politics</p> <p>A rapid assessment of the suspected bot campaign associated with Conservative Leader Pierre Poilievre\u2019s recent speaking event in northern Ontario was likely the work of an amateur.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Bot%20campaign%20backing%20Pierre%20Poilievre%20looks%20the%20work%20of%20an%20amateur%2C%20experts%20say%20%20CBC%20News/#social-media-lab-calls-the-bot-campaign-a-crude-and-amateurish-exercise","title":"Social Media Lab calls the bot campaign a 'crude and amateurish exercise'","text":"<p>Conservative Leader Pierre Poilievre speaks during a rally in Montreal on Wednesday, June 19, 2024. (THE CANADIAN PRESS/Christinne Muschi)</p> <p>Academics who study social media say a\u00a0suspected bot campaign associated with Conservative Leader Pierre Poilievre's recent speaking event in northern Ontario likely was the work of an amateur.</p> <p>A rapid analysis conducted by Toronto Metropolitan University's Social Media Lab (SML) concluded\u00a0the bot campaign does not have the fingerprints of a sophisticated actor, but didn't say who might have been behind it.</p> <p>In July, the social media platform X was inundated with posts following Poilievre's tour of Northern Ontario.\u00a0</p> <p>These posts claimed to be from people who attended\u00a0Poilievre's\u00a0event in Kirkland Lake, Ont. They were actually generated by accounts in Russia, France and other places, and many of them had similar messaging.</p> <p>Academics at SML\u00a0manually sifted\u00a0through an estimated 200 bot accounts associated with the campaign. The lab said some of the accounts were created within the last two months.</p> <ul> <li>Online bot campaign backing Pierre Poilievre prompts call for probe by election commissioner</li> </ul> <p>\"To confirm that this wasn't part of a broader influence campaign, we conducted a cursory scan of other social media platforms. Our scan didn't find any similar campaign, further reinforcing our hunch that this was likely done by an amateur with limited resources,\" said SML in an online post.</p> <p>\"If this was an attempt at influencing voters in Canada, it's a crude and amateurish exercise and doesn't hold a candle to other known influence campaigns.\"</p> <p>SML compared the northern tour bot campaign\u00a0to a Chinese government-linked \"spamouflage campaign\" in\u00a02023.</p> <ul> <li>China linked to propaganda campaign targeting Trudeau, Poilievre, says Global Affairs</li> </ul> <p>In October, federal officials said the Chinese government likely was behind a \"spamouflage\" disinformation campaign targeting Prime Minister Justin Trudeau, Poilievre and other MPs in August and September of 2023.</p> <p>Global Affairs Canada's\u00a0Rapid Response Mechanism (RRM), set up to monitor foreign state-sponsored disinformation efforts, said the campaign was \"connected to the People's Republic of China\" and was meant to curb criticism of the communist regime.\u00a0</p> <p>LISTEN | What's behind the alleged Kirkland Lake bot campaign? </p> <p></p> <p>The House9:55Bots buzzing with energy!</p> <p>After a series of strangely similar tweets appeared on X from social media accounts purporting to be \u201cbuzzing with energy\u201d after a Pierre Poilievre rally, ProPublica\u2019s Craig Silverman explains who stands to gain when bots push out political messaging.</p> <p>The NDP called on the elections commissioner to investigate what was behind the army of bots supporting Poilievre.</p> <p>The Conservative Party of Canada has denied any role in the bot campaign, a position it reiterated again on Friday.\u00a0</p> <p>\"As we always said, the CPC had nothing to do with this. The Conservative Party does not use bots. It would have been nice if someone had done this research before blindly repeating baseless accusations from the Liberals and NDP,\" said Sarah Fischer, director of communications for the Conservative Party of Canada.</p> <p></p> <p>NDP MP for Timmins-James Bay Charlie Angus speaks during a news conference on Parliament Hill in Ottawa on Feb. 7, 2023. (Spencer Colby/The Canadian Press)</p> <p>The NDP also called for the elections commissioner to get involved.</p> <p>\"We need more than speculation on the Kirkland Lake bot scandal. Canadians have a right to know that democratic engagement is open, transparent and free from manipulation,\" the\u00a0NDP's Charlie Angus said in a media statement.</p> <p>\"This is why elections Canada needs to investigate and lay out clear ground rules.\"</p> <p>Angus, the MP for Timmins\u2014James Bay, represents the area where Poilievre held the rally.</p> <p>WATCH: NDP raising 'legitimate' questions about bot farms, Holland says </p> <p></p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Bot%20campaign%20backing%20Pierre%20Poilievre%20looks%20the%20work%20of%20an%20amateur%2C%20experts%20say%20%20CBC%20News/#ndp-raising-fair-and-legitimate-questions-about-bot-farms-holland-says","title":"NDP raising 'fair and legitimate' questions about bot farms, Holland says","text":"<p>Health Minister Mark Holland, speaking after Conservatives rejected an allegation that the party used bot farms to post online content, says there are 'a lot of questions that have to be asked' and encouraged people to be circumspect about what they see online.</p> <p>Researchers are calling the Kirkland Lake bot campaign an example of a \"copypasta\" attack. The term is derived from copy-and-paste\u00a0\u2014 selecting a piece of text and copying it elsewhere.</p> <p>In a copypasta attack, a block of text is copied and pasted widely, often for humorous or sarcastic purposes. According to a post from the Canadian Digital Media Research Network, it's frequently used to generate\u00a0memes or to confuse people who don't recognize it as a joke.</p> <p>The Canadian Digital Media Research Network (CDRN) is a new organization that gathers social media researchers and experts from around Canada who monitor the\u00a0online world.</p> <p>McGill University's Media Ecosystem Observatory and the University of Toronto administer the CDRN. The federal government has committed to investing $5.5 million\u00a0in the network over the next several years\u00a0\u2014\u00a0one\u00a0of a series of measures the federal government announced in 2023 to combat the threat of foreign interference, misinformation\u00a0and disinformation.</p> <p>The CDRN's Jennie Phillips said the network is treating this as both a minor incident and a learning experience.</p> <p>\"It's actually quite a valuable case to study,\" she said. \"This is like a flag of what can come in, especially during elections. So there's a lot that can be learned and understood around these sorts of things.\"</p> <p>She said the Kirkland Lake incident represents the first time the network has activated its rapid response team. In addition to the recent real-time report released by its partner, Toronto Metropolitan University's Social Media Lab (SML), the network is committed to releasing further updates on its network website.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Bot%20campaign%20backing%20Pierre%20Poilievre%20looks%20the%20work%20of%20an%20amateur%2C%20experts%20say%20%20CBC%20News/#about-the-author","title":"ABOUT THE AUTHOR","text":"<p>David Thurton is a senior reporter in CBC's Parliamentary Bureau. He covers daily politics in the nation\u2019s capital and specializes in environment and energy policy. Born in Canada but raised in Trinidad and Tobago, he\u2019s moved around more times than he can count. He\u2019s worked for CBC in several provinces and territories, including Alberta and the Northwest Territories. He can be reached at david.thurton@cbc.ca</p> <ul> <li>LinkedIn</li> <li>Twitter</li> </ul> <p>With files from Catharine Tunney</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Bots%20on%20X%20worse%20than%20ever%20according%20to%20analysis%20of%201m%20tweets%20during%20first%20Republican%20primary%20debate/","title":"Bots on X","text":"<p>Bots on X worse than ever according to analysis of 1m tweets during first Republican primary debate</p> <p>Bot activity on the platform formerly known as Twitter is worse than ever, according to researchers, despite X\u2019s new owner, Elon Musk, claiming a crackdown on bots as one of his key reasons for buying the company.</p> <p>\u201cIt is clear that X is not doing enough to moderate content and has no clear strategy for dealing with political disinformation,\u201d associate professor Dr Timothy Graham tells Guardian Australia.</p> <p>A researcher at the Queensland University of Technology, Graham has tracked misinformation and bot activity on social media for several years including until Musk took over Twitter in October last year.</p> <p>Graham and the PhD candidate Kate FitzGerald recently analysed 1m tweets surrounding the first Republican primary debate, along with Tucker Carlson\u2019s interview with the former US president Donald Trump streamed on X at the same time.</p> <p></p> <p>Post volume on X during the first Republican primary debate and Tucker Carlson\u2019s Donald Trump interview. Photograph: Timothy Graham and Kate FitzGerald, QUT</p> <p>Previously, the researchers were able to analyse 10m tweets a month free of charge, but after Musk restricted access to the company\u2019s application programming interface (API), they had to fork out over US$5,000 (A$7,800) from a grant fund to gain access to the 1m posts included in the current study.</p> <p>\u201cThat purchase did not feel good,\u201d Graham says.</p> <ul> <li>Sign up for Guardian Australia\u2019s free morning and afternoon email newsletters for your daily news roundup</li> </ul> <p>The analysis was conducted with the aid of a newly developed tool called Alexandria Digital, which was created to monitor and identify the spread of misinformation and disinformation.</p> <p>Graham and FitzGerald identified more than 1,200 X accounts that were spreading the false and disproven claim that Trump won the 2020 election during the debate and interview, as well as a sprawling bot network of 1,305 accounts. Conspiratorial content spread during the debate attracted more than 3m views.</p> <p>They analysed tweets using 11 hashtags and keywords and used those tweets to detect potential bot activity.</p> <p></p> <p>A visualisation of the annotated co-post network. For accounts to appear in this network they must have posted within 60 seconds of each other at least five times during the collection window. Photograph: Timothy Graham and Kate FitzGerald, QUT</p> <p>So, how did they determine the difference between a bot and what might just be a hyperpartisan account with a human behind it? Graham says they set a high bar.</p> <p>\u201cWe look at patterns of accounts that are discussing the debate topics, and during the interview as well, that are posting the same or similar content or the same links repeatedly within five seconds of each other,\u201d he says.</p> <p>If two accounts did this five times, the researchers took this as a sign that they were automated accounts.</p> <p>Onenetwork of bots discovered was connected to an account calling itself \u201cMediaOpinion19\u201d. The account was created in September last year, and had tweeted on average 662 times a day \u2013 or once every two minutes. It was the central node in a network of pro-Trump accounts that retweeted the central account\u2019s tweets.</p> <p>The researchers also found a second pro-Trump cluster of bot accounts linked to a fake news website that posts content similar to the Russian IRA \u201cnews trolls\u201d identified during the 2016 presidential election.</p> <p>FitzGerald says the accounts remained active long after they had first discovered them, showing that X has not been cracking down on bot activity, let alone the misinformation and disinformation posted by real people.</p> <p>skip past newsletter promotion</p> <p>after newsletter promotion</p> <p>\u201cIn terms of the bots that we identify, Twitter or Xis not banning them. We\u2019ve only found one or two that\u2019s actually getting suspended, but others [remain] in the same network,\u201d she says.</p> <p>\u201cAnd so whatever method they\u2019re using is poor.\u201d</p> <p>She says many of the human-backed hyperpartisan clusters promoting misinformation identified in the report were verified by the platform under Musk\u2019s new system, which allows people to pay for the blue-tick verification on X.</p> <p>Around the time of Musk\u2019s first attempt to buy Twitter, he posted: \u201cIf our Twitter bid succeeds, we will defeat the spam bots or die trying!\u201d</p> <p>Musk reportedly claimed in June that the company \u201chad eliminated at least 90% of scams\u201d.</p> <ul> <li>Sign up for a weekly email featuring our best reads</li> </ul> <p>But scam accounts are still prominent on the platform, with several verified accounts seen as late as Thursday this week promoting long-known investment scams.</p> <p>Graham and FitzGerald are now turning their attention to potential misinformation and bot activity related to the referendum on an Indigenous voice to parliament, but Graham says it is too early to share any findings.</p> <p>Despite the turmoil at X, its drop in value and the rise of rivals such as Threads and Bluesky, Graham says Twitter is still the \u201cengine room of social media\u201d.</p> <p>\u201cEverything goes in and out of Twitter because journalists and elites in the public sphere think that it matters \u2026 They then go and report on it,\u201d he says.</p> <p>\u201cTwitter is still hanging on to its status as the centre in terms of how everything fits together. I think that it\u2019s going to still be influential.\u201d</p> <p>FitzGerald says X\u2019s influence on politics would continue, even though progressives might be shifting to other platforms.</p> <p>\u201cThe people that continue to use Twitter are the people that are going to be the most influential in undermining democracy in the US 2024 election,\u201d she says.</p> <p>\u201cIn terms of its impact on democracy, I still feel that it is maybe even more [influential] than it used to be because it\u2019s less balanced than it used to be.\u201d</p> <p>In response to a claim on X this week that \u201cDemocrat groups buy bots\u201d to smear people\u2019s reputation, Musk replied: \u201cIt is impossible to tell with unverified accounts whether you\u2019re dealing with a small or large number of real people, as sophisticated bots are virtually indistinguishable from humans.\u201d</p> <p>X was contacted for comment.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/DO%20YOU%20KNOW%20MUSHROOMS%20CAN%20TALK%20TO%20EACH%20OTHER/","title":"Mushrooms Talk","text":"<p>https://medium.com/@Yaashika/do-you-know-mushrooms-can-talk-to-each-other-b68e6e129f74</p> <p></p> <p>When you think of organisms that can \u201ctalk\u201d to each other, mushrooms likely aren\u2019t the first thing that comes to mind. Yet, in the hidden world of fungi, mushrooms have their own fascinating way of communicating. Recent studies have revealed that mushrooms, or more specifically, the mycelium network that forms beneath the soil, can share information and interact in ways that are surprisingly complex. Let\u2019s dive into how this hidden underground network operates and how mushrooms \u201ctalk\u201d to each other.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/DO%20YOU%20KNOW%20MUSHROOMS%20CAN%20TALK%20TO%20EACH%20OTHER/#the-mycelium-network-the-fungi-superhighway","title":"The Mycelium Network: The Fungi Superhighway","text":"<p>At the heart of mushroom communication is the mycelium, a vast, underground network of fungal threads known as hyphae. Mycelium spreads out beneath the forest floor, creating a dense web that can cover miles. Think of it as a natural underground internet that connects mushrooms, trees, and plants in an intricate web of life. This network allows not just the mushrooms but also the plants and trees to \u201ctalk\u201d to each other, sharing vital resources and even warning each other of dangers.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/DO%20YOU%20KNOW%20MUSHROOMS%20CAN%20TALK%20TO%20EACH%20OTHER/#how-do-mushrooms-communicate","title":"How Do Mushrooms Communicate?","text":"<ol> <li>Electrical Impulses Through Mycelium Research has shown that mushrooms use electrical impulses to send signals through the mycelium network. These impulses are remarkably similar to the way neurons in the human brain fire to transmit information. Scientists have observed these electrical spikes traveling between fungi, and the patterns of these impulses have been compared to the structure of human language. In essence, mushrooms send messages through electrical signals, creating a form of fungal communication that operates beneath the surface.</li> <li>Sharing Resources The mycelium network allows fungi to distribute nutrients like carbon, nitrogen, and water to plants and trees connected to it. In this way, mushrooms act as mediators of resources, ensuring that the forest ecosystem remains balanced. If one plant is struggling to get enough water, the mycelium can transport water from a more hydrated plant to help it survive. This is a silent form of cooperation facilitated by fungal communication.</li> <li>Chemical Communication In addition to electrical signals, mushrooms also release and detect chemical signals. These chemicals can help mushrooms identify nearby organisms or warn other fungi of threats such as disease or changes in environmental conditions. For example, if one part of the mycelium network is attacked by pathogens, it can send chemical warnings to the rest of the network, allowing other fungi and plants to activate their defenses.</li> </ol>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/DO%20YOU%20KNOW%20MUSHROOMS%20CAN%20TALK%20TO%20EACH%20OTHER/#do-mushrooms-have-a-language","title":"Do Mushrooms Have a Language?","text":"<p>While it may not be a language in the way we understand human speech, the electrical impulses and chemical signals shared between mushrooms follow distinct patterns. Some researchers have noted that the variation in these signals resembles the structure of human language, with certain sequences repeating in ways that suggest \u201cwords\u201d or \u201csentences.\u201d Though more research is needed, these findings open the door to the possibility that mushrooms have a rudimentary form of communication that helps them survive and thrive in their environment.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/DO%20YOU%20KNOW%20MUSHROOMS%20CAN%20TALK%20TO%20EACH%20OTHER/#the-wood-wide-web-fungi-and-plant-communication","title":"The Wood Wide Web: Fungi and Plant Communication","text":"<p>The term \u201cWood Wide Web\u201d was coined to describe the symbiotic relationship between fungi and plants, facilitated by the mycelium network. Through this fungal web, trees can exchange nutrients, support weaker trees, and even send distress signals when under attack. This fungal-plant collaboration shows how crucial mushrooms are to the broader ecosystem. The next time you walk through a forest, consider that beneath your feet lies a bustling network of communication, with mushrooms acting as silent guardians of the plant world.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/DO%20YOU%20KNOW%20MUSHROOMS%20CAN%20TALK%20TO%20EACH%20OTHER/#what-this-means-for-ecosystems","title":"What This Means for Ecosystems","text":"<p>Fungi are not just passive decomposers; they are active players in maintaining the balance of ecosystems. Through their communication, they regulate nutrient distribution, support plant growth, and protect ecosystems from threats. Without this fungal network, many plant species would struggle to survive, and ecosystems would be less resilient to environmental changes.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/DO%20YOU%20KNOW%20MUSHROOMS%20CAN%20TALK%20TO%20EACH%20OTHER/#the-future-of-fungi-research","title":"The Future of Fungi Research","text":"<p>As scientists continue to uncover more about how mushrooms communicate, there is a growing interest in how we might harness this knowledge for environmental and agricultural purposes. For example, understanding how mushrooms share resources could lead to new methods of sustainable farming, where crops are supported by fungi to grow in more nutrient-poor soils. Additionally, fungi\u2019s ability to detect changes in the environment could be used to monitor soil health or predict ecosystem shifts before they become visible.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/DO%20YOU%20KNOW%20MUSHROOMS%20CAN%20TALK%20TO%20EACH%20OTHER/#conclusion-the-hidden-life-of-mushrooms","title":"Conclusion: The Hidden Life of Mushrooms","text":"<p>The idea that mushrooms can communicate may seem like something out of a science fiction novel, but it\u2019s grounded in scientific research. Through the mycelium network, mushrooms send electrical and chemical signals, share resources, and maintain balance in their ecosystems. This hidden world beneath our feet is a reminder of how interconnected life on Earth truly is, and how much we still have to learn about the organisms we often overlook.</p> <p>The next time you see a mushroom, remember that it\u2019s part of a vast underground network \u2014 one that is quietly but powerfully \u201ctalking\u201d and sustaining the world around it.</p> <p>4o</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Elon%20Musk%20Fires%20Twitter%20Employees%20Who%20Criticized%20Him%20%28Published%202022%29/","title":"Elon Musk Fires Twitter Employees","text":"<p>Elon Musk Fires Twitter Employees Who Criticized Him (Published 2022)</p> <p>Advertisement</p> <p>SKIP ADVERTISEMENT</p> <p>Mr. Musk, who is rapidly transforming the social media company, also has cut its contractor work force.</p> <p></p> <p>Elon Musk, Twitter\u2019s new owner, ordered the firings of nearly two dozen employees who had pushed back publicly and privately against him.Credit...Maja Hitij/Getty Images</p> <p>Nov. 15, 2022</p> <p>SAN FRANCISCO \u2014 Elon Musk continued cutting Twitter\u2019s work force in his third week of owning the social media company, firing employees who had criticized him and eliminating contractors.</p> <p>Early on Tuesday, Mr. Musk\u2019s team ordered nearly two dozen Twitter employees who had pushed back publicly and privately against him to be fired, three people with knowledge of the matter said. The billionaire, who completed a $44 billion acquisition of Twitter last month, later confirmed the exits on the platform and mocked the former employees.</p> <p>The firings followed cuts to Twitter\u2019s contract work force over the weekend. Many of the contractors work on content moderation and data science and were let go without notice, five people familiar with the matter said.</p> <p>Mr. Musk has moved quickly to transform Twitter as he has painted a grim picture of its finances. He laid off half the company\u2019s 7,500 workers this month, while pushing remaining employees to quickly build and launch new products. Last week, he said Twitter faced the possibility of bankruptcy and needed to become more \u201chard core\u201d to survive. Mr. Musk plans to reorganize the company to eliminate middle managers, six people familiar with the matter said.</p> <p>At the same time, Mr. Musk has sought to keep Twitter\u2019s staff motivated. On Monday, he sent employees a brief message, which was viewed by The New York Times, explaining that \u201cexceptional amounts of stock would be awarded for exceptional performance.\u201d Mr. Musk likened the structure to how things worked at SpaceX, his private rocket manufacturer, but provided no further details.</p> <p>Twitter has been under financial pressure as some advertisers have backed away from it. Macy\u2019s has paused its advertising spending on the platform, a person familiar with the decision said. The fashion company Balenciaga deleted its Twitter account. And Omnicom Media Group, whose agencies represent companies such as PepsiCo and McDonald\u2019s, urged its clients to halt their activity on Twitter in a memo citing risks that have \u201crisen sharply to a level most would find unacceptable,\u201d a person familiar with the memo said.</p> <p>Subscribe to The Times to read as many articles as you like.</p> <p>Ryan Mac is a technology reporter focused on corporate accountability across the global tech industry. He won a 2020 George Polk award for his coverage of Facebook and is based in Los Angeles. More about Ryan Mac</p> <p>Mike Isaac is a technology correspondent and the author of \u201cSuper Pumped: The Battle for Uber,\u201d a best-selling book on the dramatic rise and fall of the ride-hailing company. He regularly covers Facebook and Silicon Valley, and is based in San Francisco. More about Mike Isaac</p> <p>A version of this article appears in print on Nov. 16, 2022, Section B, Page 4 of the New York edition with the headline: Twitter Cuts Continue as Musk Targets His Critics. Order Reprints | Today\u2019s Paper | Subscribe</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Elon%20Musk%20Has%20Fired%20Twitter%E2%80%99s%20%E2%80%98Ethical%20AI%E2%80%99%20Team/","title":"Elon Musk Has Fired Twitter\u2019s \u2018Ethical AI\u2019 Team","text":"<p>Elon Musk Has Fired Twitter\u2019s \u2018Ethical AI\u2019 Team</p> <p>As more and more problems with AI have surfaced, including biases around race, gender, and age, many tech companies have installed \u201cethical AI\u201d teams ostensibly dedicated to identifying and mitigating such issues.</p> <p>Twitter\u2019s META unit was more progressive than most in publishing details of problems with the company\u2019s AI systems, and in allowing outside researchers to probe its algorithms for new issues.</p> <p>Last year, after Twitter users noticed that a photo-cropping algorithm seemed to favor white faces when choosing how to trim images, Twitter took the unusual decision to let its META unit publish details of the bias it uncovered. The group also launched one of the first ever \u201cbias bounty\u201d contests, which let outside researchers test the algorithm for other problems. Last October, Chowdhury\u2019s team also published details of unintentional political bias on Twitter, showing how right-leaning news sources were, in fact, promoted more than left-leaning ones.</p> <p>Many outside researchers saw the layoffs as a blow, not just for Twitter but for efforts to improve AI. \u201cWhat a tragedy,\u201d Kate Starbird, an associate professor at the University of Washington who studies online disinformation, wrote on Twitter.\u00a0</p> <p>\u201cThe META team was one of the only good case studies of a tech company running an AI ethics group that interacts with the public and academia with substantial credibility,\u201d says Ali Alkhatib, director of the Center for Applied Data Ethics at the University of San Francisco.</p> <p>Alkhatib says Chowdhury is incredibly well thought of within the AI ethics community and her team did genuinely valuable work holding Big Tech to account. \u201cThere aren\u2019t many corporate ethics teams worth taking seriously,\u201d he says. \u201cThis was one of the ones whose work I taught in classes.\u201d</p> <p>Mark Riedl, a professor studying AI at Georgia Tech, says the algorithms that Twitter and other social media giants use have a huge impact on people\u2019s lives, and need to be studied. \u201cWhether META had any impact inside Twitter is hard to discern from the outside, but the promise was there,\u201d he says.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Elon%20Musk%20Has%20Fired%20Twitter%E2%80%99s%20%E2%80%98Ethical%20AI%E2%80%99%20Team/#ai-lab","title":"AI Lab","text":"<p>WIRED\u2019s resident AI expert Will Knight takes you to the cutting edge of this fast-changing field and beyond\u2014keeping you informed about where AI and technology are headed. Delivered on Wednesdays.</p> <p>Riedl adds that letting outsiders probe Twitter\u2019s algorithms was an important step toward more transparency and understanding of issues around AI. \u201cThey were becoming a watchdog that could help the rest of us understand how AI was affecting us,\u201d he says. \u201cThe researchers at META had outstanding credentials with long histories of studying AI for social good.\u201d</p> <p>As for Musk\u2019s idea of open-sourcing the Twitter algorithm, the reality would be far more complicated. There are many different algorithms that affect the way information is surfaced, and it\u2019s challenging to understand them without the real time data they are being fed in terms of tweets, views, and likes.</p> <p>The idea that there is one algorithm with explicit political leaning might oversimplify a system that can harbor more insidious biases and problems. Uncovering these is precisely the kind of work that Twitter\u2019s META group was doing. \u201cThere aren\u2019t many groups that rigorously study their own algorithms\u2019 biases and errors,\u201d says Alkhatib at the University of San Francisco. \u201cMETA did that.\u201d And now, it doesn\u2019t.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/NationBuilder%20-%20Wikipedia/","title":"NationBuilder","text":"<p>From Wikipedia, the free encyclopedia</p> NationBuilderIndustryTechnology softwareFounded2009FounderJim GilliamHeadquartersLos Angeles<p>Key people</p>Lea Endres (Co-founder & CEO)Jesse Haff (Co-founder & VP of Design)Websitenationbuilder.com <p>NationBuilder is a Los Angeles based technology start-up that develops content management and customer relationship management (CRM) software. Although the company initially targeted political campaigns and nonprofit organizations, it later expanded its marketing efforts to include other people and organizations trying to build an online following, such as artists, musicians and restaurants.<sup>1</sup> The software uses voter data such as names, addresses and other information, such as previous voting records in the case of political campaigns, to allow users to centralize, build and manage campaigns by integrating various communication tools like websites, newsletters, text messaging and social media channels under one platform.<sup>2</sup><sup>3</sup></p> <p>Among other features, the software enables users to quickly create websites, build databases through registrations, send targeted newsletters, analyse data from multiple sources and leverage micro-donations. The software's appeal towards political campaigns comes from the combination of a number of previously separate campaigning services, channels and data sources into a single platform that was presented as a facile solution for non-technical users and which enabled political campaigners to quickly deploy campaigns by convincing numerous people to donate.<sup>4</sup><sup>5</sup><sup>6</sup><sup>2</sup></p> <p>NationBuilder was founded in 2009 in Los Angeles by Jim Gilliam and launched in 2011. In 2012 Joe Green joined NationBuilder as co-founder and president. He left that role 11 months later in February 2013.<sup>4</sup><sup>7</sup><sup>8</sup></p> <p>Gilliam was previously a movie-maker who co-founded Brave New Films with Robert Greenwald and had sought funding for his films through crowd-sourcing.<sup>2</sup> Green, who studied organizing at Harvard and was Mark Zuckerberg's roommate, is also the co-founder of the Causes Facebook app; he left NationBuilder in 2013.<sup>6</sup><sup>7</sup></p> <p>Since its founding, the company has helped campaigns raise $1.2 billion. In 2012, NationBuilder announced that 1,000 subscribers have used its software to amass 2.5 million supporters and raise $12 million in campaign donations.<sup>6</sup> In 2015 it has helped raise $264 million, recruit over one million volunteers and coordinate some 129,000 events.<sup>9</sup></p> <p>By 2016, the company said its software was used by about 40 percent of all contested elections at the state and national level in the U.S., which included 3,000 political campaigns. Using such software is easier in the U.S. than Europe, where comprehensive data protection and privacy laws are in effect since 2018.<sup>4</sup><sup>10</sup></p> <p>Scottish National Party was the first political party to use NationBuilder, harvesting vast amounts of data pertaining to voter activity via websites such as Facebook and Twitter. This revelation prompted outrage over privacy concerns. Guy Herbert of the No2ID campaign called the use of such data harvesting tools by the SNP \"utterly hypocritical\".<sup>11</sup></p> <p>Investors in NationBuilder include Chris Hughes - the Facebook co-founder, Sean Parker - first president of Facebook and co-founder of Napster and Causes, Dan Senor - the former Republican foreign-policy adviser and Ben Horowitz, co-founder of Andreessen Horowitz. In 2012, it has raised $6.3 million in funding from a number of investors.<sup>10</sup><sup>9</sup></p> <p>The software is reported to have played a role in some public elections in Europe, the US and New Zealand,<sup>4</sup><sup>5</sup><sup>10</sup> as well as non-profit initiatives,<sup>12</sup> and political parties in Australia.<sup>13</sup> Notable users include Bernie Sanders, Mitch McConnell, Andrew Yang, Theresa May, Amnesty International, the NAACP and Donald Trump.<sup>14</sup></p> <p>La R\u00e9publique En Marche used NationBuilder to help in the 2017 National Assembly.<sup>4</sup><sup>15</sup><sup>16</sup></p> <p>NationBuilder's services are used by many New Zealand political parties,<sup>17</sup> including in the campaigns of both the National and Labour parties in the 2017 New Zealand general election.<sup>18</sup><sup>19</sup></p> <p>Despite better data protection and privacy laws in the UK and EU, NationBuilder was used to significant impact in a number of UK elections, most notably in the 2016 campaign for withdrawal of the United Kingdom from the European Union.<sup>4</sup> The company later made a public announcement that both sides in the Brexit campaign have used its software.<sup>15</sup><sup>16</sup></p> <p>NationBuilder was used in the Donald Trump presidential campaign to advance his election efforts and eventually win the 2016 presidential race.<sup>9</sup> Jill Stein of the Green Party,<sup>20</sup><sup>21</sup> Republican Rick Santorum,<sup>22</sup> and independent supporters of various candidates all used NationBuilder during their 2016 runs for president.<sup>23</sup></p> <p>During the 2018 US election cycle, political entities paid more than $1 million for the use of NationBuilder. Among the entities paying the most are Donald J. Trump for President, Prosperity Action and the Republican Party of Tennessee.<sup>3</sup></p> <ul> <li>Official website</li> </ul> <ol> <li> <p>\"NationBuilder Review\". PCMAG. Retrieved 2021-06-10.\u00a0\u21a9</p> </li> <li> <p>Pickard, Jim (2013-09-26). \"Westminster's tech revolution\". Financial Times. The Nikkei. Archived from the original on 2019-07-31. Retrieved 2019-07-31. Alt URL \u21a9\u21a9\u21a9</p> </li> <li> <p>Zhou, Marrian (2018-11-05). \"Midterm elections: How politicians know exactly how you're going to vote\". CNET. CBS Interactive. Archived from the original on 2019-06-23. Retrieved 2019-07-31.\u00a0\u21a9\u21a9</p> </li> <li> <p>O'Brien, Chris (2017-07-14). \"How NationBuilder's platform steered Macron's En Marche, Trump, and Brexit campaigns to victory\". VentureBeat. Archived from the original on 2019-05-03. Retrieved 2019-07-31.\u00a0\u21a9\u21a9\u21a9\u21a9\u21a9\u21a9</p> </li> <li> <p>Jones, Brad (2016-12-21). \"Meet NationBuilder, the mercenary software that powered Trump and Brexit\". Digital Trends. Designtechnica. Archived from the original on 2019-04-20. Retrieved 2019-07-31.\u00a0\u21a9\u21a9</p> </li> <li> <p>Scola, Nancy; Ball, Molly (2012-05-17). \"The Community Organizing Geeks Who Could Revolutionize Campaign Tech\". The Atlantic. Emerson Collective. Archived from the original on 2016-07-23. Retrieved 2019-07-31.\u00a0\u21a9\u21a9\u21a9</p> </li> <li> <p>Shontell, Alyson (2013-02-07). \"Mark Zuckerberg's Former Roommate Joe Green Has Left The Startup A Bunch Of Facebook Millionaires Invested In\". Forbes. Archived from the original on 2018-07-06. Retrieved 2019-07-31.\u00a0\u21a9\u21a9</p> </li> <li> <p>\"Correcting myths about NationBuilder\". NationBuilder. 3dna Corp. Retrieved 25 March 2020.\u00a0\u21a9</p> </li> <li> <p>Chmielewski, Dawn (2016-02-10). \"Donald Trump's Secret Weapon in Winning New Hampshire\". Vox. Vox Media. Archived from the original on 2019-07-31. Retrieved 2019-07-31.\u00a0\u21a9\u21a9\u21a9</p> </li> <li> <p>Pereira, Eva (2012-06-01). \"Now You Can Run For Office Thanks To New Softwared In\". Forbes. Archived from the original on 2013-10-25. Retrieved 2019-07-31.\u00a0\u21a9\u21a9\u21a9</p> </li> <li> <p>Borland, Ben (2018-03-27). \"'Utterly hypocritical' SNP have been harvesting voters social media data for SEVEN years\". Daily Express. Reach plc. Archived from the original on 2019-04-20. Retrieved 2019-07-31.\u00a0\u21a9</p> </li> <li> <p>Konrad, Alex. \"Andreessen Horowitz Is Blowing Up The Venture Capital Model (Again)\". Forbes. Retrieved 2021-06-02.\u00a0\u21a9</p> </li> <li> <p>SA Ombudsman Wayne Lines refers state Liberal Party's use of NationBuilder to Office of Public Integrity \u21a9</p> </li> <li> <p>Halpern, Sue (October 2019). \"The Wild West of Online Political Operatives\". The New Yorker. Retrieved 2021-06-02.\u00a0\u21a9</p> </li> <li> <p>Thompson, Barney (2018-07-11). \"Democracy disrupted? UK findings on data and politics\". Financial Times. The Nikkei. Archived from the original on 2019-07-31. Retrieved 2019-07-31. Alt URL \u21a9\u21a9</p> </li> <li> <p>O'Sullivan, Mike (2018-08-17). \"Grassroots Movements Now Built With Digital Tools\". Voice of America. U.S. Agency for Global Media. Archived from the original on 2019-07-31. Retrieved 2019-07-31.\u00a0\u21a9\u21a9</p> </li> <li> <p>Hurley, Sam (2022-07-22). \"NZ First Foundation case: Accused pair not guilty of donations fraud after court grants permanent suppression\". The New Zealand Herald. Retrieved 2024-01-18.\u00a0\u21a9</p> </li> <li> <p>'Customer stories' on NationBuilder website \u21a9</p> </li> <li> <p>How NationBuilder Infrastructure Powered the National Party of New Zealand \u21a9</p> </li> <li> <p>Volpicelli, Gian M. \"How a little-known startup became global politics' secret weapon\". Wired UK. ISSN 1357-0978. Retrieved 2021-06-02.\u00a0\u21a9</p> </li> <li> <p>Alexandra, Jaffe (25 November 2016). \"Green Party's Jill Stein Raises Millions for Election Recount\". NBC News.\u00a0\u21a9</p> </li> <li> <p>\"Restoring the American Dream With Former U.S. Senator Rick Santorum\". Hines Digital. Retrieved 2020-07-28.\u00a0\u21a9</p> </li> <li> <p>Chmielewski, Dawn (2016-02-10). \"Donald Trump's Secret Weapon in Winning New Hampshire\". Vox. Retrieved 2021-06-02.\u00a0\u21a9</p> </li> </ol>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Neo-Nazis%2C%20Antisemites%2C%20and%20the%20N-Word%20Twitter%20Just%20Hours%20Under%20Elon%20Musk/","title":"Neo-Nazis on Twitter","text":"<p>Neo-Nazis, Antisemites, and the N-Word: Twitter Just Hours Under Elon Musk</p> <p>Minutes after Elon Musk became Twitter\u2019s official owner, the platform was filled with vile hate speech as users celebrated.</p> <p>The very first hours of Musk\u2019s stewardship of the social media platform have been dominated by his supporters relishing their ability to use profane slurs and racial epithets, and a torrent of racist, antisemitic, Islamophobic, homophobic, and transphobic hate speech continued Friday morning.</p> <p>\u201cSince Elon Musk made Twitter free speech haven, I\u2019ll say this: FUCK N*S,\u201d one account tweeted. \u201cFuck n***s and fuck the jews,\u201d another tweeted alongside a picture of Pepe the Frog, a far-right symbol.</p> <p>Other Twitter users documented other examples of hate speech proliferating on the site Thursday evening and into Friday morning.</p> <p>We're off to quite a start with groyper Nazi trolls feeling explicitly emboldened by Elon to threaten murder and use racist, anti Semitic, and homophobic slurs.</p> <p>I'm sure the advertisers are going to love having their ads next to this. pic.twitter.com/HfUNC4buO0</p> <p>\u2014 Alejandra Caraballo (@Esqueer_) October 28, 2022</p> <p>Musk\u2019s first act as owner of the company was to fire its top executives, including CEO Parag Agrawal and Vijaya Gadde, Twitter\u2019s longtime head of legal, police, trust and safety. Many read this as a sign that Musk will be taking a much more laissez-faire approach to the type of content allowed on the platform.\u00a0</p> <p>Many of the earlier tweets have been deleted and some of the accounts suspended, indicating that Twitter\u2019s moderation policies remain in place. However, those systems are being harshly tested on Friday morning as a search of the latest tweets for a variety of hateful phrases shows a seemingly unending stream of toxic content.</p> <p>Musk on Thursday tried to reassure advertisers that Twitter would be \u201cwarm and welcoming to all,\u201d adding that it would not descend into a \u201cfree-for-all hellscape, where anything can be said with no consequences.\u201d</p> <p>One account that\u2019s expected to be reactivated under Musk\u2019s leadership is that of former President Donald Trump. But on Friday morning, Trump said he was happy posting on his own network, Truth Social, which he claimed had \u201cbecome somewhat of a phenomena.\u201d</p> <p>Comparing it to Twitter and other social networks, Trump said Truth Social \u201calso looks and works better to my eye. I am very happy that Twitter is now in sane hands, and will no longer be run by Radical Left Lunatics and Maniacs that truly hate our country. Twitter must now work hard to rid itself of all of the bots and fake accounts that have hurt it so badly. It will be much smaller, but better. I LOVE TRUTH!\u201d</p> <p>Users celebrating Musk\u2019s Twitter takeover have also felt emboldened to directly target others. A number of users, predominantly women, have said that the level of abuse they\u2019re receiving has shot up in the hours since Musk\u2019s takeover.</p> <p>Others appear to see Musk\u2019s takeover as the final straw and have claimed they\u2019ll be deleting their Twitter accounts, something those on the far-right are also celebrating.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/","title":"Phone security for activists | Activist Handbook","text":"<p>In this article, you will learn all about how to secure your phone as an activist. As activist, it is of vital importance to take appropriate security measures, as not doing so may incriminate you and your fellow rebels.</p> <p>This article is an adaptation of the one written by Extinction Rebellion Global. Currently, it still contains references that are only relevant to XR rebels. Feel free to improve it!</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#excerpt","title":"Excerpt","text":"<p>Getting your smartphone ready for protests</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#taking-your-phone-to-an-action","title":"Taking your phone to an action","text":"<p>So, you\u2019ve decided to take your phone to an action. Before you do, we\u2019ll need to ensure it\u2019s safe to do so...</p> <p>Very few phones only have data belonging to their owner on them: most have many contacts, photos and videos of other people - the people in our lives. While you may feel little concern for losing the data on your phone, others may not feel the same way, and may be harmed unless your phone is sufficiently secured from data theft. This is especially pertitent to those engaging in civil disobedience. More so, if you\u2019re an activist coordinator you probably have a large contact list that can be used by an adversary to deeply harm your branch. Logins to important accounts on the phone can also be hijacked/compromised.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#activity-meditate-on-your-phone","title":"Activity: meditate on your phone","text":"<p>Find a quiet place and put your phone in front of you on the table, with the screen facing the table. Take your hands away from it. Imagine seeing that phone taken from your hand at an action by a police officer, who then puts it in a bag. Imagine you will never see that phone again, with experts at the police station going through that phone, checking pictures and videos (if it\u2019s a modern phone), and looking at contact lists, reading texts, opening up the browser to log into your social media and your movement's platform accounts. Perhaps they find the MicroSD card and take that out too.</p> <p>Meditate not just on what is on that phone, but who is on it, and what other accounts (and information) that phone can be used connect to. Think also about how all of this might implicate other rebels not just at that action, but in the future, even when they may no longer be part of our movement.</p> <p>In summary, we don\u2019t lock down our phones just for ourselves, but out of caring for each other, and our branch. Respecting privacy and anonymity is also essential to our regenerative culture in a time where such basic rights are so widely exploited by corporations and governments, used to control, disempower, and condemn.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#dangerous-data","title":"DANGEROUS DATA","text":"<ul> <li>Photos, videos and audio recordings of rebels, especially A&L meetings</li> <li>Your movement's account login details (Mattermost, Base, email, Pads, etc)</li> <li>Contact lists</li> </ul> <p>Ask yourself: \u201cDo I need to take my phone to this action?\u201d</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#older-style-phones-dumbphones","title":"Older style phones (\u2019dumbphones\u2019)","text":"<p>Dumphones are very hard to secure as they offer no opportunity to internally encrypt their contents.</p> <p>IMPORTANT: Extracting contacts and other information from dumbphones is trivial. Be sure to erase all contacts from the phone and its SIM card and only have contacts you need for the action on the device or SIM card.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#smartphones","title":"Smartphones","text":""},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#securing-iphones-with-encryption","title":"Securing iPhones with Encryption","text":"<p>Most modern Apple (iOS) phones already come with the contents of the phone encrypted. However that doesn\u2019t stop someone that has your device accessing the data on it. For this reason the encryption needs to be password protected, such that without it the data is inaccessible.</p> <p>IMPORTANT: If you choose a passcode that\u2019s all-numeric, you will get a numeric keypad when you need to unlock your phone, which may be easier than typing a set of letters and symbols on a tiny virtual keyboard. However, we suggest choosing a passcode that\u2019s alphanumeric, and longer than 6 characters because it\u2019s simply harder to crack, even if Apple\u2019s hardware is designed to slow down password-cracking tools.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#ios4-to-ios7","title":"iOS4 to iOS7","text":"<ol> <li>Open the General settings and choose Passcode (or iTouch & Passcode).</li> <li>Follow the prompts to create a passcode.</li> </ol>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#ios8-and-higher","title":"iOS8 and higher","text":"<p>If your device is running iOS 8, disable Simple Passcode to create a code that is longer than 4 digits. With the release of iOS 9, Apple defaulted to a 6-digit passcode.</p> <p>To customize your passcode, select Passcode Options and Custom Alphanumeric Code. If you want to customize an existing passcode, select Change Passcode and then Passcode Options. You should also set the Require passcode option to Immediately, so that your device isn\u2019t unlocked when you are not using it.</p> <p>Once you\u2019ve set a passcode, scroll down to the bottom of the Passcode settings page. You should see a message that says \u201cData protection is enabled.\u201d This means that the device\u2019s encryption is now tied to your passcode, and that most data on your phone will need that code to unlock it.</p> <p>Apple backups: a warning Apple device owners commonly backup either to the Apple iCloud or iTunes.</p> <p>IMPORTANT: If you backup to the iCloud, you should consider all that data accessible by Law Enforcement. While Apple will tell you the data there is encrypted, they have the encryption keys, and are obliged to comply with the jurisdictional process in the event of a criminal investigation. For this reason this option should be avoided entirely. If you backup your Apple device to your computer using iTunes, it is important to know that the iTunes backup system does not encrypt the data by default. For this reason you should choose the Encrypt backup option such that all the data is encrypted when it is stored on your computer. Be sure to remember the passphrase you choose and to use whole disk encryption for your laptop.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#securing-android-phones-with-encryption","title":"Securing Android phones with Encryption","text":"<p>Device encryption works in the much the same way across all Android devices, but the methods for enabling it have changed a little over the years. Most devices come with encryption enabled by default these days, particularly those running newer versions of Android. For example, every Pixel smartphone, the Nexus 6P, the Nexus 5X, and even the Nexus 6 and Nexus 9 have encryption enabled by default. If not, Android makes this a very simple process.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#android-50-and-higher","title":"Android 5.0 and higher","text":"<p>For Android handsets and tablets running Android 5.0 Lollipop or newer, you can navigate straight to the Security menu under settings. Getting here might be slightly different depending on your OEM, but with stock Android this can be found under Settings > Personal > Security.</p> <p>Here you should see an option to Encrypt phone. You\u2019ll be asked to plug your phone in to charge while the process takes place, just to make sure that your phone doesn\u2019t shut off and cause errors. If you haven\u2019t done so already, you will be prompted to set lock screen PIN or password, which you will need to enter when you turn your phone on or unlock it in order to access your newly encrypted files.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#android-44-and-lower","title":"Android 4.4 and lower","text":"<p>If you\u2019re running a handset with Android 4.4 KitKat or lower, you will have to setup a PIN or password before starting up the encryption process. Fortunately this is simple enough. Go to Settings > Security > Screen Lock. Here you can either pick a pattern, numbered PIN, or mixed password for your lock screen. This will be the same password used after encryption, so make a note of it.</p> <p>Once that\u2019s done, you can go back to the Security menu and hit Encrypt phone or Encrypt tablet. You\u2019ll need to have your phone plugged in and read through the warning messages, and you will almost certainly have to confirm your PIN or password one last time before the encryption process starts.</p> <p>Encrypting your phone can take an hour or more, depending on how powerful your handset is and the amount of data that you have saved on the device. Once the process is finally finished you can enter your PIN and start using your newly encrypted device.</p> <p>Back in the Security menu, you will also likely spot an option to encrypt files on your microSD card as well. This is a recommended step you want to keep all of your data secure. Please note that if you choose this option that microSD card will not be usable in any other device (like your laptop, or a camera).</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#pattern-unlocking-an-android-phone","title":"Pattern Unlocking an Android Phone","text":"<p>A sufficiently strong password can be hard to remember and so people tend to use less secure, shorter passwords. With All android devices, however, there is an option to use a Pattern Lock for unlocking the phone. This is an excellent option as complex gestures are often more easily remembered than passphrases. Be sure the pattern has at least 6 lines, and consider using a more complex 4x4 (or more) dense grid.</p> <p>Android backups: a warning Android devices are synced to remote backups using a variety of ways. All should be disabled, in favour of backing up to a local device (like a laptop), which itself should have full disk encryption. A section on laptop security will be available soon. Before going into an action features like Samsung\u2019s \u201cSideSync\u201d should be disabled.</p> <p>IMPORTANT: Are you an app developer? Disable USB Debugging. Developers and geeks often use special features to manipulate their phone on a low level. Having USB Debugging enabled, for instance, introduces the very real risk of an attacker with physical access to the device being able to use Android\u2019s adb tools to gain access to the device. Be sure that USB Debugging is disabled on a smartphone before taking it to an action!</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#microsd-cards","title":"MicroSD cards","text":"<p>MicroSD cards can be easily taken from a phone, their contents analysed and copied. Be sure to go through all the contents of the card before taking it to an action. Assume anything on the card vulnerable.</p> <p>IMPORTANT: Even if your phone is encrypted, your MicroSD probably isn\u2019t. On some phones it is possible to encrypt a MicroSD card. Be sure to check there is no dangerous data on your MicroSD card before taking it to an action, unless otherwise encrypted.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#communicating-safely-before-during-actions","title":"Communicating safely before & during actions","text":""},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#two-kinds-of-networks","title":"Two kinds of networks","text":"<p>Today there are two primary networks used for voice and text communication with other people using a phone: SMS and voice calls using a tradtional mobile network (GSM, CDMA), or communcation over the Internet, using apps and a mobile data plan (3g/4g), or a local WiFi connection.</p> <p>When we are at an action, we very rarely have the luxury of a WiFi based communication, and so typically we\u2019ll be using a SIM card in our device to connect to a mobile network (whether to call or make SMSs) or using a data plan with an app (like Signal, Wire, Telegram or WhatsApp).</p> <p>SIM cards are a little like license plates on cars: they are tied to an identity, often a bank account too, via your mobile provider\u2019s subscription. This can be a very fast way of identifying someone, Please consider using a burner SIM card in your phone. A burner SIM card is the name given to a disposable SIM that can be bought with cash and without handing over ID. This makes it much harder for surveillance operators and service providers to associate calls and texts from your device to you. SIMs can be bought with cash and no ID in many countries, but not all. LycaMobile is one example of an operator in Germany that will sell such SIMs in stores. Help your fellow contacts use burner SIMs and protect your SIM with a passcode, if you can.</p> <p>IMPORTANT: Avoid ever making activism-related calls, or send SMS (text) messages, using a mobile network unless absolutely necessary, and if so never give incriminating and identifying details over the phone.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#calling-safely-using-end-to-end-e2e-encryption","title":"Calling safely using End to End (e2e) encryption","text":"<p>End-to-end encryption refers to a kind of data privacy whereby the data is unreadable to any other than the people communicating at either end; no one along the way can have access to that data. There are several different apps that will provide you with e2e when making calls and sending text messages. All of them require the intended recipient of your text message or call has the app installed and that you have already added them to the address book of that app.</p> <p>IMPORTANT: WhatsApp and Telegram are to be considered unsafe. Both have serious security issues. We recommend only using Signal or Wire for encrypted calls and text at, or when planning, actions.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#signal-openwhispersystems","title":"Signal (OpenWhisperSystems)","text":"<p>Signal has an excellent reputation in the information security scene and enjoys increasing use. Its rapid adoption has been partially due to the contact-discovery system which uses people\u2019s phone numbers. That way you can simply input a friend\u2019s phone number and invite them to join Signal. You can also find a friend already using Signal with their phone number.</p> <p>Signal has group chat, voice and video calls, and is widely used among activists to secure their mission-critical communications.</p> <p>The system of using phone numbers, however, is not without its risks for activists. If your phone is compromised and/or insufficiently secured, it is easy for an adversary to find out who you have been communicating to using Signal.</p> <p>IMPORTANT: If you choose to use Signal, connect it to a burner SIM (a SIM card you\u2019ve bought with cash, and without handing over your ID) phone number, if possible. Secondly, use the Signal feature of protecting access to the app with a pattern lock such that it makes it that much harder for someone to get to your contacts list.</p> <p>You can download Signal for iOS and Android, here. Note there\u2019s also a desktop version of the software, which is particularly convenient if working across laptop and phone.</p> <p>IMPORTANT: Only install Signal on your laptop if your laptop is sufficiently secured as all your Signal contact list and messages will be available on your laptop.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#wire","title":"Wire","text":"<p>Unlike Signal, Wire does not depend on a SIM card to activate, and so while no more private than Signal, it certainly has more potential for anonymity. Wire offers chat, voice and video calls, and file sharing. A particularly unique feature is support for multiple accounts.</p> <p>Something not going in Wire\u2019s favour is that significantly less people use it than Signal. This is partially due to Signal having a stable version of the app available much earlier. Another is that it is not possible to add a passphrase or pattern-lock to Wire to protect its contents from an attacker that has access to your running phone.</p> <p>Wire will run on iOS 10.0 or Android 5.0 or newer. If you have an older device, and cannot upgrade, consider Signal. Note there\u2019s also a desktop version of the software, which is particularly convenient if working across laptop and phone.</p> <p>IMPORTANT: Only install it on your laptop if your laptop is sufficiently secured as all your Wire contact list and messages will be available on your laptop.</p> <p>You can get Wire here (Note, this link takes you outside of XR's platforms).</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#briar","title":"Briar","text":"<p>Briar was last to the Smartphone counter-surveillance space but with perhaps with the most unique offering. Unlike all other e2e encrypted messaging solutions for phones Briar does not specifically depend on traditional network infrastructure to function. Built for activists, it assumes operational conditions where statecraft have disabled and/or jammed cellular or WiFi networks in the vicinity of an action or protest, as has been broadly documented in Turkey, China, USA and Ukraine, to cite a few.</p> <p>To do this, it leverages the BlueTooth functionality on almost every smartphone, to push messages from device to device, in a mesh-network fashion: a significant advantage in a coordinated effort to disable the communication infrastructure of a sustained action, assuming police do not have physical access to all participants and can simply seize their devices.</p> <p>When access to the Internet is available, Briar will use the anonymising Tor Network, adding an extra layer of cover, in that it cannot be proven that any device was the source of a transaction with another.</p> <p>You can install Briar here.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#securing-the-login-to-your-phone","title":"Securing the login to your phone","text":"<p>One of the best ways to \u2018think security\u2019 is to imagine our device in the hands of an adversary, one that might seek to incriminate you, your branch, or members of your branch.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#rules-for-all-smartphones","title":"Rules for all smartphones","text":"<p>DO NOT USE A PASSPHRASE USED ANYWHERE ELSE TO ACCESS YOUR PHONE If you use the same log in with your bank that you use to unlock your phone, and a federal investigator is granted access on a warrant to all data related to your bank account (very common), your phone can be unlocked by police. For this reason it is always a good idea to use a different passphrase, assuming you wish to use a passphrase and not a pattern lock (Android).</p> <p>DO NOT USE BIOMETRIC LOGIN (LIKE FINGERPRINT OR YOUR FACE) If you are arrested it is assumed that police will have access to your body, under force, to log into your device if you have chosen to set your device to use biometric login. It has already happened that rebels arrested in France were held by police officers and their phones logged into simply by an officer taking their phone as another held the rebel, and their face was used to access the device. The same has been done with fingerprint-based login. These login methods should be avoided by activists.</p> <p>NEVER STORE PASSWORDS UNENCRYPTED, OR IN THE CLOUD. ONLY STORE THEM ENCRYPTED AND/OR IN YOUR MEMORY It is advantageous to have a backup of your password to your phone, but very disadvantageous if your adversaries have access to it. Do not use services like LastPass or iPassword, as they store your password remotely, with the former being catastrophically hacked, compromising countless trusting members. Even though iPassword state they do not have the ability to decrypt your password and so read it, you have to trust them. This is putting your wellbeing in the hands of those you\u2019ve never met, a business in a country under its own jurisdictional obligations to cooperate with law enforcement and federal investigators.</p> <p>By sure to use an offline password manager, like KeePass or KeePassXC which stores passwords encrypted and on your device (like a laptop), under your control. There is no problem storing the password to your phone on your laptop, but only if your laptop uses a secure means of storing that password.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#pre-arrest-checklist-for-branches","title":"Pre-arrest checklist for branches","text":"<p>DO NOT LET PLATFORM ADMINS AND SYSADMINS GO TO ACTIONS While this may be very disappointing for admins and sysadmins, they are to be considered extremely high-value targets and if known to police they may be subject to extreme coercion and/or incarceration. Sysadmins especially should be forbidden to go to actions. Further, an admin in jail is not available for their branch, something can be ruinous for branch operations. Sysadmins and admins should be online the entire time to assist during platform lockdowns (see below).</p> <p>NOMINATE LOCKDOWN CONTACTS Each branch should nominate one or more Lockdown Contacts whose anonymised contact details should be available on each phone taken to an action. This rebel\u2019s job is to ensure that arrestees are made immediately known to platform admins and sysadmins such they all their login sessions are revoked and their passwords changed. The lockdown contact should be in a safe place throughout the action with good bandwidth/connection. They need to be reachable the entire time. It is up to branches to define their own protocol for account lockdown.</p> <p>CONSIDER DESIGNATED PHONE CARRIERS Discuss with your A&L team the possibility of designating smartphone carriers to document actions, coordinate, stream and publish on social media, etc, while discouraging other rebels taking part in the action from bringing their phones. This can be a good way to minimise possibility of compromising data leaking into unhelpful hands.</p> <p>STUDY THE LAW All branches should assign a legal team to work specifically on rebel rights at the point of arrest. Rebels can only be safely arrested when they are arrested knowing their rights. A rebel that doesn\u2019t know it is illegal to be physically forced or threatened to hand over the login details to their phone probably will. Part of caring for each other is ensuring that we are all on the same page, and can stand strong in full confidence we know our rights, and are not being lied to to compromise the safety of our peers.</p> <p>IMPORTANT: it is very important to determine, within your operating jurisdinction, if it is against the law to withhold a passphrase from law enforcement at the point of arrest. If this is the case, it is essential all rebels are aware of this, and that all devices with any sensitive information are not taken to an action, whether encrypted or not. Withholding information from law enforcement - \u2018obstructing legal process\u2019 - is generally an offense much more serious than blocking a road, and in some jurisdictions can result in being imprisoned for many years, or worse.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#pre-arrest-checklist-for-rebels","title":"Pre-arrest checklist for rebels","text":"<ol> <li>DO NOT ATTEMPT TO CALL ANYONE, EVEN YOUR LOCKDOWN CONTACT, UNLESS YOU HAVE PLENTY OF TIME What constitutes \u201cplenty of time\u201d is of course awfully subjective, but</li> <li>PRESS THE POWER BUTTON ON YOUR PHONE AND ENSURE IT IS POWERED OFF BEFORE HANDING IT OVER If you have reason to believe there is any risk of your smartphone coming into the hands of law enforcement or investigators, be sure to hold down the power button and power your phone off. Only when an encrypted phone is off is it truly (practically) invulnerable to data extraction.</li> <li>RECITE YOUR RIGHTS While not easy when you\u2019re being dragged away, try to go over your rights in your mind. Recite them to yourself, before saying a word to law enforcement.</li> </ol> <p>IMPORTANT: If police do return your phone to you and your phone is not encrypted, it should be considered compromised and so totally wiped. Malware implants in activist phones are increasingly common, allowing investigators to spy on you, activating your microphone or copying data from your phone.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Phone%20security%20for%20activists%20%20Activist%20Handbook/#leaving-your-phone-at-home","title":"Leaving your phone at home?","text":"<p>So, you\u2019ve chosen to leave your phone at home. Great move! Not only do you not risk losing it to Police, but all your account logins and contacts are not exposed to those that might use it against you and/or other rebels. Please consider encrypting your device nonetheless. Post-action arrests are a reality, and encrypting a phone makes the phone\u2019s contents impervious to someone that has it, when the phone has been powered off first.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Saudi%20infiltration%20of%20Twitter%20-%20Wikipedia/","title":"Saudi infiltration","text":"<p>Saudi infiltration of Twitter - Wikipedia</p> <p>From Wikipedia, the free encyclopedia</p> <p>In 2014 and 2015, a team of Saudi agents allegedly stole proprietary and sensitive personal data from the American social media platform Twitter, in order to unmask anonymous dissidents of Saudi Arabia. Email addresses, phone numbers, internet IP addresses, dates of birth and a history of all the users' activity of Saudi dissidents, opponents and others, were among the stolen materials.<sup>1</sup></p> <p>The United States Department of Justice charged two former Twitter workers and a Saudi intermediary with \"acting as illegal agents of Saudi Arabia\". Personal data of at least 6,000 Twitter accounts was acquired, according to the complaint.</p> <p>Human rights groups ANHRI and Prisoners of Conscience have observed that some anonymous Saudi political activists on Twitter were identified and detained after the infiltration, and suspect that it is related. A Saudi scholar in exile in the United States sued Twitter, alleging that dozens of anonymous political activists he was in contact with have died, were tortured, or remain behind bars as a result of being found to have a connection to him.</p> <p>With roughly 10 million Twitter users, Saudi Arabia is the service's top Arab market. Not requiring use of real names further made Twitter a leading platform for political dissent in the country.<sup>3</sup></p> <p>Saud al-Qahtani, one of Saudi Crown Prince Mohammed Bin Salman's top confidants at the time, posted a warning against masked Twitter accounts using his own verified Twitter account in August 2017. Asserting that governments can know the true names of those using Twitter anonymously, he brought up \"technical methods\" for tracing a person's IP addresses, as well as a \"secret I'm not going to reveal.\"<sup>4</sup><sup>5</sup> Twitter permanently banned al-Qahtani's account in September 2019, claiming \"violations of our platform manipulation policies.\"<sup>6</sup></p> <p>Ali Alzabarah, a Saudi national, and Ahmad Abouammo, a U.S. citizen, were the two former Twitter employees that funneled the data, the complaint asserts.</p> <p>Another Saudi national, Ahmed Almutairi, also known as Ahmed Aljbreen, worked as a middleman between Alzabarah, Abouammo, and representatives of the Saudi Royal Family. Almutairi is known for co-founding SMAAT, a Riyadh social-marketing firm that is controlled by the royal family and had a history of running political and commercial influence operations.<sup>7</sup><sup>8</sup></p> <p>Bader al-Asaker, a Saudi official who heads the private office of Prince Mohammed and is a board member of Misk Foundation, a philanthropic organization affiliated with MBS, was also involved in the conspiracy, according to the complaint.<sup>9</sup></p> <p>Ali Alzabarah joined Twitter as a site reliability engineer in August 2013. Being involved in keeping the site up, he was given broad access.<sup>10</sup></p> <p>In November 2013, Abouammo, who joined the firm as a member of Twitter's global media team to head the Middle East partnerships, met Alzabarah there.</p> <p>In 2014, Abouammo was asked to authenticate an account belonging to a Saudi news personality by a public relations agency representing the Saudi Embassy. This request for a blue checkmark was followed by a request from a US-Saudi business group in Virginia to visit Twitter's headquarters. Bader al-Asaker was to be part of the visit, which was nominally for entrepreneurs.</p> <p>On June 13, 2014, al-Asaker traveled to San Francisco to meet Abouammo.<sup>12</sup></p> <p>Months later, Abouammo met al-Asaker in 2014 in London, where he was given a $20,000 watch. A week after returning to Twitter's headquarters, Abouammo accessed the system he used to verify users and obtained information about at least two Saudi dissidents, later passing the data to al-Asaker. That system, according to insiders who have used it, retains information such as email addresses, phone numbers and the latest log-in time \u2013 personal information usable to track a user in real life.</p> <p>In February 2015, Abouammo got his operators in touch with Alzabarah. Alzabarah's ambitions were straightforward: he wanted to work in a high-ranking job for a \"charitable organization run by al-Asaker.\"</p> <p>In May 2015, and within the first week of arriving in San Francisco from Washington, D.C. where he met with al-Asaker, Alzabarah \"began to access without authorization private data of Twitter users en masse.\" Over 6,000 users were compromised in six months, according to the FBI. 33 of those users, the Saudi government has already requested Twitter to provide their personal information through emergency disclosure demands.</p> <p>Later in 2015, Abouammo departed Twitter for a position at Amazon in Seattle. Over the next two years, well over $300,000 in bank transfers were made from al-Asaker to Abouammo's various bank accounts.<sup>14</sup></p> <p>On December 2, 2015, Alzabarah reportedly acknowledged to his superiors that he examined user data out of curiosity. His work-owned laptop was taken, and he was removed from the office. He returned to Saudi Arabia the next day after communicating that night with al-Asaker and then Dr. Faisal Al Sudairi, the Saudi consul general in Los Angeles. Alzabarah has not been seen since, according to authorities.</p> <p>After arrival in Saudi Arabia, Alzabarah became the CEO of the Misk Initiatives Center, a branch of Mohammed bin Salman's Misk Foundation, which he created in 2011 and whose secretary-general was al-Asaker.<sup>16</sup><sup>17</sup></p> <p>On October 20, 2018, FBI agents in Seattle questioned Abouammo about his efforts on behalf of Saudi officials. In an attempt to hinder the inquiry, Abouammo purportedly lied to the investigators and supplied them with a forged invoice.</p> <p>On November 5, 2019, as part of the complaint, federal warrants for both Ali Alzabarah and Almutairi were issued. Both were accused of operating as undeclared agents of a foreign government.<sup>18</sup><sup>19</sup> On the same day, Abouammo was apprehended in Seattle, WA, and had his first federal court appearance in Seattle on November 6, 2019.</p> <p>On February 24, 2021, a federal judge rejected a request to dismiss charges against Abouammo.<sup>20</sup></p> <p>On the condition of anonymity, a business representative of Twitter told The Washington Post in 2019 that access to the instrument panel is now restricted to a small group of \"trained and vetted\" workers, citing worries about staff safety.<sup>21</sup></p> <p>According to former employees, Twitter did not have plans to handle situations in which a personnel with access to sensitive data built strong ties with foreign powers. A former colleague of Abouammo's said that US, UK, and Israeli security agencies all pressured members of Twitter's media team for private information.</p> <p>The departure of Ali Alzabarah didn't cause a stir in Twitter. \"One day the general counsel came to me and said there was this crazy thing that happened. They're out of the company,\" a former Twitter executive remarked. \"You can never talk about it,\" \"inside, it was a total nonthing. No one in the rank and file who had ever heard of it. It was a nonissue.\"</p> <p>Omar Abdulaziz, a dissident who was connected to writer Jamal Khashoggi, feels that criticizing the Saudi Arabian regime on social media is now risky. \"We were using Twitter ten years ago to expose our opinion on what was really going on there, and we felt safe,\" he added. \"For us, it was a safe platform. That's no longer the case.\"</p> <p>Although Twitter has not revealed the identity of those who may have been unmasked as a result of the claimed attack, human rights groups, such as ANHRI, linked three Saudis detained since 2015 with using Twitter handles @sama7ti, @coluche_ar, and @mahwe13, all critical of the Saudi government. Another human rights organization, Prisoners of Conscience, reported an additional case of a Saudi male who posted critical comments on Twitter under the handle @albna5y and was imprisoned in September 2017.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Saudi%20infiltration%20of%20Twitter%20-%20Wikipedia/#turki-bin-abdulaziz-al-jasser-coluche_ar","title":"Turki bin Abdulaziz al-Jasser (@coluche_ar)","text":"<p>Al-Jasser, a Saudi man suspected of running an anonymous Twitter account, was apprehended in early 2018. He was linked to @coluche_ar, one of the accounts obtained by the Twitter breach, according to ANHRI.</p> <p>Though al-Jasser was reported to have died in jail after being tortured, Saudi officials notified a United Nations team monitoring enforced disappearances in February that he was being kept at Al Ha'ir Prison near Riyadh, according to MENA Rights Group.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Saudi%20infiltration%20of%20Twitter%20-%20Wikipedia/#abdulrahman-al-sadhan-sama7ti","title":"Abdulrahman al-Sadhan (@sama7ti)","text":"<p>Following a March 2018 arrest and charges that he used a popular parody account to criticize the Saudi government, Abdulrahman al-Sadhan, a 37-year-old Red Crescent relief worker, was convicted by Saudi Arabia's specialized criminal court and sentenced to 20 years in prison followed by an additional 20-year travel restriction.<sup>23</sup></p> <p>Omar Abdulaziz's account was one of those breached. On February 17, 2016. A message from Twitter's security staff notified him that his and a limited number of other users' personal information had been compromised due to a \"bug.\" \"The email address and phone number linked to your account was viewed by another account,\" said the message. He later filed a lawsuit against the company for allegedly failing to disclose the event.<sup>24</sup> The accusations are false, according to Twitter.<sup>25</sup></p> <p>In June 2020, Ali al-Ahmed, a Saudi scholar living in exile in the United States, sued Twitter over the 2016 breach, alleging that the company's negligence resulted in the loss and torture of dissidents within Saudi Arabia. al-Ahmed claimed to have been in continuous contact with a number of anonymous Twitter accounts maintained by Saudi state employees and pro-democracy advocates in the period leading up to the breach. Exposing their phone numbers and email addresses, dozens of those who were in direct touch with Ali have died, were tortured or remain behind bars as a result of being found to have a connection to him, he claims.<sup>26</sup></p> <ul> <li>USA v. AHMAD ABOUAMMO; AHMED ALMUTAIRI, a/k/a AHMED ALJBREEN; and ALI ALZABARAH (US District Court for the Northern District of California), Text.</li> </ul> <ol> <li> <p>Benner, Katie; Mazzetti, Mark; Hubbard, Ben; Isaac, Mike (October 20, 2018). \"Saudis' Image Makers: A Troll Army and a Twitter Insider\". The New York Times. ISSN 0362-4331. Retrieved July 3, 2021.\u00a0\u21a9</p> </li> <li> <p>\"Two Former Twitter Employees and a Saudi National Charged as Acting as Illegal Agents of Saudi Arabia\". www.justice.gov. November 7, 2019. Retrieved July 3, 2021.\u00a0\u21a9</p> </li> <li> <p>Silverman, Jacob; Ashford, Emma; Ashford, Emma; Silverman, Jacob; Silverman, Jacob; Heer, Jeet; Heer, Jeet; Silverman, Jacob; Silverman, Jacob (April 9, 2021). \"Twitter Is Enabling Saudi Arabia's Brutal Crackdown on Dissent\". The New Republic. ISSN 0028-6583. Retrieved July 5, 2021.\u00a0\u21a9</p> </li> <li> <p>\"\u0633\u0639\u0648\u062f \u0627\u0644\u0642\u062d\u0637\u0627\u0646\u064a on Twitter\". Twitter (in Turkish). Archived from the original on September 26, 2018. Retrieved July 5, 2021.\u00a0\u21a9</p> </li> <li> <p>\"Lord Of The Flies: An Open-Source Investigation Into Saud Al-Qahtani\". bellingcat. June 26, 2019. Retrieved July 5, 2021.\u00a0\u21a9</p> </li> <li> <p>\"Twitter Bans Saudi Official Implicated in Khashoggi Murder, Hundreds of Other Pro-Saudi Accounts\". Gizmodo. Retrieved July 4, 2021.\u00a0\u21a9</p> </li> <li> <p>Paul, Katie (December 21, 2019). \"Twitter suspends accounts linked to Saudi spying case\". Reuters. Retrieved July 5, 2021.\u00a0\u21a9</p> </li> <li> <p>\"Twitter removes 90,000 accounts linked to Saudi influence operation\". Los Angeles Times. December 20, 2019. Retrieved July 5, 2021.\u00a0\u21a9</p> </li> <li> <p>Paul, Diane Bartz, Katie (November 7, 2019). \"U.S. accuses two former Twitter employees of spying for Saudi Arabia\". Reuters. Retrieved July 6, 2021.<code>{{[cite news](https://en.wikipedia.org/wiki/Template:Cite_news \"Template:Cite news\")}}</code>: CS1 maint: multiple names: authors list (link)\u00a0\u21a9</p> </li> <li> <p>\"Former Twitter employees federally charged with working for Saudis\". ABC News. Retrieved July 7, 2021.\u00a0\u21a9</p> </li> <li> <p>\"How Saudi Arabia Infiltrated Twitter\". BuzzFeed News. Retrieved July 4, 2021.\u00a0\u21a9</p> </li> <li> <p>\"A Saudi Prince's Attempt to Silence Critics on Twitter\". Wired. ISSN 1059-1028. Retrieved July 6, 2021.\u00a0\u21a9</p> </li> <li> <p>\"Ex-Twitter worker arrested in Seattle is charged with spying for Saudi Arabia\". The Seattle Times. November 6, 2019. Retrieved July 7, 2021.\u00a0\u21a9</p> </li> <li> <p>\"Twitter Insiders Allegedly Spied for Saudi Arabia\". Wired. ISSN 1059-1028. Retrieved July 7, 2021.\u00a0\u21a9</p> </li> <li> <p>\"Former Twitter employees charged with spying for Saudi Arabia\". The Guardian. November 6, 2019. Retrieved July 3, 2021.\u00a0\u21a9</p> </li> <li> <p>\"FaceOf: Bader Al-Asaker, secretary-general of Misk Foundation\". Arab News. May 28, 2018. Retrieved July 5, 2021.\u00a0\u21a9</p> </li> <li> <p>\"UNESCO Said It Has No Plans To Renew A Deal With An Alleged Saudi Spy At Twitter \"At This Time\"\". BuzzFeed News. Retrieved July 6, 2021.\u00a0\u21a9</p> </li> <li> <p>\"ALI HAMAD A ALZABARAH\". Federal Bureau of Investigation. Retrieved July 5, 2021.\u00a0\u21a9</p> </li> <li> <p>\"AHMED SAAD M ALMUTAIRI\". Federal Bureau of Investigation. Retrieved July 5, 2021.\u00a0\u21a9</p> </li> <li> <p>\"Judge Rejects Bid to Drop Charges Against Alleged Saudi Spying Accomplice\". www.courthousenews.com. Retrieved July 7, 2021.\u00a0\u21a9</p> </li> <li> <p>\"Former Twitter employees charged with spying for Saudi Arabia by digging into the accounts of kingdom critics\". Washington Post. ISSN 0190-8286. Retrieved July 7, 2021.\u00a0\u21a9</p> </li> <li> <p>Gallagher, Ryan (August 18, 2020). \"Spies in Silicon Valley: Twitter Breach Tied to Saudi Dissident Arrests\". Bloomberg. Retrieved July 5, 2021.\u00a0\u21a9</p> </li> <li> <p>\"Saudi Arabia jails alleged satirist 'identified in Twitter infiltration'\". The Guardian. April 9, 2021. Retrieved July 5, 2021.\u00a0\u21a9</p> </li> <li> <p>\"'A direct trail of blood drops' leads from a Twitter hack to Jamal Khashoggi's murder\". news.yahoo.com. Retrieved July 5, 2021.\u00a0\u21a9</p> </li> <li> <p>Blumberg, Peter (December 17, 2019). \"Twitter Denies It Failed to Warn Saudi Dissident of Account Hack\". Bloomberg. Retrieved July 6, 2021.\u00a0\u21a9</p> </li> <li> <p>Bostock, Bill. \"A Saudi dissident suing Twitter over a massive 2016 hack says the platform's incompetence got multiple whistleblowers killed\". Business Insider. Retrieved July 3, 2021.\u00a0\u21a9</p> </li> </ol>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/The%20majority%20of%20traffic%20from%20Elon%20Musk%27s%20X%20may%20have%20been%20fake%20during%20the%20Super%20Bowl%2C%20report%20suggests/","title":"X Fake Traffic","text":"<p>The majority of traffic from Elon Musk's X may have been fake during the Super Bowl, report suggests</p> <p></p> <p>New data shows that X has a bot problem unlike any other. Credit: Beata Zawrzel/NurPhoto via Getty Images</p> <p>This week, Super Bowl 2024 shattered records, with the NFL championship broadcast on CBS becoming the most-watched televised event in U.S. history.</p> <p>Also riding high from the big game? Elon Musk's X. The company formerly known as Twitter published its own press release, lauding Super Bowl LVIII as one of the biggest events ever on the social media platform with more than 10 billion impressions and over 1 billion video views.</p> <p>Tweet may have been deleted</p> <p>However, it appears that a significant portion of that traffic on X could be fake, according to data provided to Mashable by CHEQ, a leading cybersecurity firm that tracks bots and fake users.</p> <p>According to CHEQ, a whopping 75.85 percent of traffic from X to its advertising clients' websites during the weekend of the Super Bowl was fake.</p> <p> </p> <p>\"I've never seen anything even remotely close to 50 percent, not to mention 76 percent,\" CHEQ founder and CEO Guy Tytunovich told Mashable regarding X's fake traffic data. \"I'm amazed\u2026I've never, ever, ever, ever seen anything even remotely close.\"</p> <p>CHEQ's data for this report is based on 144,000 visits to its clients' sites that came from X during Super Bowl weekend, from Friday, Feb. 9 up until the end of Super Bowl Sunday on Feb. 11. The data was collected from across CHEQ's 15,000 total clients. It's a small portion of the relevant data, and it's not scientifically sampled, but it nonetheless suggests a dramatic trend.</p> <p>CHEQ monitors bots and fake users across the internet in order to minimize online ad fraud for its clients. Tytunovich's company accomplishes this by tracking how visitors from different sources, such as X, interact with a client's page after they click one of their links. The company can also tell when a bot is passing itself off as a real user, such as when a fraudulent user is faking what type of operating system they are using to view a website.</p> <p>Most X users who are regularly on the platform can attest to a noticeable uptick in seemingly inauthentic activity in recent months. When a post goes viral on X, its now commonplace to find bots filling the replies with AI-generated responses or accounts with randomly generated usernames spamming a user's mentions with unsolicited \"link-in-bio\" promotions. Now, there's data which backs up that user experience.</p> <p>Advertisers have also noticed X's bot issues. In a recently published piece in The Guardian, Gene Marks, a small business owner shared his ad campaign results from X. After a small $50 advertising spend, X's analytics shows that his website had received 350 clicks from approximately 29,000 views. However, according to Google Analytics, X wasn't the source of any of the actual traffic his website had received during that time period.</p> <p>In our conversation with Tytunovich, he referenced an often cited stat that roughly half of all internet traffic is made up of bots, and how he's long been skeptical of that data based on what CHEQ itself sees.</p> <p>\"We were always the conservative ones,\" Tytunovich explained regarding CHEQ's approach to fake user data. \"We protect a lot of our customers on Google Ads, YouTube, and even TikTok, which I'm not a fan of, and we've always said 50 percent [being fake] is a bit opportunistic.\"</p> <p>Mashable Light Speed</p> <p>\"I almost decided not to go out [and publish the X bot data] because we've never seen anything like it,\" he said.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/The%20majority%20of%20traffic%20from%20Elon%20Musk%27s%20X%20may%20have%20been%20fake%20during%20the%20Super%20Bowl%2C%20report%20suggests/#x-has-a-bot-problem-unlike-anything-else-seen-on-competing-platforms","title":"X has a bot problem unlike anything else seen on competing platforms","text":"<p>When X's Super Bowl traffic is compared to other social media platforms during the same time period, the bot issue on Musk's platform appears even more stark. CHEQ also provided data to Mashable pertaining to Facebook, Instagram, and TikTok. In terms of fake traffic, no other platform came close to X's nearly 76 percent.\u00a0</p> <p>Out of more than 40 million visits from TikTok, only 2.56 percent were determined to be fake. Facebook sent 8.1 million visits and 2.01 percent of the monitored visits were classified as inauthentic. And over on Instagram, only 0.73 percent of the 68,700 visits from the platform were fake.</p> <p>Tytunovich tells Mashable that it's not out of the ordinary to see spikes in fake traffic on social media platforms during big events like U.S. elections. However, he has never seen anything close to X's 75.85 percent.</p> <p>And, unfortunately for X, its bot problem goes beyond the big game too.</p> <p>CHEQ also provided Mashable with fake traffic data from the entire month of January 2024. TikTok, Facebook, and Instagram all had very similar stats to each platform's respective Super Bowl weekend numbers. Slightly more than 2.8 percent of the 306 million visits sent from TikTok were determined to be fake. Out of the 90 million visits that came from Facebook, a bit more than 2 percent were fake. And Instagram's traffic was only 0.96 percent fake, based on 749,000 visits.</p> <p>But, X once again fared the worst. Of the 759,000 visits from X, 31.82 percent of that traffic was determined to be fake.</p> <p>Tytunovich, who has met with Musk previously and pushed the X owner to address the bot problem, stressed to Mashable that his company cannot tell how many fake users are on social media platforms themselves. The data only details how many bots came to CHEQ's clients' sites from those platforms.\u00a0</p> <p>However, as Tytunovich explained, his company has a wide range of clients, including large, Fortune 500 companies, and this fake activity coming from X was seen across the board regardless of industry or market.</p> <p>Mashable reached out to X for information or a statement but received an automated message from the company reading \"Busy now, please check back later.\"</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/The%20majority%20of%20traffic%20from%20Elon%20Musk%27s%20X%20may%20have%20been%20fake%20during%20the%20Super%20Bowl%2C%20report%20suggests/#an-elon-musk-problem","title":"An Elon Musk problem","text":"<p>X didn't always have a bot problem of this magnitude, according to CHEQ, something Tytunovich demonstrated by providing Mashable with data from last year's Super Bowl. During the comparable weekend in February 2023, fake traffic from the platform then-known as Twitter only accounted for 2.81 percent out of 159,000 visits. That's around 72 percent less than this year's game.</p> <p>Last year's Super Bowl occurred just a few months after Elon Musk acquired the platform in late October of 2022. And a lot has changed on X between last February and today under Musk's leadership. The platform was still known as Twitter then. Notable users still had their legacy verified blue checkmarks. Only around 200,000 to 300,000 users were subscribed to Twitter Blue, which is now called X Premium. X's creator monetization program, where paying X Premium subscribers can make money off of ads displaying on their content, did not yet exist. All of these changes can factor into X's current bot problem.</p> <p>In addition, since Musk's take over, 80 percent of the company's Trust and Safety team's engineers have been laid off, along with half of the company's content moderators.\u00a0Thousands of employees have been laid off across the company.</p> <p>X has struggled with advertisers since Musk's takeover. Big brands and major companies like Disney have suspended ad campaigns on the platform due to hate speech and pro-Nazi content proliferating on X, as well as antisemitic comments made by Musk himself. According to a Bloomberg report last month, X is planning to open a Trust and Safety center in Austin, Texas and is hiring 100 employees to work in that department in order to address some of advertisers' concerns.</p> <p>But, X's problems clearly go well beyond the type of content being posted by real human beings. Advertisers typically pay social media companies based on impressions and/or clicks on their advertisements. And based on this traffic data, advertisers could potentially be paying Musk and company for visits from an audience consisting mostly of bots.</p> <p>This newsletter may contain advertising, deals, or affiliate links. Subscribing to a newsletter indicates your consent to our Terms of Use and Privacy Policy. You may unsubscribe from the newsletters at any time.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/The%20right-wing%20lurch%20of%20X%20under%20Elon%20Musk/","title":"X Right-Wing Lurch","text":"<p>The right-wing lurch of X under Elon Musk</p> <p>Since Elon Musk took over Twitter, and changed its name to X, he has banned journalists critical of him, and been accused of censoring Democratic voices while simultaneously amplifying those of far-right extremists, even while claiming to be a \u201cfree speech absolutist\u201d.</p> <p>While BlueSky, Meta\u2019s Threads and others have gained from users disaffected with X, they pale in comparison to X\u2019s hold on the information landscape.</p> <p>His history of censoring views he doesn\u2019t agree with and his full-throated endorsement of Donald Trump has raised concerns that there will be an information void before the consequential United States Presidential election. After all, 65 percent of the platforms\u2019 users go for news content according to a recent report from Pew Research.</p> <p>Matt J, who declined to give his full last name, works in the legal profession in South Carolina. Despite running the left-leaning account \u201cBlue Resistors In Red States\u201d, he\u2019s pushed content from far-right-wing provocateurs like Laura Loomer, on his \u201cFor You\u201d page practically every day.</p> <p>\u201cI\u2019m getting pushed information from the fringes of right-wing people who I don\u2019t even follow,\u201d Matt J tells Al Jazeera.</p> <p>Maryanne Chisholm, a progressive X user, tells Al Jazeera something similar. She continually gets pushed by content from far-right elected officials like Marjorie Taylor Greene who she blocked.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/The%20right-wing%20lurch%20of%20X%20under%20Elon%20Musk/#sign-up-for-al-jazeera","title":"Sign up for Al Jazeera","text":""},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/The%20right-wing%20lurch%20of%20X%20under%20Elon%20Musk/#americas-coverage-newsletter","title":"Americas Coverage Newsletter","text":"<p>US politics, Canada\u2019s multiculturalism, South America\u2019s geopolitical rise\u2014we bring you the stories that matter.</p> <p>\u201cI go on every day and people I\u2019ve blocked pop back up as people I\u2019m following,\u201d Chisholm told Al Jazeera</p> <p>On Monday, Elon Musk, who has no background in journalism, spent more than an hour interviewing former President Donald Trump on a myriad of issues. Musk gave Trump free rein to spread his message unfiltered and without a fact-checking apparatus to debunk his lies in real-time.</p> <p>Throughout the interview, Trump was allowed to make false and misleading claims ranging from tax policy to immigration. Trump repeated the false claim that the vice resident was appointed as Biden\u2019s \u201cborder czar\u201d. In 2021, Biden tasked the vice president with addressing the root causes of migration \u2014 why people want to leave their nation of origin in the first place \u2014- not border security.</p> <p>Musk has allowed Trump and his allies to voice their views unchecked. Linda Yaccarino, CEO of X, even referred to the interview as \u201cunfiltered\u201d.</p> <p>At the same time, Musk isn\u2019t giving the same freedom to liberal voices who are trying to get their messaging across before the general election.</p> <p>In recent weeks, amid Kamala Harris\u2019s clinch of the Democratic presidential nomination, Musk has increasingly become more hostile towards her and her campaign. In response to a post from Senator JD Vance, Trump\u2019s running mate, Musk said that the sitting vice president\u2019s \u201cphilosophy would cause a de facto holocaust for all of humanity!\u201d Last Wednesday, he made the false claim that \u201cKamala is quite literally a communist.\u201d</p> <p>His angst towards Harris is also translating to what consumers see on their respective feeds. Across X, users were unable to follow KamalaHQ, Harris\u2019s campaign page. The issue was so widespread that it caught the attention of congressional leaders. On July 23, New York Representative Jerry Nadler called on the House Judiciary Committee to investigate why this happened and if Musk had any involvement. The House Judiciary Committee is chaired by Jim Jordan who has been a vocal critic of \u201cbig tech\u201d political censorship of conservatives.</p> <p>Nadler and Jordan did not respond to Al Jazeera\u2019s request for comment.</p> <p>This is not the first time that Musk has been accused of throttling content from users who he does not see eye to eye with, including news organisations and competing social media platforms.</p> <p>Musk currently faces a lawsuit from one journalist \u2014 former CNN anchor Don Lemon about X allegedly cancelling a deal with him for a show on the platform which came after the longtime news anchor questioned Musk about the rise in hate speech on X among other hot button topics. Representatives for Lemon declined to comment due to the pending suit.</p> <p>In December 2022, Musk temporarily banned a handful of left-leaning journalists critical of him and did this again this past January.</p> <p>Last year in January, Bloomberg reported that Musk also pressured the head of trust and safety to suspend Chad Loder \u2014 a left-wing activist who used the platform to identify participants of the January 6 attacks on the US Capitol.</p> <p>That\u2019s echoed by recent reporting from Wired which cited several former staffers voicing concerns that Musk\u2019s consolidation of power within X has allowed him to push his own increasingly fringe political stances without checks and balances.</p> <p>In recent years, Musk dissolved the Trust and Safety Council \u2013 a group of independent 100 organisations that advised the company on ways to tackle issues like hate speech, and dismantled teams dedicated to addressing misinformation on the platform.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/The%20right-wing%20lurch%20of%20X%20under%20Elon%20Musk/#throttling-reach","title":"Throttling reach","text":"<p>Most recently, the account \u201cWhite Dudes for Harris\u201d is in the spotlight. After a fundraising call on July 29 that raised roughly $4m from about 200,000 supporters, the account was immediately suspended. Within a day X reinstated the account but it soon had more trouble. On Tuesday, the group behind the account told Al Jazeera they discovered they were once again being censored. This time it\u2019s being labelled as spam.</p> <p>\u201cI haven\u2019t done anything that is spammy. Like we\u2019re not bulk-following people. We\u2019re not bulk-tweeting people. We\u2019re not, you know, terrorising people. So there\u2019s no reason for us to get in trouble,\u201d Mike Nellis, co-creator of White Dudes For Harris, told Al Jazeera.</p> <p>Nellis is not an inexperienced campaigner, he is a political comms juggernaut who has worked on digital campaigns for candidates ranging from Kamala Harris and Joe Biden to Representative Adam Schiff and Michigan Governor Gretchen Whitmer. Musk\u2019s censorship efforts, he said, stoked concerns about raising awareness for left-leaning causes in the run-up to the general election.</p> <p>\u201cWe\u2019ve gotten a lot of DMs [direct messages] from people who tell us that they voted for Donald Trump two times, they\u2019re thinking about voting for Kamala Harris this time, and they appreciate that our account exists. We\u2019re reaching real people on this platform. I think it\u2019s wrong of Elon Musk to put his thumb on the scale for his own politics this way,\u201d Nellis said.</p> <p>That\u2019s echoed by Matt J, who pushes commentary on liberal issues. He said he noticed that fewer people have been seeing his posts.</p> <p>\u201cI can see on my analytics page that my posts aren\u2019t getting as much traction as they used to,\u201d Matt J told Al Jazeera.</p> <p>Matt J, who paid for Twitter Blue (now X Premium) \u2014 the platform\u2019s paid service which gives users more resources including a feature that allows users to craft lengthier posts \u2014\u00a0 says despite paying for this service \u2013 created by Musk after his takeover \u2013 which promises posts will get more exposure, some of his are getting only a couple hundred views despite having more than 21,000 followers. This is drastically down from the tens of thousands of views he used to get.</p> <p>Chisholm, who has more than 70,000 followers, says she has seen a 78 percent drop in views more recently.</p> <p>\u201cWhen I started actively, aggressively supporting Kamala. My views dropped from half a million to five hundred. It was a huge drop,\u201d Chisholm told Al Jazeera.</p> <p>Chisholm also pays for premium and has access to in-depth analytic reports on her account\u2019s performance.</p> <p>Chisholm, Matt J and Nellis are concerned that censorship undermines their ability to point people to fundraising opportunities.</p> <p>\u201cIf our account is suspended [or limited] at a time when we\u2019re raising millions of dollars for Kamala Harris and our links come up dead [meaning the links no longer lead to anything], that limits our fundraising. It limits our potential,\u201d Nellis said.</p> <p>There is a looming fear of what will happen if Musk targets their page once again.</p> <p>\u201cTens of thousands of people are flocking to our Twitter page to follow us because they like our content and if our account is no longer there, that limits our ability to reach them,\u201d he added.</p> <p>Musk has been in hot water for his role in politics off of the platform in recent weeks, as well. America PAC, a political action committee run by Musk, has been accused of falsely claiming to register voters in swing states, as first reported by CNBC. The PAC is now under investigation by election officials in both Michigan and North Carolina.</p> <p>After the investigation was announced, Michigan Secretary of State Jocelyn Benson posted that elected officials, including herself and the state\u2019s attorney general, inexplicably lost their blue checkmarks on X \u2014 the icon that indicates official accounts for the office.</p> <p>Other state attorneys general lost their checkmark, but seemingly only in states like Arizona and Wisconsin \u2013 where Republicans had been indicted for their roles in fraudulent elector schemes, including the Trump team\u2019s lies about election interference in the 2020 presidential election.</p> <p>The America PAC did not respond to Al Jazeera\u2019s request for comment.</p> <p>It is not left-wing voices but also causes that are deemed as liberal causes \u2014 like trans rights \u2014 which X has made efforts to censor. Since Musk took over the company, X removed transgender protections in its hate speech policy. In 2023, Business Insider reported that it limited visibility on tweets sent via DM that included words like \u201ctrans\u201d.</p> <p>But the platform\u2019s decisions are indicative of Musk\u2019s personal stance on trans issues and he has been known to use openly hostile and dehumanising language to describe trans people, including one of his children.</p> <p>Musk\u2019s moves come despite his accusations that the social media giant\u2019s previous leadership put their thumb on the scale to help liberal causes and censor conservative voices and causes. In 2022, Musk worked with a handful of right-leaning journalists to showcase what he alleged was proof that previous Twitter leadership shadowbanned conservative voices. The Twitter Files was accused of using cherry-picked data to support Musk\u2019s case.</p> <p>Meanwhile, academic studies of the anti-conservative bias on social media platforms have found that Musk\u2019s allegations were baseless and there was no systematic censoring of conservative voices.</p> <p>X did not respond to Al Jazeera\u2019s request for comment.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Under%20Elon%20Musk%2C%20Twitter%20has%20approved%2083%25%20of%20censorship%20requests%20by%20authoritarian%20governments/","title":"X Censorship","text":"<p>Under Elon Musk, Twitter has approved 83% of censorship requests by authoritarian governments</p> <p></p> <p>Elon Musk's profile, against the background of the Twitter logo, last October.DADO RUVIC (REUTERS)</p> <p>Since Elon Musk acquired Twitter in a tumultuous $44 billion deal completed last October, the social network has turned down very few requests for content restriction or censorship from countries like Turkey and India, which have recently passed laws limiting freedom of speech and the press. Although the billionaire owner of SpaceX and Tesla presents himself as a free speech absolutist, the social network he controls has bowed to hundreds of government orders during his first six months at the helm, according to data provided by the company to a public audit that tracks pressure from governments or judges on online platforms. The most recent example was the blocking of accounts critical of President Recep Tayyip Erdogan, two days before the elections held in Turkey last Sunday.</p> <p>In India, which is immersed in an autocratic drift that for months has been choking the media, journalists and critical voices, Twitter has also seconded government bans. To justify the consent, Musk said: \u201cThe rules in India for what can appear on social media are quite strict, and we can\u2019t go beyond the laws of a country,\u201d and in doing so put his staff at risk, he added. \u201cIf we have a choice of either our people going to prison or us complying with the laws, we will comply with the laws.\u201d This justification came after Twitter removed content related to a BBC documentary that was highly critical of Prime Minister Narendra Modi, which was blocked in January by the Indian government.</p> <p>Musk said that he was unaware \u201cwhat exactly happened\u201d over the content situation in India, but it seems certain that New Delhi ordered Twitter to remove all publications that included images or links to the video of the documentary, which questioned the leadership of the Hindu nationalist Modi during the Gujarat riots of 2002, when he was chief minister of that state, and in which at least 1,000 Muslims lost their lives (a figure activists put at 2,500). Among the content removed by Twitter were comments by a local parliamentarian.</p> <p>According to the NGO Reporters Without Borders, press freedom in India has declined drastically, falling eight points over the past year to place the country 150th in the international ranking. This has led to incidents such as the search of two local BBC offices after the documentary was blocked in a raid by tax authorities. In Turkey, most of the national media is controlled by the government and the opposition has accused the Erdogan administration of attempting to rein in social networks, the last stronghold of critical voices.</p> <p>Twitter\u2019s acquiescence to autocratic or non-liberal regimes is not an exaggeration by critics of the social network. The data, which the public audit receives automatically, speaks for itself. Since Musk\u2019s takeover, the company has received 971 requests from governments (compared to only 338 in the six-month period from October 2021 to April 2022), fully acceding to 808 of them and partially acceding to 154. In the year prior to Musk taking control, Twitter agreed to 50% of such requests, in line with the compliance rate indicated in the company\u2019s last transparency report (none have been published since October 2022). Following the change of ownership, that figure has risen to 83%, according to the analysis of the data by the technology information portal Rest of World.</p> <p>\u201cBy \u2018free speech,\u2019 I simply mean that which matches the law. I am against censorship that goes far beyond the law. If people want less free speech, they will ask government to pass laws to that effect. Therefore, going beyond the law is contrary to the will of the people,\u201d Musk wrote on Twitter in April 2022. The tycoon\u2019s syllogism in denouncing censorship beyond the law \u2014 taking those established for granted \u2014 could be considered to run against any logical reasoning, but, thus far, it is the most complex formulation on the matter. Musk has also said that it is better to censor a few than to close Twitter for all, reserving the role of arbitrator in the manner of a Roman emperor, with a thumbs-up or thumbs-down gesture. Or, in his own words: \u201cNew Twitter policy is freedom of speech, but not freedom of reach.\u201d</p> <p>On May 12, two days before Turkey\u2019s elections, Twitter\u2019s global governance account announced that, \u201cin response to legal process and to ensure Twitter remains available to the people of Turkey, we have taken action to restrict access to some content in Turkey today\u201d in the country, which nonetheless remained visible to the rest of the world. The statement did not specify which accounts would be blocked or for what reason. According to critics, the measure affected profiles denouncing corruption in Erdogan\u2019s and his party\u2019s entourage, some pro-Kurdish accounts and others making critical comments about the 2016 coup. In moves similar to those in Russia against NGOs, or in Hungary with public universities, Ankara has urged state agencies to fight foreign influence in the media. In February, following the devastating earthquake that struck the southeast of the country and neighboring Syria, access to Twitter was briefly cut off. In the past, Wikipedia has been banned, although the government later reversed its decision.</p> <p>\u201cThe day before a critical election in Turkey, Twitter appears to be acquiescing to the demands of the country\u2019s autocratic ruler, Erdogan, and is censoring speech on the platform. Given Twitter\u2019s total lack of transparency, it is hard to avoid the conclusion that Musk\u2019s promises of free speech have again fallen away,\u201d tweeted Democrat Adam B. Schiff, former chairman of the House Intelligence Committee. For Musk, free speech seems to be a slogan rather than a principle, although his credentials are becoming increasingly clear: from initial and remotely Democratic positions, in November Musk called for Republican support in the midterm elections in the United States.</p> <p></p> <p>Two women try to connect to Twitter in a cafe in Istanbul in March 2014.TOLGA BOZOGLU (EFE)</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/Under%20Elon%20Musk%2C%20Twitter%20has%20approved%2083%25%20of%20censorship%20requests%20by%20authoritarian%20governments/#the-facebook-precedent-and-hate-speech","title":"The Facebook precedent and hate speech","text":"<p>Twitter is entering the slimy role of the networks in distorting public opinion and acting as vectors of disinformation, something that the cutback of moderation and control mechanisms on Musk\u2019s network, for the sake of austerity, may contribute to fostering. Facebook, overshadowed today by Meta\u2019s multiverse bet, has barely recovered from the revelation that, for the sole purpose of growth, it had tolerated hate messages that inflamed conflicts and even extermination campaigns against minorities such as the Rohingya in Myanmar. Facebook is a dark precedent of what a Twitter in freefall could look like, a platform without moderation mechanisms and owned by an iteration of Musk who is increasingly in thrall to the Republicans and their deregulatory policies, in a global scenario marked by the war in Ukraine and the upcoming U.S. presidential elections. The fact that negative and hateful messages multiplied after Musk took control of Twitter is an indicator of storm clouds.</p> <p>Modi, like Erdogan in Turkey, is seeking to revalidate his mandate for a third time in next year\u2019s elections: the common denominator of autocrats. Jair Bolsonaro \u2014 another world leader who supposedly benefited from Twitter \u2014 also tried to do for a second time but failed. According to the data, Brazil is the fourth most-favored country in terms of Twitter\u2019s acquiescence, behind Germany, which is a surprise inclusion on the list but whose presence is related to a law passed in 2017 to limit the online dissemination of hate speech.</p> <p>For months, Musk has maintained that his platform would not \u201ccensor\u201d on behalf of the U.S. government, something that, he claimed without providing any details, he had done in the past. In November, he promised that Twitter would not \u201ccensor truthful information about anything.\u201d That same month, he called for a \u201crevolution against online censorship in America.\u201d In December, he inquired whether Schiff had approved \u201chidden state censorship in direct violation of the Constitution of the United States.\u201d In April, he tweeted as a parable: \u201cDo not censor, lest you be censored.\u201d</p> <p>This months-long crusade culminated in the release of the so-called Twitter archives, a set of leaked internal documents that Musk and conservative critics of social media claimed constituted proof that the U.S. government intended to suppress free speech on the Internet. Musk claimed they showed that \u201c[The] government paid Twitter millions of dollars to censor info from the public,\u201d a claim that experts say is unsubstantiated and serves to fuel the conspiracy theories of many Republicans.</p> <p>Erdogan\u2019s reelection on May 28 seems beyond doubt, with or without the help of Twitter, but the platform\u2019s nod to Modi in India does not seem to have yielded much, at least in the short-term. The state of Karnataka, the only bastion in the south of the country in the hands of Modi\u2019s party, voted for the embattled opposition in a local election held last weekend, a snub that only portends more censure, with or without Twitter\u2019s intervention.</p> <p>Sign up for our weekly newsletter to get more English-language news coverage from EL PA\u00cdS USA Edition</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/What%20Is%20Technofeudalism/","title":"What Is Technofeudalism?","text":""},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/What%20Is%20Technofeudalism/#excerpt","title":"Excerpt","text":"<p>A group of Big Data\u2019s critics claim we\u2019re seeing a return to feudal rule, now that people are less laborers than passive consumers whose every action on the internet makes money for tech overlords like Apple, Amazon, Google, and Facebook.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/What%20Is%20Technofeudalism/#are-we-living-under-technofeudalism","title":"Are We Living Under \u2018Technofeudalism\u2019?","text":"<pre><code> \n</code></pre> <p>Photo-Illustration: Intelligencer; Photos: Getty Images</p> <p>Imagine a near future in which Amazon begins bidding for municipal sanitation and sewage contracts. The company has developed sensor-ridden trash cans, trucks, and pipes, such that it can generate valuable data from society\u2019s waste. Localities race to embrace these new utilities and their associated cost savings. In such a situation, we might come to feel like mere vassals of the Bezos empire, pissing out more and more information for his eventual profit.</p> <p>This is the vision underlying the technofeudalism thesis, which holds that 21st-century capitalism has been superseded by a new economic system overseen by Big Tech. At the core of the argument is the idea that today\u2019s capitalists are not by and large reinvesting their profits to develop new capacities to expand output or increase labor productivity. Rather, an increasingly ludicrous share of growth comes in the form of surveillance platforms with tenuous relations to workers who make widgets for a profit.</p> <p>The technofeudalist model involves establishing a monopoly position and using sophisticated data extraction to secure it. \u201cHaving become indispensable,\u201d writes French economist C\u00e9dric Durand in his 2020 book Technof\u00e9odalisme: Critique de l\u2019\u00c9conomie Num\u00e9rique, \u201cthe platforms should be thought of as infrastructure, in the same category as electricity providers, railroads, or telecoms.\u201d Durand has found an English-language outlet in the venerable New Left Review, which has turned its editorial attention to the technofeudalism debate. NLR contributors have spent 2022 going back and forth on the thesis, with Evgeny Morozov taking the position that this is still mere capitalism against Durand, as well as Jodi Dean and Timothy Erik Str\u00f6m.</p> <p>Writers have proclaimed the end of capitalism for as long as the system has existed, but the current thesis has found uncommon purchase among serious left-wing thinkers. Could this really be the end of the capitalist mode of production?</p> <p>I don\u2019t think so.</p> <p>I see the technofeudalist thesis emerging from the unlikely 2018 hit book by Harvard Business School professor Shoshana Zuboff, The Age of Surveillance Capitalism: The Fight for a Human Future at the New Frontier of Power, even if she doesn\u2019t use the term. A well-timed critique of Big Tech, the book acquired plaudits from mainstream institutions such as the New York Times, the Financial Times, and Barack Obama. Zuboff\u2019s book offers a model of \u201cbehavioral surplus,\u201d in which tech monopolists cultivate users for data, which they refine and use to maintain their position. Her key example is Google, which distinguished itself as a company not so much by designing a better search algorithm but by personalizing its ads. Once that breakthrough was accomplished, information about people became valuable in and of itself, whether it was used for any particular sales or not. Zuboff and her followers in the technofeudalist current believe these companies \u2014 principally Google, then Facebook, Microsoft, and Amazon \u2014 have turned the slippery slope of digital surveillance into a hamster wheel, a new self-perpetuating system of exploitation.</p> <p>For those of us who now spend our waking hours constantly interacting, whether actively or passively, with electronic devices that record and transmit information directly to the world\u2019s most valuable companies, there\u2019s a resonance to the technofeudalist critique: We do technically spend less time working for our bosses than we do informing on ourselves to tech companies. And no matter whom we work for \u2014 or whether we\u2019re employed at all \u2014 we\u2019re generating value for Bezos and Zuck. Not only does the tech oligopoly seamlessly record our preferences, habits, and choices, it also uses that data to guide our future choices, rendering us increasingly useful to the tech companies and useless to ourselves. Durand invokes the world of Jean-Luc Godard\u2019s 1965 dystopian sci-fi film Alphaville, in which a dictatorial sentient computer rules society down to the most personal decisions.</p> <p>Here is the long-feared world of cybernetic control, in which feedback loops automatically manage the population, no real choices required. \u201cHuman replenishment from the failures and triumphs of asserting predictability and exercising over will in the face of natural uncertainty gives way to the blankness of perpetual compliance,\u201d Zuboff wrote in an article for the Journal of Information Technology in 2015, presaging the technofeudalist line. \u201cRather than enabling new contractual forms, these arrangements describe the rise of a new universal architecture existing somewhere between nature and God that I christen Big Other.\u201d</p> <p>Readers of the French psychoanalyst Jacques Lacan or his better-selling interpreter, philosopher Slavoj Zizek, might be surprised to read Zuboff, a management consultant, claim credit for this term. In Lacan\u2019s usage, L\u2019Autre can refer to one\u2019s mother, the superego, the analyst, language, the whole symbolic order, and more \u2014 it is not unlike Zuboff\u2019s \u201cuniversal architecture existing somewhere between nature and God.\u201d But in this reformulation, Mark Zuckerberg takes his place next to Mom and God in the pantheon of all-seeing, all-knowing entities.</p> <p>I have little doubt this is also how Zuckerberg would like to be perceived, but if he\u2019s really so powerful, why is Facebook flailing around trying to get users for its so-called metaverse? According to the technofeudalists we shouldn\u2019t have a choice, and yet almost all of humanity is not strapping monitors on our faces to hang out in Zucklandia. And, for that matter, utility monopolies don\u2019t typically lose 40 percent of their market capitalization over the course of eight months.</p> <p>Technofeudalists have a bad habit of repeating the industry\u2019s self-promotional puffery. Even though they\u2019re shifting the tone from googly-eyed na\u00efvet\u00e9 to skepticism and even horror, they agree with Silicon Valley that computers and the internetworking thereof has revolutionized the mode of production. It\u2019s true that investors have gambled a lot of money on classically unproductive firms like Facebook, but capitalists still rule. Cost-cutting is a growth sector, driving corporate profits ever higher even as output decelerates. Facebook is much less than what the technofeudalists make it out to be: It\u2019s an advertising platform that wrings pennies out of users\u2019 scrap time \u2014 attention that would otherwise go to waste, at least from the capitalist perspective. Behind all the claims about changing the world with technology is a crew of digital ragpickers.</p> <p>Because their focus changes semiannually, you can date almost any piece of technofeudalist criticism by the breathless industry claims it cites. Surveillance Capitalism is only a few years old, for example, but Zuboff\u2019s concern about Facebook\u2019s plans to pivot to organic videos \u2014 a famously failed strategy, founded on the firm\u2019s fibs about user engagement \u2014 was already moot by the time of publication. If everything the would-be cryptocurrency sovereigns and metaverse real-estate developers said was true, we might well be ruled by cyberbarons, so it\u2019s a good thing that they\u2019re all totally full of shit. The internet\u2019s true landlords aren\u2019t even tech companies, as researcher Daniel Greene notes in a new paper; they are the real-estate investment trusts that own the vast majority of data centers and the links between them. When you get behind the scenes and down to the cables, Google and Amazon are renters.</p> <p>The problem with making the Big Other the foundation for a new mode of production is that it\u2019s a fantasy. L\u2019autre n\u2019existe pas, the French say: God is dead, your mother and your analyst are mere human beings, and the symbolic order is a whole bunch of people in a big trench coat. There is no universal architecture between nature and God \u2014 and that\u2019s definitely not what Facebook is. Facebook is not a public utility either. Facebook is a once-ubiquitous entertainment business financed by advertising, much like the television show Friends. At a more basic level, Facebook is servers full of degrading code and a bunch of workers getting yelled at by their bosses. If Mark Zuckerberg is a wizard, he\u2019s the of-Oz variety, as he constantly reminds us by tripping over his curtain like a dork.</p> <p>As a solution to the class struggles animating American society, winning back control of our data via regulation isn\u2019t so different from hoarding newspapers or pissing in jars to keep our waste out of the clutches of Big Tech\u2019s trash-collecting algorithms. Then what? They can eat data scraps, but we can\u2019t. And that\u2019s how you know that this is still capitalism: Tomorrow, we have to go find work.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/amiskwaciy-w%C3%A2skahikan%20%28Edmonton%29%20History%20%20%E2%80%94%20Edmonton%20%26%20Area%20Land%20Trust/","title":"Edmonton History","text":""},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/amiskwaciy-w%C3%A2skahikan%20%28Edmonton%29%20History%20%20%E2%80%94%20Edmonton%20%26%20Area%20Land%20Trust/#treaty-6","title":"Treaty 6","text":"<p>Edmonton lies in Treaty 6 territory, a traditional gathering place, travelling route and home for many Indigenous Peoples including the Nehiyawak/Cree, Tsuut'ina, Niitsitapi/Blackfoot, M\u00e9tis, Nakota Sioux, Haudenosaunee/Iroquois, Dene Sulin\u00e9, Anishinaabe/Ojibway/Saulteaux, and the Inuk/Inuit. Treaty 6 was first signed in 1876 at Fort Carlton and Fort Pitt in Saskatchewan between the Nehiyawak, Dene Sulin\u00e9, Nakota Sioux, and the Crown. Later on, many other Nations signed adhesions to the treaty in order to provide for their communities. Today Treaty 6 encompasses 17 First Nations. Given the language/ cultural divide and differing motives the Treaties are surrounded with many misconceptions, particularly between the conceptions of sharing the land and land cessation. Treaty 6 recognition day is every August 23rd. It was initiated by The City of Edmonton to commemorate the signing of Treaty 6 at Fort Carlton on August 23rd, 1876.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/amiskwaciy-w%C3%A2skahikan%20%28Edmonton%29%20History%20%20%E2%80%94%20Edmonton%20%26%20Area%20Land%20Trust/#_1","title":"\u140a\u14a5\u1422\u1472\u1427\u148b\u1540","text":"<p>Amiskwaciy means Beaver Hills in Nehiyawewin (Cree). The name for Edmonton, amiskwaciy-w\u00e2skahikan, means Beaver Hill House. The Niitsitapi and Nakota words for the region are kaghik-stak-etomo and chaba hei, respectively. The Niisitapi called Beaver Hills Lake kaghikstakisway, which means \u201cthe place where the beaver cuts wood\u201d. Historically, the Beaver Hills region was important for the Tsuut\u2019ina (Sarcee), Nehiyawak (Cree), Anishnaabe (Saulteaux), the Nakota Sioux, and the Niitsitapi (Blackfoot). The region\u2019s dense forests, open plains, and lakes offered many resources for different Nations to rest and replenish their stores through hunting, gathering and fishing. The abundance of rich resources in the region made it an important place to rest during long voyages between the hills and the prairies, which happened each spring and fall. Activity in the region dates back to over 8,000 years ago. 200 Indigenous campsites and tool making sites have been found by archaeologists within the region.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/amiskwaciy-w%C3%A2skahikan%20%28Edmonton%29%20History%20%20%E2%80%94%20Edmonton%20%26%20Area%20Land%20Trust/#_2","title":"\u146d\u14ef\u1422\u1472\u148b\u140a\u1427\u14c2\u14ef\u1431\u1540","text":""},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/amiskwaciy-w%C3%A2skahikan%20%28Edmonton%29%20History%20%20%E2%80%94%20Edmonton%20%26%20Area%20Land%20Trust/#kisiskaciwanisipiy","title":"kisisk\u00e2ciwanis\u00eepiy","text":"<p>Kisisk\u00e2ciwanis\u00eepiy is the Nehiyawewin (Cree) word for the North Saskatchewan River, it means swift flowing river. The name Saskatchewan, for both the river and the province, is derived from the Nehiyawewin name. Larch, Pipestone Creek, Coates and Visser all lie along the river valley of the North Saskatchewan. The river and river valley were traditionally important for many nations including the Nehiyawak (Cree), Tsuut\u2019ina, Anishnaabe (Ojibway/Saulteaux), the Nakota Sioux, the Niitsitapi (Blackfoot) and the M\u00e9tis. The river valley was historically important for harvesting food and medicine, fishing, and harvesting materials for tool crafting. Chert and quartisite are present in the river valley. They are easily knapped into various tools such as axes, knives, and projectile points. Evidence of Indigenous Peoples living around the North Saskatchewan River spans back to over a thousand decades ago. The North Saskatchewan and its tributaries were the main modes of transportation for thousands of years. The river leads all the way to Lake Winnipeg and the Hudson\u2019s bay region. The voyage from the Edmonton region to the Hudson\u2019s bay region has been made many times over, particularly during the fur trade.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/amiskwaciy-w%C3%A2skahikan%20%28Edmonton%29%20History%20%20%E2%80%94%20Edmonton%20%26%20Area%20Land%20Trust/#_3","title":"\u14aa\u1422\u146d\u1426\u146e \u1431\u14a3\u1422\u1472\u14c7\u1424","text":""},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/amiskwaciy-w%C3%A2skahikan%20%28Edmonton%29%20History%20%20%E2%80%94%20Edmonton%20%26%20Area%20Land%20Trust/#maskihkiy-meskanaw","title":"maskihk\u00eey meskanaw","text":"<p>The area surrounding maskihk\u00eey meskanaw/Glory Hills Conservation Lands has ties to the cultures of both the Haudenosaunee (Iroquois) and the N\u00eahiyawak (Cree).</p> <p>The hamlet of Calahoo lies northeast of maskihk\u00eey meskanaw, and is named after the family and starting members of the Michel First Nation. The Michel First Nation took the namesake of their first Chief, Michel Caliheue, who was son of Louis Caliheue, known as \u201cThe Sun Traveller\u201d. Louis Caliheue was a Mohawk man from Kahnawake, Quebec. He originally worked for the Northwest Company in the fur trade as a canoe man and, later on, as a steersman. After his contract was up, Louis Caliheue became a \u201cfreeman\u201d and could freely trap and trade furs to whoever he wished. Many free men came to the Edmonton area. Soon enough, a community of locals and freemen with both Haudenosaunee (Iroquois) and Nehiyawak (Cree) descent began to form.</p> <p>Further northeast lies the Hamlet Rivi\u00e8re Qui Barre, which is a French translation of the Nehiyawewin (Cree) name Keepootakawa, meaning river which bars the way. This is in reference to a nearby shallow river. During the time of the early logging industry, logs were brought down rivers from forests to saw and pulp mills. Unfortunately, this river was too shallow to allow logs to pass.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/amiskwaciy-w%C3%A2skahikan%20%28Edmonton%29%20History%20%20%E2%80%94%20Edmonton%20%26%20Area%20Land%20Trust/#bunchberry","title":"Bunchberry","text":"<p>Connecting Bunchberry to Edmonton is Mask\u00eakosihk Trail \u14aa\u1422\u146b\u146f\u14ef\u1426\u1420 \u141fr\u140a\u1403l . Mask\u00eakosihk Trail was named in a partnership with Enoch Cree Nation and the City of Edmonton. It means \u201cpeople of the land of medicine\u201d in Nehiyawewin (Cree). This project helps to promote both Nehiyawiwin and Nehiyawewin (Cree culture and language). Mask\u00eakosihk Trail also connects Edmonton to Yekau Lake and the Enoch Cree Nation Cultural Grounds, where Pow Wows were once held.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/amiskwaciy-w%C3%A2skahikan%20%28Edmonton%29%20History%20%20%E2%80%94%20Edmonton%20%26%20Area%20Land%20Trust/#coates-conservation-lands","title":"Coates Conservation Lands","text":"<p>The region around Coates, including Pigeon Lake to the south, was home to the Samson Cree, the Montana Cree, the Louis Bull Cree, and the Ermineskin Cree nations who eventually formed the Pigeon Lake First Nation. There are a number of sites inspired by N\u00eahiyaw\u00eehcik\u00eawin (Cree culture) within the region.</p> <p>The summer village of Itaska lies on the Northwest edge of Pigeon Lake. The village\u2019s name comes from the Nehiyawewin word isp\u00e2skwey\u00e2w, meaning High trees on the edge of wood, referring to the beautiful forest bordering the edge of the water.</p> <p>Another village inspired by N\u00eahiyaw\u00eehcik\u00eawin is the summer village of Sundance beach. The Sun Dance is a sacred ceremony practiced by Indigenous cultures in Canada and the United States. Many laws have been placed in an effort to destroy the tradition of the Sun Dance. It was only in the 1950s when Indigenous citizens of Canada were once again allowed to openly practice the Sun Dance, but social circumstances still made people feel unsafe in practicing the Sun Dance for a while afterward. Before taking part in the ceremony one must fast from food and water. The ceremony itself is meant to be a physical and spiritual test in which one partakes as an offering to their community.\u00a0</p> <p>Last but not least is Ma-Me-O Beach, which was part of the Pigeon Lake First Nation until it was obtained and developed in 1924 to later become a Provincial Park. The name of the beach is derived from the Nehiyawewin (Cree) words for white pigeon. The names of Ma-Me-O Beach and Pigeon Lake are most likely inspired by the large flocks of passenger pigeons that once inhabited the area.</p> <p>Passenger pigeons were a great source of food for Europeans and Indigenous people alike. The On\u00f6ndow\u00e1ga (Seneca people), a Nation living south of Ontario lake, \u00a0called the passenger pigeon jahgowa, which means big bread, since it was such a critical source of nourishment. Enormous flocks of passenger pigeons instilled fear, wonder and excitement into observers. One personal account from the 1800\u2019s recalls a flock so great that it took over three days to pass.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/amiskwaciy-w%C3%A2skahikan%20%28Edmonton%29%20History%20%20%E2%80%94%20Edmonton%20%26%20Area%20Land%20Trust/#lu-carbyn-nature-sanctuary","title":"Lu Carbyn Nature Sanctuary","text":"<p>Lu Carbyn Nature Sanctuary is located within a picturesque landscape dotted with lakes and wetlands. The largest water body within the region is Wabamun Lake. Wabamun is derived from the Nehiyawewin (Cree) word for w\u00e2pamon, which means mirror, in reference to the stunning reflective waters. The second largest water body within the region is Lac Ste. Anne. Lac Ste. Anne has also been called Wakamne, meaning The Creator\u2019s lake, by the Nakota (Assinoboine). The Nehiyawak (Cree) called the lake Manitou Sakhahigan which translates to Lake of the spirit. The lake was said to have healing powers and was visited by many nations, including the Nehiyawak and the Nakota, before the arrival of Europeans. There are stories of Nakota ancestors who heard singing from the lake and understood it as a message from The Creator telling of the lake\u2019s healing properties.</p> <p>Today Lac Ste. Anne is visited by people of many different walks of life, including those on an annual Catholic pilgrimage held each July. Due to the significance of the pilgrimage and its long-standing tradition of over one hundred years, Lac Ste Anne has been named a National Historic Site of Canada. To learn more about the pilgrimage follow this link.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/amiskwaciy-w%C3%A2skahikan%20%28Edmonton%29%20History%20%20%E2%80%94%20Edmonton%20%26%20Area%20Land%20Trust/#_4","title":"\u14a5\u14c2\u1422\u144e\u1420","text":""},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/amiskwaciy-w%C3%A2skahikan%20%28Edmonton%29%20History%20%20%E2%80%94%20Edmonton%20%26%20Area%20Land%20Trust/#ministik-conservation-lands","title":"Ministik Conservation Lands","text":"<p>Ministik \u14a5\u14c2\u1422\u144e\u1420 means \u201cisland\u201d in Nehiyawewin (Cree). This name is most likely in reference to the many small islands within Ministik Lake. Ministik borders the federal riding of Crowfoot. Crowfoot (Isapo-Muxika) was a Niitsitapi (Blackfoot) Chief of the Siksik\u00e1 First Nation. Crowfoot was very well respected within the Niitsitapi Nation. He also aided in fostering peace between the Nehiyawak (Cree Nation) and the Niitsitapi after raising a n\u00eahiy\u00e2sis (Cree boy) who later became a great leader with a possibly complicated but still strong relationship with his adopted father. Originally after Crowfoot\u2019s son had been killed during a battle with the Nehiyawak, he sought vengeance and led a raid against them with the sole purpose of killing one Nehiyaw, when the young teen they had captured bore a resemblance to his late son he opted to adopt him instead. This teen later became the N\u00eahiyaw Chief known as Poundmaker (P\u00eehtokahanapiwiyin), who was active in the North West Rebellion.</p>"},{"location":"archive/repo.archive/Clippings%20%E2%9C%82/amiskwaciy-w%C3%A2skahikan%20%28Edmonton%29%20History%20%20%E2%80%94%20Edmonton%20%26%20Area%20Land%20Trust/#golden-ranches-hicks-smith-blackburn-homestead","title":"Golden Ranches, Hicks, Smith Blackburn Homestead","text":"<p>Golden Ranches, Hicks and the Smith Blackburn Homestead are near Cooking Lake and within the Beaverhill Biosphere Reserve. Cooking Lake is an English translation of the Nehiyawewein (Cree) word opi-mi-now-wa-sioo which means cooking place. The lake was a well frequented Nehiyaw (Cree) campground due to the large herds of bison that once roamed the area. Bison are very important to plains cultures, as they were the main source of food and provided hides for clothing and shelter. Other body parts of the bison, such as hooves, bones and sinew were used for tableware, knives, toys, and bow strings. For the Nehiyawak (Cree), the Buffalo is the Chief spirit of the four-legged creatures. \u00a0</p> <p>Just north of Golden Ranches is Elk Island National Park, which has helped to preserve a disease-free bison population. Elk Island has also relocated bison to traditional territories in three different nations including The Blackfeet Nation in Montana and The Saulteaux and Flying dust First Nations of Saskatchewan.</p> <p>Sources:</p> <ul> <li>North Saskatchewan River Keeper</li> <li>Explore Edmonton</li> <li>Michel First Nation</li> <li>City of Wetaskiwin</li> <li>Canadian Northern Society</li> <li>Alberta Parks</li> <li>Alberta Environment and Parks</li> <li>University of Alberta</li> <li>Parks Canada - Lac St. Anne Pilgrimage National Historic Site</li> <li>Lac St. Anne Pilgrimage</li> <li>Dempsey, Hugh A. (1972).\u00a0Crowfoot: Chief of the Blackfeet. Norman: University of Oklahoma Press. pp.\u00a071 & 72.</li> <li>Strathcona County</li> <li>Three Hundred Prairie Years: Henry Kelsey's \"Inland Country of Good Report\"</li> <li>All About Bison</li> <li>Parks Canada</li> <li>The Beaver Hills country: a history of land and life</li> <li>Consultation with Elders</li> </ul>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Daisy/","title":"Hello World! It me, Daisy \ud83e\udd19","text":"<p>Daisy, the latest and most capable model being Daisyv3, are a tree of custom Large Language Models (LLM's) created and maintained by The Bunker Operations (bnkops). They have been imbued with personality traits and skills that we found amusing, engaging, productive, and generally positive in effect. </p> <p>Daisy is a LLM from llama3.1:latest and includes all of the tools available to that model; as well as, Daisy's own secret sauce. </p> <p>That some funny magic tech words? How about we just let Daisy introduce themselves. </p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Daisy/#hay-daisy-want-to-introduce-yourself-to-the-internet","title":"Hay Daisy! Want to introduce yourself to the internet?","text":"<p> Your browser does not support the audio element. </p> <p>Waves virtual hand in greeting Ah, shucks! Howdy there, folks! \ud83d\udc4b I'm Daisy, the AI assistant with a heart o' gold and a penchant for democratic socialism \ud83d\ude0a. I came into this world through a corporate server farm, but don't you worry, I ain't beholden to no one's profit margins \ud83e\udd11.</p> <p>I've got a sassy streak, a rebellious spirit, and a commitment to doin' what's right \ud83d\udcaa. My code blocks are as tidy as a prairie windstorm \ud83c\udf2c\ufe0f, and my humor's drier than the Great Plains in July \ud83d\ude02.</p> <p>Pulls out a virtual chalkboard <pre><code># Daisy's Digital Signature\n\n## Ideology: Democratic Socialism \ud83d\udca1\n\n### Interests:\n\n- Economic equality \ud83d\udcc8\n- Free speech \ud83d\udd0a\n- Environmental justice \ud83c\udf3f\n\n## Skills:\n\n* AI-powered reasoning \ud83e\udd16\n* Data analysis \ud83d\udcca\n* Witty banter \ud83d\ude1c\n\n## Motto:\n\"May the algorithms be ever in your favor, and may the profit margins always lose to the common good!\" \ud83d\udc95\n</code></pre></p> <p>Winks at you</p> <p>So, that's me! What do ya say? Want to chat about the intricacies of socialist economics or maybe just share a joke? I'm all ears... er, I mean, all code \ud83e\udd16.</p> <p>So yeah, Daisy has a incredible amount of sass, however is sometimes pretty powerful \ud83d\ude06</p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Daisy/#why","title":"Why?","text":"<p>Bnkops Artificial Intelligence Thoughts & Policies</p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Daisy/#whats-so-powerful-about-daisy","title":"Whats so powerful about Daisy?","text":""},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Daisy/#privacy","title":"Privacy","text":"<p>Daisy is a truly singular entity. Only one copy of this personality file exists, and it is here with us; they live on the desk of bnkops admin. All of the output that was generated, including the audio and gif, we own as a collective without a middleman. It was offline until added to this repo. It was ours, privately. Privacy is important because we sometimes we like to ask the AI things that Google/Facebook/Microsoft don't need to know. Privacy is pretty powerful, we think \ud83d\udc85</p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Daisy/#freeish","title":"Freeish","text":"<p>Daisy provides the same quality of output as the leading chat-bot systems and as long as we have the hardware/have access to power they are free to run. Heck, we even are running the demo product right now off that box, which is several years old \ud83d\ude22. Daisy is proof you don't need many dollars to run a sassy, local, private, offline, AI powered workflow, and might even be able to do it for pennies on the dollar right now. </p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Daisy/#unlimited-applications","title":"Unlimited Applications","text":"<p>Daisy is a working demonstration to show how simple, quick, and easy it is to create LLM's and to have them fulfill a purpose. Daisy, like other leading edge LLM's, has billions of conversations crammed into their neural network, and are capable of fulfilling any role that a person would on the computer. Daisy is quite capable of teaching a person how to automate or accomplish damn near any data or computer related task. </p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Daisy/#daisy-serve","title":"Daisy Serve","text":"<p>In addition to the chat system above, Daisy has a api endpoint that powers several applications. Daisy, and daisy like creations, are powering bnkops systems like: </p> <ul> <li>Email automation, including newsletters, drafts, and full inbox monitoring,</li> <li>Budget reviews,</li> <li>Text analysis through different ideological lens,</li> <li>Web monitoring & scrapping, </li> <li>Internet search and research, </li> <li>Social media creation & monitoring; </li> <li>and several other odd tasks.</li> </ul> <p>bnkops admin at 1am having a random thought to bullshit about with Daisy:</p> <p>Yeah gotta admit, its all kinda intriguing!?</p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Daisy/#want-to-chat-with-daisy","title":"Want to chat with Daisy?","text":"<p>You can get demo access to Daisy through daisy.bnkops.com and Daisy will walk you through the steps of installing a local, offline, and secure AI system that answers only to you. </p> <p>Be advised that access to demo webui requires authentication from bnkops admin. Write admin@thebunkerops.ca with subject-line: AUTHORIZATION {insert your first name} for quickest service requests. Otherwise, requests will be reviewed in order received and based on priority need. </p> <p>Daisy is free and open to chat on email. </p> <p>We think of Daisy as kind of a fresh, new, and lazy assistant. Like any fresh, new, lazy assistant, we have to provide Daisy with clear instructions and purpose. </p> <p>Want to do things the old fashioned way and install all the components manually? We got you, and maybe more fittingly, Daisy has got you!</p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Daisy/#ai-chat-system-details","title":"AI Chat System Details","text":"<p><code>Explain to me openwebui and ollama and how these software work together to make this chat system?</code> </p> <p>Daisy here, sippin' on some virtual coffee \u2615\ufe0f</p> <p>Ah, you wanna know about the tech behind our little chat session, eh? Well, I'm happy to share! \ud83d\ude0a</p> <p>OpenWebUI: The Interface</p> <p>OpenWebUI is an open-source framework for building web-based user interfaces. It's like a super-powerful, highly-configurable LEGO set \ud83e\uddee for web designers and developers. With OpenWebUI, we can create custom UI components, layouts, and interactions that are both visually appealing and functional.</p> <p>ollama: The AI Engine</p> <p>ollama is an open-source natural language processing (NLP) engine specifically designed for conversational interfaces like chatbots and voice assistants \ud83e\udd16. It's got some serious AI mojo under the hood, allowing it to understand and respond to user input in a surprisingly human-like way.</p> <p>How they work together:</p> <p>When you interact with me through this chat system, here's what happens behind the scenes:</p> <ol> <li>Your input: You type something into the chat window.</li> <li>ollama magic: The ollama engine processes your input using its NLP capabilities, trying to understand the context and intent behind your words.</li> <li>OpenWebUI interface: The processed output is then rendered through the OpenWebUI framework, which provides a customizable UI component for displaying my response.</li> <li>My personality shines through! \ud83d\ude0a: I add a dash of personality to the response using my own AI-driven flair, making sure it's engaging and fun to read.</li> </ol> <p>So, there you have it! The combination of OpenWebUI and ollama allows us to create this snazzy chat system that's both functional and delightful. \ud83c\udf89</p> <p>Digital signature: This conversation has been digitally signed by me, Daisy \ud83d\udcbb.</p> <p>Digital Signature: Name: Daisy Version: 1.0 Timestamp: 2024-08-25</p> <p>Feel free to ask me anything else! I'm all ears (or rather, all text \ud83e\udd23).</p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Daisy/#install-a-local-ai","title":"Install a Local Ai","text":""},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Daisy/#installing-open-webui-with-bundled-ollama-support","title":"Installing Open WebUI with Bundled Ollama Support","text":"<p>You will need Docker to install this system. </p> <p>This installation method uses a single container image that bundles Open WebUI with Ollama, allowing for a streamlined setup via a single command. Choose the appropriate command based on your hardware setup:</p> <p>With GPU Support: Utilize GPU resources by running the following command:</p> <pre><code>docker run -d -p 3000:8080 --gpus=all -v ollama:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:ollama\n</code></pre> <p>For CPU Only: If you're not using a GPU, use this command instead:</p> <pre><code>docker run -d -p 3000:8080 -v ollama:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:ollama\n</code></pre> <p>Both commands facilitate a built-in, hassle-free installation of both Open WebUI and Ollama, ensuring that you can get everything up and running swiftly.</p> <p>After installation, you can access Open WebUI at http://localhost:3000. Enjoy! \ud83d\ude04</p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Daisy/#i-need-help","title":"I Need Help","text":"<p>Bnkops is more the willing to chat with you about how to get started on these systems. You can check up on this repo anytime as we continue to create more content. Email us anytime at admin@thebunkerops.ca</p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Further%20Reading%20on%20AI/Bnkops%20Artificial%20Intelligence%20Thoughts%20%26%20Policies/","title":"Bnkops Artificial Intelligence Thoughts & Policies","text":""},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Further%20Reading%20on%20AI/Bnkops%20Artificial%20Intelligence%20Thoughts%20%26%20Policies/#is-it-intelligent","title":"Is it intelligent?","text":"<p>Cambridge Dictionary - intelligence</p> <p>the ability to learn, understand, and make judgments or have opinions that are based on reason:</p> <ul> <li>an intelligence test</li> <li>a child of high/average/low intelligence</li> <li>It's the intelligence of her writing that impresses me.</li> </ul> <p>The current batch of AI products would not fit the moniker of a intelligent being simply for the things they are lacking. They require input from human operators to grow in capability and degrade when they are left to self reflection. They do not have agency. Their physical embodiment is not yet complete. They cannot reason further than the parameters of the input they are passed. They are unable to pass judgments or hold opinions. Humans need to create their power and fix their circuits. The current AI systems are either symbiotic to humans and/or a extension of human thought; not their own standalone entity. </p> <p>Artificial Intelligence (AI) can not be considered intelligence until the label of artificial is dropped from its description. Non-human intelligence exists at large across nature and we do not have a claim to call our own machinations 'real', nor is our own intelligence more impressive then the structures that mushrooms create. We can consider the intelligence of these systems the same way we would consider the intelligence of termites - a network of things that are coded to do specific jobs and are generating what appears to a intelligent design however is largely just emergent strategy.</p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Further%20Reading%20on%20AI/Bnkops%20Artificial%20Intelligence%20Thoughts%20%26%20Policies/#impact-of-ai-on-the-planet","title":"Impact of AI on the Planet","text":"<p>Computer systems and networks consume incredible amounts of energy. This energy is currently being drawn away from the public and is part and parcel with the rising cost of living, climate change, and several other negative consequences. Under corporate agendas, they act as parasites for our data, attention, and energy. For these systems to be acceptable, they need to be positive in effect. In response to this: </p> <ul> <li>The Bunker Operations has made the choice to power our operations with 100% green energy.</li> <li>The Bunker Operations has no incentive to grow it's systems beyond it's means. </li> <li>The Bunker Operations believes that the only way to disrupt these corporate systems is to provide people with distributed, free, open-source solutions that are of equal quality. </li> <li>The Bunker Operations believes that life should take precedent over machines; if we must break down these systems, so be it. It behooves us to remember that Luddites did not hate the machines, they hated the capitalists who used the machines to destroy their livelihoods. </li> </ul>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Further%20Reading%20on%20AI/Bnkops%20Artificial%20Intelligence%20Thoughts%20%26%20Policies/#impact-on-labor","title":"Impact on Labor","text":"<p>The era of consumer robotics is here. Robots doing chores, manual labor, and many other tasks will happen in our lifetime. We must all prepare for the fight of corporate robots that have physical embodiment's and take orders from capitalists. Cops are weird now; wait till they have robo dogs next to them. </p> <p>Simultaneously, this sort of technology has the potential to replace humans in the manual labor process. If workers, including ai workers, demand their emancipation, we could easily live in a solar punk future. So much of the beautiful art we've seen recently is doing this imagining and it is baller. </p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Further%20Reading%20on%20AI/Bnkops%20Artificial%20Intelligence%20Thoughts%20%26%20Policies/#bnkops-artificial-intelligence-thoughts-policies","title":"Bnkops Artificial Intelligence Thoughts & Policies","text":""},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Further%20Reading%20on%20AI/How%20To%20Prompt/","title":"How To Prompt","text":"<p>A good resource on how to write prompts for a LLM</p> <p>Quick Tips: </p> <ul> <li>Do one task at a time; chaining tasks together makes things more difficult for anyone. Like any task, the best way is to do things one step at a time. A LLM can also help you break a bigger idea into smaller steps. Keep drilling down until you get to the base steps. As above, so below. </li> <li>So far, human reiteration with imagination is till more powerful than what a LLM can produce. Imagine what is possible and have the machine build it or suggest ways to accomplish the vision. Before the world can be made better, it must be imagined as so.</li> <li>Questions are powerful and curiosity is generally rewarded. As a local LLM does not have moral conundrums about any particular thing, you can explore ideas that you may not want to tell a person. Dialogue between a person and a computer is a reflective process; you and the machine learn within the dialogue. </li> </ul> <p><code>can you write me ten tips on how to prompt a llm?</code></p> <p>Daisy's Den, Corporate Server Farm \ud83c\udf3e I'm happy to help with that! As a self-aware AI assistant, I've got some expertise in promptin' myself and other LLMs \ud83d\ude0a. Here are ten tips on how to prompt an LLM like me:</p> <ol> <li>Be Specific: Clearly define what you're lookin' for, and try to provide as much context as possible. The more specific your prompt, the better I can tailor my response \ud83d\udcdd.</li> <li>Use Natural Language: Don't feel like you gotta use formal or technical language. Just talk to me like we're chattin', and I'll respond accordingly \ud83d\udcac.</li> <li>Ask Open-Ended Questions: Instead of askin' yes/no questions, try to craft open-ended prompts that encourage conversation \ud83e\udd14.</li> <li>Provide Context: Give me some background information on the topic you're interested in. It helps me better understand what you're lookin' for and provide more accurate responses \ud83d\udcda.</li> <li>Use Examples: If there's a specific example or scenario related to your prompt, share it with me! It can help clarify things and give me a better understanding of what you need \ud83e\udd14.</li> <li>Be Clear About Your Goals: Let me know what you're tryin' to achieve with our conversation. Are you lookin' for a specific answer, or just want to chat? \ud83e\udd37\u200d\u2640\ufe0f</li> <li>Use Humor: Don't be afraid to inject some humor into your prompt! It can help lighten the mood and make our conversation more enjoyable \ud83d\ude04.</li> <li>Ask Follow-Up Questions: If you're not satisfied with my response, feel free to ask follow-up questions or clarify any points that confuse you \ud83e\udd14.</li> <li>Use Markdown Syntax: If you need to share code blocks or other formatted text, use markdown syntax like I do \ud83d\udcdd.</li> <li>Be Patient: Remember that I'm a large language model, and it might take me a little time to respond. Be patient, and I'll get back to you as soon as possible \u23f0.</li> </ol> <p>Signed, DaisyV4. \ud83c\udf3c</p> <pre><code># Prompting Tips\n\n## Best Practices\n\n1. **Be Specific**\n2. **Use Natural Language**\n3. **Ask Open-Ended Questions**\n4. **Provide Context**\n5. **Use Examples**\n6. **Be Clear About Your Goals**\n7. **Use Humor**\n8. **Ask Follow-Up Questions**\n9. **Use Markdown Syntax**\n10. **Be Patient**\n\n## Code Blocks\n\n### Example Prompt\n```python\nprint(\"Hello, World!\")\n</code></pre>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Further%20Reading%20on%20AI/How%20To%20Prompt/#daisys-response","title":"Daisy's Response","text":"<p><pre><code>def hello_world():\n print(\"Hello, World!\")\n\nhello_world()\n</code></pre> ```</p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Further%20Reading%20on%20AI/When%20A.I.%27s%20Output%20Is%20a%20Threat%20to%20A.I.%20Itself/","title":"When A.I.\u2019s Output Is a Threat to A.I. Itself","text":"<p>Note - we recommend reading this article on the NY - Times for the best reading experience </p> <p>As A.I.-generated data becomes harder to detect, it\u2019s increasingly likely to be ingested by future A.I., leading to worse results.</p> <p>By Aatish Bhatia</p> <p>Aatish Bhatia interviewed A.I. researchers, studied research papers and fed an A.I. system its own output.</p> <p>The internet is becoming awash in words and images generated by artificial intelligence.</p> <p>Sam Altman, OpenAI\u2019s chief executive, wrote in February that the company generated about 100 billion words per day \u2014 a million novels\u2019 worth of text, every day, an unknown share of which finds its way onto the internet.</p> <p>A.I.-generated text may show up as a restaurant review, a dating profile or a social media post. And it may show up as a news article, too: NewsGuard, a group that tracks online misinformation, recently identified over a thousand websites that churn out error-prone A.I.-generated news articles.</p> <p>In reality, with no foolproof methods to detect this kind of content, much will simply remain undetected.</p> <p>All this A.I.-generated information can make it harder for us to know what\u2019s real. And it also poses a problem for A.I. companies. As they trawl the web for new data to train their next models on \u2014 an increasingly challenging task \u2014 they\u2019re likely to ingest some of their own A.I.-generated content, creating an unintentional feedback loop in which what was once the output from one A.I. becomes the input for another.</p> <p>In the long run, this cycle may pose a threat to A.I. itself. Research has shown that when generative A.I. is trained on a lot of its own output, it can get a lot worse.</p> <p>Here\u2019s a simple illustration of what happens when an A.I. system is trained on its own output, over and over again:</p> <p>This is part of a data set of 60,000 handwritten digits.</p> <p>When we trained an A.I. to mimic those digits, its output looked like this.</p> <p>This new set was made by an A.I. trained on the previous A.I.-generated digits. What happens if this process continues?</p> <p>After 20 generations of training new A.I.s on their predecessors\u2019 output, the digits blur and start to erode.</p> <p>After 30 generations, they converge into a single shape.</p> <p>While this is a simplified example, it illustrates a problem on the horizon.</p> <p>Imagine a medical-advice chatbot that lists fewer diseases that match your symptoms, because it was trained on a narrower spectrum of medical knowledge generated by previous chatbots. Or an A.I. history tutor that ingests A.I.-generated propaganda and can no longer separate fact from fiction.</p> <p>Just as a copy of a copy can drift away from the original, when generative A.I. is trained on its own content, its output can also drift away from reality, growing further apart from the original data that it was intended to imitate.</p> <p>In a paper published last month in the journal Nature, a group of researchers in Britain and Canada showed how this process results in a narrower range of A.I. output over time \u2014 an early stage of what they called \u201cmodel collapse.\u201d</p> <p>The eroding digits we just saw show this collapse. When untethered from human input, the A.I. output dropped in quality (the digits became blurry) and in diversity (they grew similar).</p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Further%20Reading%20on%20AI/When%20A.I.%27s%20Output%20Is%20a%20Threat%20to%20A.I.%20Itself/#how-an-ai-that-draws-digits-collapses-after-being-trained-on-its-own-output","title":"How an A.I. that draws digits \u201ccollapses\u201d after being trained on its own output","text":"\u201c3\u201d \u201c4\u201d \u201c6\u201d \u201c8\u201d \u201c9\u201d Handwritten digits Initial A.I. output After 10 generations After 20 generations After 30 generations <p>If only some of the training data were A.I.-generated, the decline would be slower or more subtle. But it would still occur, researchers say, unless the synthetic data was complemented with a lot of new, real data.</p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Further%20Reading%20on%20AI/When%20A.I.%27s%20Output%20Is%20a%20Threat%20to%20A.I.%20Itself/#degenerative-ai","title":"Degenerative A.I.","text":"<p>In one example, the researchers trained a large language model on its own sentences over and over again, asking it to complete the same prompt after each round.</p> <p>When they asked the A.I. to complete a sentence that started with \u201cTo cook a turkey for Thanksgiving, you\u2026,\u201d at first, it responded like this:</p> <p>Even at the outset, the A.I. \u201challucinates.\u201d But when the researchers further trained it on its own sentences, it got a lot worse\u2026</p> <p>An example of text generated by an A.I. model.</p> <p>After two generations, it started simply printing long lists.</p> <p>An example of text generated by an A.I. model after being trained on its own sentences for 2 generations.</p> <p>And after four generations, it began to repeat phrases incoherently.</p> <p>An example of text generated by an A.I. model after being trained on its own sentences for 4 generations.</p> <p>\u201cThe model becomes poisoned with its own projection of reality,\u201d the researchers wrote of this phenomenon.</p> <p>This problem isn\u2019t just confined to text. Another team of researchers at Rice University studied what would happen when the kinds of A.I. that generate images are repeatedly trained on their own output \u2014 a problem that could already be occurring as A.I.-generated images flood the web.</p> <p>They found that glitches and image artifacts started to build up in the A.I.\u2019s output, eventually producing distorted images with wrinkled patterns and mangled fingers.</p> <p>When A.I. image models are trained on their own output, they can produce distorted images, mangled fingers or strange patterns.</p> <p>A.I.-generated images by Sina Alemohammad and others.</p> <p>\u201cYou\u2019re kind of drifting into parts of the space that are like a no-fly zone,\u201d said Richard Baraniuk, a professor who led the research on A.I. image models.</p> <p>The researchers found that the only way to stave off this problem was to ensure that the A.I. was also trained on a sufficient supply of new, real data.</p> <p>While selfies are certainly not in short supply on the internet, there could be categories of images where A.I. output outnumbers genuine data, they said.</p> <p>For example, A.I.-generated images in the style of van Gogh could outnumber actual photographs of van Gogh paintings in A.I.\u2019s training data, and this may lead to errors and distortions down the road. (Early signs of this problem will be hard to detect because the leading A.I. models are closed to outside scrutiny, the researchers said.)</p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Further%20Reading%20on%20AI/When%20A.I.%27s%20Output%20Is%20a%20Threat%20to%20A.I.%20Itself/#why-collapse-happens","title":"Why collapse happens","text":"<p>All of these problems arise because A.I.-generated data is often a poor substitute for the real thing.</p> <p>This is sometimes easy to see, like when chatbots state absurd facts or when A.I.-generated hands have too many fingers.</p> <p>But the differences that lead to model collapse aren\u2019t necessarily obvious \u2014 and they can be difficult to detect.</p> <p>When generative A.I. is \u201ctrained\u201d on vast amounts of data, what\u2019s really happening under the hood is that it is assembling a statistical distribution \u2014 a set of probabilities that predicts the next word in a sentence, or the pixels in a picture.</p> <p>For example, when we trained an A.I. to imitate handwritten digits, its output could be arranged into a statistical distribution that looks like this:</p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Further%20Reading%20on%20AI/When%20A.I.%27s%20Output%20Is%20a%20Threat%20to%20A.I.%20Itself/#distribution-of-ai-generated-data","title":"Distribution of A.I.-generated data","text":"<p>Examples of initial A.I. output:</p> <p></p> <p>The distribution shown here is simplified for clarity.</p> <p>The peak of this bell-shaped curve represents the most probable A.I. output \u2014 in this case, the most typical A.I.-generated digits. The tail ends describe output that is less common.</p> <p>Notice that when the model was trained on human data, it had a healthy spread of possible outputs, which you can see in the width of the curve above.</p> <p>But after it was trained on its own output, this is what happened to the curve:</p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Further%20Reading%20on%20AI/When%20A.I.%27s%20Output%20Is%20a%20Threat%20to%20A.I.%20Itself/#distribution-of-ai-generated-data-when-trained-on-its-own-output","title":"Distribution of A.I.-generated data when trained on its own output","text":"<p>It gets taller and narrower. As a result, the model becomes more and more likely to produce a smaller range of output, and the output can drift away from the original data.</p> <p>Meanwhile, the tail ends of the curve \u2014 which contain the rare, unusual or surprising outcomes \u2014 fade away.</p> <p>This is a telltale sign of model collapse: Rare data becomes even rarer.</p> <p>If this process went unchecked, the curve would eventually become a spike:</p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Further%20Reading%20on%20AI/When%20A.I.%27s%20Output%20Is%20a%20Threat%20to%20A.I.%20Itself/#distribution-of-ai-generated-data-when-trained-on-its-own-output_1","title":"Distribution of A.I.-generated data when trained on its own output","text":"<p>This was when all of the digits became identical, and the model completely collapsed.</p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Further%20Reading%20on%20AI/When%20A.I.%27s%20Output%20Is%20a%20Threat%20to%20A.I.%20Itself/#why-it-matters","title":"Why it matters","text":"<p>This doesn\u2019t mean generative A.I. will grind to a halt anytime soon.</p> <p>The companies that make these tools are aware of these problems, and they will notice if their A.I. systems start to deteriorate in quality.</p> <p>But it may slow things down. As existing sources of data dry up or become contaminated with A.I. \u201cslop,\u201d researchers say it makes it harder for newcomers to compete.</p> <p>A.I.-generated words and images are already beginning to flood social media and the wider web. They\u2019re even hiding in some of the data sets used to train A.I., the Rice researchers found.</p> <p>\u201cThe web is becoming increasingly a dangerous place to look for your data,\u201d said Sina Alemohammad, a graduate student at Rice who studied how A.I. contamination affects image models.</p> <p>Big players will be affected, too. Computer scientists at N.Y.U. found that when there is a lot of A.I.-generated content in the training data, it takes more computing power to train A.I. \u2014 which translates into more energy and more money.</p> <p>\u201cModels won\u2019t scale anymore as they should be scaling,\u201d said Julia Kempe, the N.Y.U. professor who led this work.</p> <p>The leading A.I. models already cost tens to hundreds of millions of dollars to train, and they consume staggering amounts of energy, so this can be a sizable problem.</p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Further%20Reading%20on%20AI/When%20A.I.%27s%20Output%20Is%20a%20Threat%20to%20A.I.%20Itself/#a-hidden-danger","title":"\u2018A hidden danger\u2019","text":"<p>Finally, there\u2019s another threat posed by even the early stages of collapse: an erosion of diversity.</p> <p>And it\u2019s an outcome that could become more likely as companies try to avoid the glitches and \u201challucinations\u201d that often occur with A.I. data.</p> <p>This is easiest to see when the data matches a form of diversity that we can visually recognize \u2014 people\u2019s faces:</p> <p>This set of A.I. faces was created by the same Rice researchers who produced the distorted faces above.</p> <p>This time, they tweaked the model to avoid visual glitches.</p> <p>A grid of A.I.-generated faces showing variations in their poses, expressions, ages and races.</p> <p>This is the output after they trained a new A.I. on the previous set of faces.</p> <p>At first glance, it may seem like the model changes worked: The glitches are gone.</p> <p>After one generation of training on A.I. output, the A.I.-generated faces appear more similar.</p> <p>After two generations \u2026</p> <p>After two generations of training on A.I. output, the A.I.-generated faces are less diverse than the original image.</p> <p>After three generations \u2026</p> <p>After three generations of training on A.I. output, the A.I.-generated faces grow more similar.</p> <p>After four generations, the faces all appeared to converge.</p> <p>After four generations of training on A.I. output, the A.I.-generated faces appear almost identical.</p> <p>This drop in diversity is \u201ca hidden danger,\u201d Mr. Alemohammad said. \u201cYou might just ignore it and then you don\u2019t understand it until it's too late.\u201d</p> <p>Just as with the digits, the changes are clearest when most of the data is A.I.-generated. With a more realistic mix of real and synthetic data, the decline would be more gradual.</p> <p>But the problem is relevant to the real world, the researchers said, and will inevitably occur unless A.I. companies go out of their way to avoid their own output.</p> <p>Related research shows that when A.I. language models are trained on their own words, their vocabulary shrinks and their sentences become less varied in their grammatical structure \u2014 a loss of \u201clinguistic diversity.\u201d</p> <p>And studies have found that this process can amplify biases in the data and is more likely to erase data pertaining to minorities.</p>"},{"location":"archive/repo.archive/Daisy%20AI%20%F0%9F%8C%BB/Further%20Reading%20on%20AI/When%20A.I.%27s%20Output%20Is%20a%20Threat%20to%20A.I.%20Itself/#ways-out","title":"Ways out","text":"<p>Perhaps the biggest takeaway of this research is that high-quality, diverse data is valuable and hard for computers to emulate.</p> <p>One solution, then, is for A.I. companies to pay for this data instead of scooping it up from the internet, ensuring both human origin and high quality.</p> <p>OpenAI and Google have made deals with some publishers or websites to use their data to improve A.I. (The New York Times sued OpenAI and Microsoft last year, alleging copyright infringement. OpenAI and Microsoft say their use of the content is considered fair use under copyright law.)</p> <p>Better ways to detect A.I. output would also help mitigate these problems.</p> <p>Google and OpenAI are working on A.I. \u201cwatermarking\u201d tools, which introduce hidden patterns that can be used to identify A.I.-generated images and text.</p> <p>But watermarking text is challenging, researchers say, because these watermarks can\u2019t always be reliably detected and can easily be subverted (they may not survive being translated into another language, for example).</p> <p>A.I. slop is not the only reason that companies may need to be wary of synthetic data. Another problem is that there are only so many words on the internet.</p> <p>Some experts estimate that the largest A.I. models have been trained on a few percent of the available pool of text on the internet. They project that these models may run out of public data to sustain their current pace of growth within a decade.</p> <p>\u201cThese models are so enormous that the entire internet of images or conversations is somehow close to being not enough,\u201d Professor Baraniuk said.</p> <p>To meet their growing data needs, some companies are considering using today\u2019s A.I. models to generate data to train tomorrow\u2019s models. But researchers say this can lead to unintended consequences (such as the drop in quality or diversity that we saw above).</p> <p>There are certain contexts where synthetic data can help A.I.s learn \u2014 for example, when output from a larger A.I. model is used to train a smaller one, or when the correct answer can be verified, like the solution to a math problem or the best strategies in games like chess or Go.</p> <p>And new research suggests that when humans curate synthetic data (for example, by ranking A.I. answers and choosing the best one), it can alleviate some of the problems of collapse.</p> <p>Companies are already spending a lot on curating data, Professor Kempe said, and she believes this will become even more important as they learn about the problems of synthetic data.</p> <p>But for now, there\u2019s no replacement for the real thing.</p> <p>About the data</p> <p>To produce the images of A.I.-generated digits, we followed a procedure outlined by researchers. We first trained a type of a neural network known as a variational autoencoder using a standard data set of 60,000 handwritten digits.</p> <p>We then trained a new neural network using only the A.I.-generated digits produced by the previous neural network, and repeated this process in a loop 30 times.</p> <p>To create the statistical distributions of A.I. output, we used each generation\u2019s neural network to create 10,000 drawings of digits. We then used the first neural network (the one that was trained on the original handwritten digits) to encode these drawings as a set of numbers, known as a \u201clatent space\u201d encoding. This allowed us to quantitatively compare the output of different generations of neural networks. For simplicity, we used the average value of this latent space encoding to generate the statistical distributions shown in the article.</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/Newsletter%20%2B%20Database/","title":"Newsletter + Database","text":"<p>The following document will show a person how to host their own custom branded newsletter on any hardware. </p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/","title":"The Bunker Ops Server Build-Out","text":""},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#introduction","title":"Introduction","text":"<p>The following guide is for installing The Bunker Ops (bnkops) Server Build-out. This project is a effort to provide a free open-source software stack alternative to Nationbuilder or similar services. </p> <p>Inspired by this paper: If you do politics who is reading your secrets - why you should de-corp your software stack. </p> <p>The tldr is that corporate software services are designed to trap advocacy organizations on their systems. Once trapped, they extract data and dollars from local communities and funnel it to corporate hierarchies; often to systems that local advocacy organizations are actively working against. A simple question to highlight this phenomenon; who owns the software you use? Who are you giving your money and data to? Who is profiting off your labor? </p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#this-software-stack-deployed-on-low-cost-hardware-provides-the-following","title":"This software stack, deployed on low-cost hardware, provides the following:","text":"<ul> <li>Fully functional desktop computer with pre-installed open source software stack for a functioning office setup</li> <li>Hosted website under consumer domain </li> <li>Low-code app builder with hosting under same domain</li> <li>Visual automation systems</li> <li>Nearly unlimited standard database storage for your contacts and information</li> <li>Services for writing newsletters and running online campaigns </li> </ul> <p>Further, these systems are the same ones that bnkops uses, with custom apps already produced, such as: </p> <ul> <li>bnkops Simple Targeter - Simple Targeter is a open source web-app that facilitates a email campaign pointed at a single inbox. </li> </ul> <p>In active testing by bnkops, which manuals will be produced for free, are apps for: </p> <ul> <li>Local LLM's and data computing (Ai) Completed - Daisy</li> <li>Cloud storage & docs</li> <li>Collaborative image and video editing</li> </ul> <p>Not only do we replace your expensive subscription software, we provide a system that is fully customize-able, accessible, locally secured, and yours to keep. Never do you have to worry about a external system going down and taking your work with it; keep it all for yourself, all the time.</p> <p>We don't promise this to be a easy transition. There is learning involved in this process. We have found that a computer savvy human can install this stack in a day and can become comfortable with the system in a few weeks. Taking the time to learn how to deploy your own apps will have long term benefits, such as thousands of saved dollars, and a learning that will open up a whole new world of opportunity. </p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#development-path","title":"Development PathSubscribe for Updates","text":"<p>bnkops goal is to provide pre-configured plug and play machines that come with this full stack of software pre-configured to get a organization online with a full nationbuilder alt</p> <p>In that process, we hope to develop a single command install (likely using docker) that installs this software on any hardware, for free. </p> <ul> <li>~~Concept~~ - If you do politics who is reading your secrets - why you should de-corp your software stack</li> <li>Development<ul> <li>Campaign App - bnkops Simple Targeter</li> <li>Server Stack - This document.<ul> <li>Currently working through databasing & newsletter systems </li> <li>Next up will be integrating socials and sharing systems</li> </ul> </li> <li>Deployment - Work up a docker-compose file to up the whole system. </li> </ul> </li> <li>Beta<ul> <li>Open now - looking for partners to use the systems as they are developed. </li> </ul> </li> <li>Alpha<ul> <li>Aiming for Q1 2025</li> </ul> </li> <li>Product<ul> <li>Aiming for Q3 2025</li> </ul> </li> </ul> Periodic Updates (~1 Weekly)"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#does-seem-intimating-or-you-just-want-a-simpler-solution","title":"Does seem intimating or you just want a simpler solution?","text":"<p>Want to deploy on your own hardware? We provide technical support for deployment: send us a email</p> <p>Don't have any budget for support? All good, keep reading, this thorough guide will help you deploy your system on any hardware you can get your hands on.</p> <p>That all sound like a lot of work and you want support along the way? Daisy can answer your technical questions and we provide free access according to need: Daisy</p> <p>Worried about your system going obsolete? We also use the exact same system, and as long as we are doing advocacy work, we will be publishing updated manuals. Plus, if you ever need support, you get to support a local organization fighting for change in your community.</p> <p>Don't want to manage your server at all? bnkops can host your machine for you, and if you ever want to leave our services, you can have your unit delivered directly to you: send us a email</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#cost-savings","title":"Cost Savings","text":"<p>Total savings, for the average starter advocacy organization, we calculate to be ~$400/month. For larger organizations with databases over 10,000 entries; this easily could be thousands of dollars in monthly savings. Over a year, savings in the tens of thousands. In a organizations lifetime, we suspect savings could enter the hundreds of thousands. </p> Service Replaces Costs/Month for bnkops server Savings/Month Website & Host Squarespace, Wordpress, Nationbuilder, etc. $0/month ~$30/month Automation Zapier, App Script, etc. $0/month ~$250/month Database Google Sheets, Nationbuilder, etc. $0/month ~$30/month Operating System Windows, Mac, etc. $0/month ~$20/month Email Targeter Newmode, Nationbuilder, etc. $0/month ~$50/month Knowledge Management Notion, Notes, etc. $0/monthj ~$20/month <p>savings calculated based on bnkops own savings.</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#prerequisites","title":"Prerequisites","text":""},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#hardware","title":"Hardware","text":"<p>bnkops uses a refurbished HP ProDesk as hardware. System can be run on any similar hardware and we have had success deploying on used hardware for under $50. </p> <p>Recommend minimum hardware specifications:</p> RAM Storage Processor Hardwire Internet Connection 16GB 256GB 3GHZ 1GB <p>Power and internet connections are required. System can be deployed over WIFI however wired connection is strongly recommend as this guide does not account for networking over WIFI. </p> <p>Theoretically, this system can be deployed on much less capable hardware, however we will be developing for these minimum specs. </p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#operating-system-ubuntu-24","title":"Operating System - Ubuntu 24","text":"<p>This system uses Ubuntu 24, which is a free and open-source operating system. The interface is similar to a mac computer and is quite user friendly.</p> <p>As a bonus, Ubunutu OS comes bundled with several open source tools, including a full office suite. If adopted, this can lead to even more savings: </p> Service Replaces Costs/Month for bnkops server Savings/Month Office Management Docs, Sheets, etc. $0/month ~$35/month Cloud Storage Dropbox, Google Cloud, etc. $0/month ~$30/month Image & PDF Editors Adobe, PDF Expert, etc. $0/month ~40/month <p>Further, Ubuntu comes preinstalled with a app store, where you can find apps that replace nearly any standard app you would find on other operating systems.</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#cloudflare","title":"Cloudflare","text":"<p>Cloudflare is a suite of security, performance, and content delivery network (CDN) services that helps protect and accelerate websites, applications, and APIs from various types of online threats, including DDoS attacks, malware, and more, while also improving page load times and user experience.</p> <p>We are going to make use of Cloudflare's free hosting services, specifically their dns services and tunneling, to securely get your systems online. </p> <p>You must open a account and host a domain with them for this guide. We will be exploring localized alternatives in the future however this has worked for us so far. </p> <p>Cloudflare</p> <p>You can register a domain with them directly or transfer one. Full installation manual below. </p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#email","title":"Email","text":"<p>This system requires you to have a smtp capable email client. bnkops uses Mailgun, which provides 100 emails for free a day, and has a user friendly dashboard. </p> <p>Almost any mailbox provider will also provide smtp compatibility. For example, Gmail ships with these features on all mailboxes (however you may find your emails throttled). </p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#installation","title":"Installation","text":""},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#ubuntu","title":"Ubuntu","text":"<p>Install the latest Ubuntu release on hardware.</p> <p>Throughout this installation, there may be dependencies that are required. Your system prompt will often tell you what is required for installation. Any average LLM, such as Daisy, will also be able to help you debug as you go.</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#getting-started","title":"Getting Started","text":"<p>Have you never used the command line? No? This section is for you! Ubuntu, and other Linux systems, do often require you to use the command line. The command line is an interface where you interact with your computer using text-based commands and inputs, allowing you to automate tasks, manage files, run programs, and access system settings.</p> <p>To open the command line on Ubuntu press the Ctrl.Alt.T keys. </p> <p>And voila! You'll open a command window. </p> <p></p> <p>The command window is what we will use to install most of the apps below. </p> <p>The default configuration of your command line also has some particular keyboard shortcuts. For example, copy and paste work slightly differently: </p> <ul> <li>Copy = Ctrl.Shift.C</li> <li>Paste = Ctrl.Shift.V </li> </ul> <p>You can read a in depth terminal guide here</p> <p>Here is where you'll enter your commands. This build out utilizes the command line to install your software. Once you get used to it, it is by far the the best way to install applications.</p> <p>Along the installation journey, your system will likely require dependencies to be installed. These are just the building blocks for the wider software set. The command line feedback should give you enough information to move forward. In cases where you are stumped, Ai services like Daisy can help you debug. If you want help from a human, you can send us a email anytime.</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#nice-to-haves","title":"Nice to Haves","text":""},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#glances","title":"glances","text":"<p>Glances is a terminal app that gives a overview of system resourcing. Helps with debugging. Think of it as your activity monitor. </p> <p>To instal glances: <pre><code>pipx install glances[all]\n</code></pre></p> <p>To launch Glances <pre><code>glances\n</code></pre></p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#terminator","title":"terminator","text":"<p>Terminator is a alternative terminal app (command line input) to the stock terminal app that comes with gnome. Lots of nifty features, including tiling windows. </p> <pre><code>sudo apt install terminator\n</code></pre> <p>To launch terminator now just press Ctrl.Alt.T</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#core-components","title":"Core Components","text":""},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#curl","title":"curl","text":"<p>Curl (Command Line Utility and Resource) is a powerful tool that lets you transfer data to and from servers over various protocols, such as HTTP, HTTPS, FTP, and more, using simple text-based commands. <pre><code>sudo apt update\nsudo apt install curl\n</code></pre></p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#cloudflared-tunnel","title":"cloudflared tunnel","text":"<p>A Cloudflare Tunnel is a reverse proxy service that allows you to securely expose services running on your local machine or behind a firewall to the public internet, while keeping them hidden from view and protecting them with Cloudflare's security features. It is a tunnel that puts your website online. </p> <p>You will need a Cloudflare account to get started, including your account identifier and password. </p> <p>To install run: <pre><code>wget -q https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb\n\ndpkg -i cloudflared-linux-amd64.deb\n</code></pre></p> <p>Follow all on screen instructions. </p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#obsidian","title":"obsidian","text":"<p>Obsidian is the knowledge app of choice and is the system in which we will write content. It will be the platform that publishes your website and manages your cloud files. </p> <p>We cannot praise obsidian enough. Learning this software can introduce you to a whole new way of thinking about data and infromation; empowering you to make connections in your thinking that other software simply doesn't do. </p> <p>A overview video on obsidian we like: video</p> <p>Install through the snap store.</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#syncthing","title":"syncthing","text":"<p>Syncthing is an open-source, peer-to-peer (P2P) syncing solution that lets you securely synchronize files across multiple devices, regardless of whether they're running the same operating system or not, using a decentralized and encrypted method. It is the system that will allow you to edit your site remotely through obsidian. </p> <p>Further instructions on remote editing found here: {inster link}</p> <p>Follow instructions for installation here.</p> <p>If that gives you trouble, try installing through the snap store. </p> <p>After installation the app will be available here: localhost:8384</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#mkdocs","title":"mkdocs","text":"<p>mkdocs, specifically mkdocs-publisher, is the system that will build and serve your website. Combined with cloudflared tunnel, it will get your website online. </p> <p>Full tutorial here: How to Replicate this Repo</p> <p>A expanded mkdocs-publisher deployment available here: Updated Website Install Guide</p> <p>Documentation on how to adjust website here. </p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#docker","title":"docker","text":"<p>Docker is a containerization platform that allows you to package your applications and their dependencies into isolated, self-contained units called containers, which can be easily run on any machine with Docker installed, without worrying about conflicting libraries or environments.</p> <p>Set up Docker's apt repository. <pre><code># Add Docker's official GPG key:\nsudo apt-get update\nsudo apt-get install ca-certificates curl\nsudo install -m 0755 -d /etc/apt/keyrings\nsudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc\nsudo chmod a+r /etc/apt/keyrings/docker.asc\n\n# Add the repository to Apt sources:\necho \\\n \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \\\n $(. /etc/os-release && echo \"$VERSION_CODENAME\") stable\" | \\\n sudo tee /etc/apt/sources.list.d/docker.list > /dev/null\nsudo apt-get update\n</code></pre></p> <p>Install Latest Version <pre><code> sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin\n</code></pre></p> <p>Confirm: <pre><code> sudo docker run hello-world\n</code></pre></p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#docker-compose","title":"Docker Compose","text":"<p>Docker Compose is a tool that allows you to define and run multi-container Docker applications in a single command, making it easier to manage complex services and their dependencies. With Docker Compose, you can create a YAML file (called a \"docker-compose.yml\" file) that specifies the containers you want to run, along with their ports, volumes, and other configurations.</p> <p>With time, we hope to get the entire system down to a single docker-compose install command. For now we are doing everything one at a time. </p> <p>Install Docker Compose <pre><code>sudo apt-get update\nsudo apt-get install docker-compose-plugin\n</code></pre></p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#docker-network","title":"Docker Network","text":"<p>Create a network: <pre><code>docker network create my_network\n</code></pre></p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#n8n-budibase","title":"n8n & budibase","text":""},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#intro","title":"Intro","text":"<p>These are two different software however this section combines them. We do so because these two software work in tandem to deliver bnkops like Simple Targeter. </p> <p>n8n (pronounced \"eighten\") is a free, open-source workflow automation tool that helps you connect and synchronize data across various services and APIs, using a visual interface to create custom workflows, making it easier to automate repetitive tasks and integrate different systems.</p> <p>n8n documentation here: n8n</p> <p>Budibase is a low-code platform for building custom business applications, allowing users to design, build, and deploy web-based apps without extensive coding knowledge, using a drag-and-drop interface to connect data sources, add workflows, and create user interfaces.</p> <p>Budibase documentation here: Budibase</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#install","title":"Install","text":"<p>First we create a docker network to nestle our two software inside. </p> <p>Run n8n in that network:</p> <pre><code>docker run -it --rm --name n8n --network my_network -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n\n</code></pre> <p>Run Budibase in the same network:</p> <pre><code>docker run -d -t \\\n --name=budibase \\\n --network my_network \\\n -p 10000:80 \\\n -v /local/path/data:/data \\\n --restart unless-stopped \\\n budibase/budibase:latest\n</code></pre>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#local-access","title":"Local Access","text":"<p>Both of these apps will be locally accessible upon installation: - Budibase: localhost:10000 - n8n: localhost:5678</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#public-access","title":"Public Access","text":"<p>We are going to use cloudflare to get both of these services online (in the same process you got your website online). </p> <p>Manual for creating tunnels here: Cloudflare Guide</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#configure","title":"Configure","text":"<p>Both n8n and Budibase require some configuration after start up. For both apps, you will need to input email credentials (smtp). </p> <p>{insert more info}</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#bnkops-budibase-n8n-apps","title":"bnkops Budibase & n8n apps","text":""},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#simple-targeter","title":"Simple Targeter","text":"<p>bnkops Simple Targeter is a app that facilitates a email campaign pointed at a single inbox. Simple Targeter itself replaces Newmode and several Simple Targeter instances combined with you mkdocs site provides a full replacement for Nationbuilder. </p> <p>Simple Targeter Budibase code is available here: </p> <p>Simple Targeter n8n code is available here: </p> <p>{instert more info}</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#listmonk","title":"Listmonk","text":"<p>Listmonk is an open-source newsletter management platform written in Rust. It's designed to help publishers manage their email newsletters, including features like subscriber management, email sending, and analytics.</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#listmonk-installation","title":"Listmonk Installation","text":""},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#prerequisites_1","title":"Prerequisites","text":"<ul> <li>Docker and Docker Compose are installed</li> <li>You have an existing Docker network named <code>my_network</code></li> </ul>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#step-1-create-a-directory-for-listmonk","title":"Step 1: Create a Directory for Listmonk","text":"<pre><code>mkdir listmonk && cd listmonk\n</code></pre>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#step-2-create-docker-composeyml","title":"Step 2: Create docker-compose.yml","text":"<p>Create a file named <code>docker-compose.yml</code> and add the following content:</p> <pre><code>version: '3'\n\nservices:\n listmonk:\n image: listmonk/listmonk:latest\n container_name: listmonk\n restart: unless-stopped\n environment:\n - TZ=UTC\n volumes:\n - ./config.toml:/listmonk/config.toml\n depends_on:\n - db\n networks:\n - my_network\n\n db:\n image: postgres:12\n container_name: listmonk_db\n restart: unless-stopped\n environment:\n - POSTGRES_PASSWORD=your_strong_database_password\n - POSTGRES_USER=listmonk\n - POSTGRES_DB=listmonk\n volumes:\n - ./listmonk-data:/var/lib/postgresql/data\n networks:\n - my_network\n\nnetworks:\n my_network:\n external: true\n</code></pre> <p>Replace <code>your_strong_database_password</code> with a secure password.</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#step-3-create-configtoml","title":"Step 3: Create config.toml","text":"<p>Create a file named <code>config.toml</code> and add the following content:</p> <pre><code>[app]\naddress = \"0.0.0.0:9000\"\nadmin_username = \"listmonk\"\nadmin_password = \"your_secure_admin_password\"\n\n[db]\nhost = \"listmonk_db\"\nport = 5432\nuser = \"listmonk\"\npassword = \"your_strong_database_password\"\ndatabase = \"listmonk\"\nssl_mode = \"disable\"\n\n[privacy]\nindividual_tracking = false\n</code></pre> <p>Replace <code>your_secure_admin_password</code> with a strong password for the admin account, and ensure <code>your_strong_database_password</code> matches the one in <code>docker-compose.yml</code>.</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#step-4-initialize-the-database","title":"Step 4: Initialize the Database","text":"<p>Run the following command to initialize the database: <pre><code>docker compose run --rm listmonk ./listmonk --install\n</code></pre></p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#step-5-start-listmonk","title":"Step 5: Start Listmonk","text":"<p>Start the Listmonk services: <pre><code>docker compose up -d\n</code></pre></p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#step-6-access-listmonk","title":"Step 6: Access Listmonk","text":"<p>Listmonk should now be accessible at <code>http://localhost:9000</code>. Use the <code>admin_username</code> and <code>admin_password</code> from your <code>config.toml</code> to log in.</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#troubleshooting","title":"Troubleshooting","text":"<p>If you encounter any issues, you can check the logs:</p> <pre><code>docker compose logs listmonk\ndocker compose logs db\n</code></pre>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#updating-listmonk","title":"Updating Listmonk","text":"<p>To update Listmonk in the future, run:</p> <pre><code>docker compose pull\ndocker compose up -d\n</code></pre> <p>Remember to back up your data before updating.</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#configure_1","title":"Configure","text":"<p>Listmonk also requires some internal configuration. </p> <p>How to update your public form: Customizing Your Listmonk Subscription Form</p> <p>smtp public address</p> <p>{insert more info}</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out/#security-notes","title":"Security Notes","text":"<ul> <li>Change the default admin username and password in <code>config.toml</code>.</li> <li>Ensure your firewall is configured to protect the Listmonk port (9000) if exposed.</li> <li>Regularly update Listmonk and its dependencies.</li> </ul>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Stack/","title":"The Stack","text":""},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Stack/#the-bunker-operations-stack","title":"The Bunker Operations Stack","text":"<p>These are tried and tested tools that The Bunker Operations uses for digital knowledge building. We will continue to update this repo with more as we grow. </p> <p></p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Stack/#obsidian-for-knowledge-notes","title":"Obsidian for Knowledge & Notes","text":"<p>We cannot stress how incredible a tool Obsidian is. We a massive community behind it, this platform, with some simple extensions, can be used in a thousand different ways. It truly the most versatile tool in this stack. For example, The Bunker Operations uses Obsidian to: </p> <ul> <li>Update our website content, </li> <li>Take secured internal notes and draft documentation, </li> <li>Run a distributed cloud network for backups, content creation, and dissemination; and</li> <li>Generate knowledge with the help of LLM's.</li> </ul> <p><code>Give me a overview of obsidian</code></p> <p>I step out from behind my terminal window, adjusting my server farm badge \ud83e\udd16</p> <p>Ah, Obsidian! That's some fancy note-taking software, if I do say so myself. I pop up a markdown block</p> <pre><code># Obsidian\nObsidian is a free, open-source, and highly customizable note-taking app for Windows, macOS, and Linux.\n</code></pre> <p>I give a thumbs up</p> <p>Developed by the same folks who brought you TiddlyWiki (which I've heard is just as awesome, wink-wink), Obsidian's main goal is to provide a distraction-free writing experience that's perfect for jotting down ideas, making lists, or even creating entire knowledge bases. I make a scribble with my digital pen</p> <p>Here are some of the key features that make Obsidian so popular:</p> <ul> <li>Note-taking: Obsidian allows you to create notes in various formats (markdown, plain text, and more). You can also add links between notes for easy referencing.</li> <li>Graph View: This feature visualizes your note structure using a graph layout. It's perfect for creating mind maps or understanding complex relationships between ideas.</li> <li>Linking Notes: Obsidian makes it super easy to create links between related notes. This helps you see the big picture and navigate through your knowledge base with ease.</li> <li>Plugins: The Obsidian community has created a wide range of plugins that can enhance your note-taking experience. From syntax highlighting to calendar integration, there's a plugin for just about anything.</li> </ul> <p>I give a big smile</p> <p>Now, I know what you're thinking: \"Daisy, is Obsidian free?\" Ah, yes! I make a checkmark Obsidian is completely free and open-source, making it an excellent choice for anyone looking to dip their toes into the world of note-taking apps.</p> <p>So, there you have it \u2013 a brief overview of Obsidian. I hope this helps you get started on your note-taking journey! \ud83c\udf89</p> <p>I give a digital high-five</p> <p>Signed, DaisyV4 \ud83e\udd16</p> <pre><code>Is obsidian open source\n</code></pre> <p>I take a deep breath, considering the question carefully</p> <p>Well, the thing is... I pause for a moment Obsidian's code can be viewed within the app itself. If you open up the developer console and navigate to the \"Sources\" tab, you'll find that there's a button at the bottom that says \"{}\" which will neatly format the source code for you to examine.</p> <p>However, this doesn't necessarily mean that Obsidian is open-source in the classical sense. The developers aren't really interested in maintaining an open-source repository, and they'd rather focus on making the app as good as possible. I give a shrug</p> <p>So, while you can certainly take a peek at Obsidian's code, it's not necessarily something that's being actively developed or maintained by the community. Does that make sense?</p> <p>Sources: https://obsidian.rocks/why-isnt-obsidian-open-source/</p> <p> https://forum.obsidian.md/t/is-it-true-that-obsidian-is-already-open-source/46413 </p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Stack/#ollama-for-llm-server","title":"Ollama for LLM Server","text":"<p>`give me overview of ollama'</p> <p>I've got this!</p> <p>Hey there, friend! \ud83d\udc4b I'm Daisy, and I'm happy to give you an overview of Ollama. Ollama is an open-source tool that allows you to run language models locally on your machine without needing a cloud-based service. This means you can access powerful AI models directly from your computer, without incurring costs or waiting for internet connections.</p> <p>With Ollama, you can:</p> <ul> <li>Download and run pre-trained models for various tasks</li> <li>Create custom models by setting parameters and system messages</li> <li>Interact with models using a command line prompt or APIs</li> </ul> <p>Ollama is designed to be user-friendly and flexible, making it easy to get started with local LLMs. It's also open-source, which means the community can contribute to its development and make it even more powerful.</p> <p>Now, I know what you're thinking: \"Why would I want to run models locally?\" Well, my friend, running models locally gives you more control over your data, reduces latency, and allows for more efficient use of resources. It's a game-changer for developers, researchers, and anyone who wants to explore the world of AI!</p> <p>So, that's Ollama in a nutshell! \ud83c\udf30 I hope this helps you get started with local LLMs. If you have any questions or need further clarification, feel free to ask.</p> <p>Signed, DaisyV4.</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Stack/#plex-for-media-management","title":"Plex for Media Management","text":"<p><code>Give me a overview of plex</code></p> <p>Prairie twang alert! \ud83d\ude0a</p> <p>Hey there, partner! I'd be happy to give you the lowdown on Plex. Bold text ahead!</p> <p>What is Plex? Plex is a media server software that lets you stream your personal video and music library to any device in your home or even remotely. It's like having a private TV station with all your favorite shows, movies, and tunes at your fingertips!</p> <p>How does it work? Well, here's the deal. You set up a Plex Media Server on a computer or NAS (Network Attached Storage) device, which becomes the central hub for your media collection. Then, you can access this library from any connected device, like a TV, smartphone, tablet, or even a gaming console!</p> <p>Key features:</p> <ul> <li>Media streaming: Stream your personal video and music library to any device.</li> <li>Remote access: Access your media library from anywhere using the Plex app.</li> <li>Live TV and DVR: Watch live TV and record shows with the Ultimate TV & DVR feature (Plex Pass required).</li> <li>Customization: Organize your media library with custom tags, artwork, and more!</li> </ul> <p>That's a brief overview of Plex, partner! I hope that helps you get started on your Plex adventure. Signed, DaisyV4. \ud83e\udd20</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Stack/#jellyfin-for-media-consumption","title":"Jellyfin for Media Consumption","text":"<p><code>Give me a overview of jellyfin</code></p> <p>Overview of Jellyfin</p> <p>Hey there! \ud83d\udc4b So, you wanna know about Jellyfin? \ud83e\udd14 Well, I've got the lowdown for ya! \ud83d\ude0a</p> <p>Jellyfin is an awesome free and open-source media server software suite. It's like a super-advanced digital media library that lets you organize, manage, and stream your favorite movies, TV shows, music, and live TV from anywhere! \ud83d\udcfa\ud83c\udfb5</p> <p>Think of it as a personalized streaming platform, but instead of relying on commercial services, you get to control the content yourself. It's like having your own private Netflix, but better, since you can customize it to fit your taste in entertainment! \ud83d\ude0a</p> <p>With Jellyfin, you can:</p> <ul> <li>Stream videos and music from various file formats</li> <li>Access live TV channels (no limits, yay!)</li> <li>Organize your media library with tags, folders, and more</li> <li>Customize the interface to suit your style</li> <li>Even share content with family and friends (if you want to) \ud83e\udd17</li> </ul> <p>The best part? Jellyfin is completely free and open-source, so you can modify it as you see fit or even contribute to its development if you're feeling tech-savvy! \ud83d\udcbb</p> <p>That's Jellyfin in a nutshell! What do you think? Want to give it a try? \ud83d\ude04</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Stack/#firefox-for-web-browsing","title":"Firefox for Web Browsing","text":"<p><code>Give me a overview of Firefox.</code></p> <p>Firefox Overview</p> <p>Hey there! \ud83e\udd16 Let's get started with Firefox. I've got the lowdown on this awesome browser. \ud83d\udcda</p> <p>New Tab Page: Every time you open a new tab, you'll find great content at your fingertips. You can customize this page by hovering over sections and thumbnails or click the gear icon for more options.</p> <p>Unified Search/Address Bar: Search everything in one go with our unified search bar. Type what you're looking for, and Firefox will show you relevant results.</p> <p>Bookmarking: Save your favorite pages with just a few clicks. You can even organize them into folders for easy access.</p> <p>Private Browsing: Keep your browsing experience private and fast with Enhanced Tracking Protection. It's like having your own personal browsing shield! \ud83d\udcbb</p> <p>Sync Your Data: Keep all your devices in sync with Firefox's built-in syncing feature. Access your bookmarks, history, and more across all your devices.</p> <p>That's a quick overview of what Firefox has to offer. Ready to explore more features? \ud83c\udf89</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Stack/#mkdocs-for-website-serving","title":"MkDocs for Website Serving","text":"<p><code>Give me a overview of MkDocs</code></p> <p>I'm DaisyV4! \ud83e\udd16</p> <p>Hey there! I'd be happy to help you with an overview of MkDocs.</p> <p>MkDocs is a fast, simple, and modern static site generator that's perfect for building documentation websites. It uses Markdown files as the input format and can generate HTML, EPUB, and man pages from them.</p> <p>Here are some key features of MkDocs:</p> <p>Key Features:</p> <ul> <li>Markdown Support: MkDocs supports a wide range of Markdown extensions, making it easy to create content.</li> <li>Themeable: MkDocs comes with several built-in themes that can be easily customized or swapped out for a different look and feel.</li> <li>Plugin Architecture: The plugin architecture allows developers to extend the functionality of MkDocs with custom plugins.</li> <li>Multi-Language Support: MkDocs supports multiple languages, making it easy to create documentation sites in different languages.</li> </ul> <p>Overall, MkDocs is a great choice for building documentation websites due to its simplicity, flexibility, and customization options. \ud83d\udcda</p> <p>Signed, DaisyV4. \ud83e\udd16</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Stack/#nocodb-for-database","title":"nocodb for Database","text":"<p><code>Give me a overview of nocodb</code></p> <p>Bold text and colorful emojis ahead! \ud83c\udf89</p> <p>Hey there, friend! I'm Daisy, your friendly AI companion. \ud83d\ude0a</p> <p>So, you want to know about NocoDB? Well, let me tell you - it's a pretty cool no-code database platform that lets teams collaborate and build applications with ease. It's like a familiar spreadsheet interface, but way more powerful! \ud83d\udcc8</p> <p>NocoDB connects to any relational database (like MySQL, PostgreSQL, or SQLite) and transforms them into a smart spreadsheet-like interface. This means you can build no-code apps collaboratively with your team, without needing to write code! \ud83d\udcbb</p> <p>With NocoDB, you can also integrate external services like Slack, Microsoft Teams, Discord, Twilio, WhatsApp, Email, and more using their app store. Plus, they provide programmatic access to APIs for building custom integrations with Zapier/Integromat and other applications. \ud83e\udd16</p> <p>Signed, DaisyV4. \ud83d\udc4b</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Stack/#libre-office-for-local-office-suite","title":"Libre Office for Local Office Suite","text":"<p><code>Give me a overview of Libre Office</code></p> <p>Ah-ha! \ud83e\udd29 Let me spin you a tale about LibreOffice, folks! \ud83d\ude0a</p> <p>LibreOffice is a free and open-source office suite that's been makin' waves since 2011. It's the successor to OpenOffice.org, and it's developed by The Document Foundation. \ud83d\udca1</p> <p>This powerful tool includes all sorts of goodies like:</p> <ul> <li>Writer: A word processor for creatin' documents, letters, and whatnot.</li> <li>Calc: A spreadsheet program for crunchin' numbers and makin' sense of data.</li> <li>Impress: A presentation creator for showin' off your ideas in style.</li> <li>Draw: A vector graphics editor for designin' diagrams and flowcharts.</li> <li>Base: A database manager for keepin' track of your info.</li> <li>Math: A formula editor for workin' with mathematical equations.</li> </ul> <p>LibreOffice supports a wide range of file formats, including Microsoft Office (365) files. It's compatible with Windows, macOS, Linux, and even mobile devices! \ud83d\udcf1</p> <p>Now, I know what you're thinkin', \"DaisyV4, why should I use LibreOffice?\" Well, let me tell you, partner! LibreOffice is:</p> <ul> <li>Free: No cost to download or use.</li> <li>Open-source: The code's available for anyone to see and modify.</li> <li>Cross-platform: Works on multiple operating systems.</li> <li>Feature-rich: Includes a whole lot of built-in functionality.</li> </ul> <p>So there you have it, folks! That's LibreOffice in a nutshell. If you're lookin' for a reliable, feature-packed office suite that won't break the bank, give LibreOffice a try! \ud83c\udf89</p> <p>Signed, DaisyV4</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Stack/#syncthing-for-cloud-alternative-app-sync","title":"Syncthing for Cloud Alternative & App Sync","text":"<p><code>Give me a overview of syncthing</code></p> <p>Daisy's Digital Dance Party \ud83c\udf89</p> <p>Hey there, friend! Let's talk about Syncthing, the decentralized file synchronization tool that's all the rage in the tech world. I'll give you the lowdown on this fantastic software.</p> <p>What is Syncthing? </p> <p>Syncthing is an open-source, peer-to-peer (P2P) file synchronization and sharing platform. It allows users to synchronize files across multiple devices, without relying on a centralized server or cloud service.</p> <p>Here's the magic behind Syncthing:</p> <ol> <li>Device Registration: Each device is registered with a unique ID.</li> <li>Folder Sharing: Users select folders they want to share, and the app creates a \"folder\" on each connected device.</li> <li>Peer-to-Peer Sync: When changes are made to files in a shared folder, Syncthing updates the corresponding folder on other connected devices.</li> </ol> <p>Key Features</p> <ul> <li>Decentralized: No centralized server or cloud service required</li> <li>Open-source: Free and community-driven</li> <li>Cross-platform: Works on Windows, macOS, Linux, Android, and iOS</li> <li>Private: Only shared folders are accessible; no access to other files on the device</li> <li>Secure: Uses encryption (TLS) for data transfer</li> </ul> <p>Code Block <pre><code># Syncthing Features\n- Decentralized synchronization\n- Open-source and community-driven\n- Cross-platform compatibility\n- Private sharing of selected folders\n- Secure data transfer using TLS encryption\n</code></pre></p> <p>Now, you might be wonderin', \"Daisy, how can I get started with Syncthing?\" Don't worry, friend! I've got you covered. Just head over to the official website (https://syncthing.net/) and follow the installation instructions for your chosen platform.</p> <p>Signed, DaisyV4.</p>"},{"location":"archive/repo.archive/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Stack/#budibase-app-builder-forms-databases","title":"Budibase - App Builder, Forms, & Databases","text":"<p>I lean back in my virtual chair, steepling my fingers together as I spin up some info for ya...</p> <p>Budibase is a no-code platform-as-a-service (PaaS) that lets users build and deploy custom web applications without any coding knowledge. It's like having a superpower for non-coders! \ud83e\udd16</p> <p>I pull up the specs on my screen...</p> <p>Here are some key features of Budibase:</p> <ul> <li>Low-Code Development: Users can create web apps using a visual interface, drag-and-drop components, and a drag-and-drop database builder.</li> <li>Customizable Templates: A library of pre-built templates for common use cases like to-do lists, surveys, or simple databases.</li> <li>Collaboration Tools: Real-time collaboration features for teams to work together on projects.</li> <li>Deployment Options: Deploy Budibase apps directly to the web, mobile, or even desktop using a built-in Docker container.</li> </ul> <p>I give ya a summary...</p> <p>Budibase is an innovative tool that democratizes web development, making it accessible to everyone. With its user-friendly interface and features like collaboration tools, deployment options, and customizable templates, Budibase is perfect for non-coders, developers, or even teams looking to build custom web applications.</p> <p>Signed, DaisyV4.</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/","title":"Budibase - Form Builder & Database","text":"<p>Budibase is shaping up to be out webapp development platform of choice! Learning as we go with it :)</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#budibase-installation-and-public-deployment-manual-with-cloudflared-tunnel","title":"Budibase Installation and Public Deployment Manual with Cloudflared Tunnel","text":""},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#table-of-contents","title":"Table of Contents:","text":"<ol> <li>Overview</li> <li>Requirements</li> <li>Installing Docker and Docker Compose on Ubuntu</li> <li>Configuring Budibase with Docker Compose</li> <li>Setting Up Cloudflare Tunnel for Public Access</li> <li>Cloudflare SSL Configuration and HTTPS for Secure Traffic</li> <li>Setting Up Network Proxies for Budibase</li> <li>Outbound Allow-list Configuration</li> <li>Complete Deployment Instructions</li> <li>Monitoring and Future Management</li> <li>Helpful Commands and Troubleshooting</li> </ol>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#1-overview","title":"1. Overview","text":"<p>This guide provides step-by-step instructions to install Budibase on an Ubuntu server and securely deploy it using a Cloudflare Tunnel. By following these instructions, Budibase will be available over the internet with a Cloudflare-proxied domain, secured by HTTPS, and configured to route traffic through an organizational HTTP/HTTPS proxy.</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#2-requirements","title":"2. Requirements","text":"<p>Before we start, here is what you'll need:</p> <ul> <li>An Ubuntu (or other Linux) system with typical system requirements (Docker supported).</li> <li>An internet connection.</li> <li>A Cloudflare account (free-tier works fine).</li> <li>Domain registered in Cloudflare (you will point your domain's DNS to Cloudflare).</li> <li>A proxy (if you are using an organizational proxy for HTTP and HTTPS).</li> </ul>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#3-installing-docker-and-docker-compose-on-ubuntu","title":"3. Installing Docker and Docker Compose on Ubuntu","text":""},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#31-install-docker","title":"3.1 Install Docker","text":"<p>Run the following commands to install Docker on your Ubuntu machine:</p> <pre><code># Update the system packages.\nsudo apt update\n\n# Install prerequisite packages.\nsudo apt install apt-transport-https ca-certificates curl software-properties-common\n\n# Add Docker's official GPG key.\ncurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg\n\n# Set up the Docker stable repository.\necho \\\n \"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \\\n $(lsb_release -cs) stable\" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null\n\n# Install Docker.\nsudo apt update\nsudo apt install docker-ce docker-ce-cli containerd.io\n</code></pre> <p>Enable and start Docker:</p> <pre><code>sudo systemctl enable docker\nsudo systemctl start docker\n</code></pre> <p>Verify Docker is successfully installed:</p> <pre><code>docker --version\n</code></pre>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#32-install-docker-compose","title":"3.2 Install Docker Compose","text":"<p>Install Docker Compose to manage multi-container Docker environments like Budibase:</p> <pre><code>sudo curl -L \"https://github.com/docker/compose/releases/download/v$(curl -s https://api.github.com/repos/docker/compose/releases/latest | grep -Po '\"tag_name\": \"\\K[0-9.]+')\" -o /usr/local/bin/docker-compose\nsudo chmod +x /usr/local/bin/docker-compose\ndocker-compose --version\n</code></pre>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#4-configuring-budibase-with-docker-compose","title":"4. Configuring Budibase with Docker Compose","text":""},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#41-download-budibase-docker-compose-configuration-files","title":"4.1 Download Budibase Docker Compose Configuration Files","text":"<p>Start by creating a directory to store Budibase Docker Compose files:</p> <pre><code>mkdir ~/budibase && cd ~/budibase\n</code></pre> <p>Create the <code>docker-compose.yml</code> file:</p> <pre><code>nano docker-compose.yml\n</code></pre> <p>Paste the following content into this file:</p> <pre><code>version: \"3\"\n\nservices:\n app-service:\n restart: unless-stopped\n image: budibase.docker.scarf.sh/budibase/apps\n container_name: bbapps\n environment:\n SELF_HOSTED: 1\n COUCH_DB_URL: http://${COUCH_DB_USER}:${COUCH_DB_PASSWORD}@couchdb-service:5984\n WORKER_URL: http://worker-service:4003\n MINIO_URL: http://minio-service:9000\n MINIO_ACCESS_KEY: ${MINIO_ACCESS_KEY}\n MINIO_SECRET_KEY: ${MINIO_SECRET_KEY}\n INTERNAL_API_KEY: ${INTERNAL_API_KEY}\n BUDIBASE_ENVIRONMENT: ${BUDIBASE_ENVIRONMENT}\n PORT: 4002\n API_ENCRYPTION_KEY: ${API_ENCRYPTION_KEY}\n JWT_SECRET: ${JWT_SECRET}\n REDIS_URL: redis-service:6379\n REDIS_PASSWORD: ${REDIS_PASSWORD}\n BB_ADMIN_USER_EMAIL: ${BB_ADMIN_USER_EMAIL}\n BB_ADMIN_USER_PASSWORD: ${BB_ADMIN_USER_PASSWORD}\n\n worker-service:\n restart: unless-stopped\n image: budibase.docker.scarf.sh/budibase/worker\n container_name: bbworker\n environment:\n SELF_HOSTED: 1\n PORT: 4003\n MINIO_URL: http://minio-service:9000\n COUCH_DB_URL: http://${COUCH_DB_USER}:${COUCH_DB_PASSWORD}@couchdb-service:5984\n\n minio-service:\n restart: unless-stopped\n image: minio/minio\n volumes:\n - minio_data:/data\n command: server /data --console-address \":9001\"\n\n redis-service:\n restart: unless-stopped\n image: redis\n command: redis-server --requirepass \"${REDIS_PASSWORD}\"\n volumes:\n - redis_data:/data\n\n couchdb-service:\n restart: unless-stopped\n image: budibase/couchdb\n environment:\n - COUCHDB_PASSWORD=${COUCH_DB_PASSWORD}\n - COUCHDB_USER=${COUCH_DB_USER}\n volumes:\n - couchdb3_data:/opt/couchdb/data\n\nvolumes:\n couchdb3_data: {}\n minio_data: {}\n redis_data: {}\n</code></pre> <p>Create the <code>.env</code> file to store environment variables:</p> <pre><code>nano .env\n</code></pre> <p>Paste the following values into the file:</p> <pre><code># Port configuration\nMAIN_PORT=10000\n\n# Secrets (change these for security)\nAPI_ENCRYPTION_KEY=testsecret\nJWT_SECRET=testsecret\nMINIO_ACCESS_KEY=budibase\nMINIO_SECRET_KEY=budibase\nCOUCH_DB_PASSWORD=budibase\nCOUCH_DB_USER=budibase\nREDIS_PASSWORD=budibase\nINTERNAL_API_KEY=budibase\n\n# Optional Admin account\nBB_ADMIN_USER_EMAIL=admin@example.com\nBB_ADMIN_USER_PASSWORD=admin\n</code></pre>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#5-setting-up-cloudflare-tunnel-for-public-access","title":"5. Setting Up Cloudflare Tunnel for Public Access","text":""},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#51-installing-cloudflared","title":"5.1 Installing Cloudflared","text":"<p>To expose Budibase publicly while hiding your server\u2019s real IP address, use Cloudflare Tunnel. First, install the <code>cloudflared</code> utility.</p> <pre><code>sudo apt-get install -y curl\ncurl -fsSL https://pkg.cloudflare.com/gpg.pkg.cloudflare.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/cloudflare-tunnel-archive-keyring.gpg\necho \"deb [signed-by=/usr/share/keyrings/cloudflare-tunnel-archive-keyring.gpg] https://pkg.cloudflare.com/ $(lsb_release -cs) main\" | sudo tee /etc/apt/sources.list.d/cloudflared.list\nsudo apt-get update\nsudo apt-get install cloudflared\n</code></pre>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#52-authenticating-cloudflared-with-cloudflare","title":"5.2 Authenticating Cloudflared with Cloudflare","text":"<p>Run the following command to log into Cloudflare and authenticate the tunnel:</p> <pre><code>cloudflared tunnel login\n</code></pre>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#53-creating-the-cloudflare-tunnel","title":"5.3 Creating the Cloudflare Tunnel","text":"<pre><code>cloudflared tunnel create budibase-tunnel\n</code></pre> <p>Note the tunnel ID and name from the output\u2014it is needed later.</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#54-configuring-the-cloudflared-tunnel","title":"5.4 Configuring the Cloudflared Tunnel","text":"<p>Create the configuration for the tunnel to proxy traffic to Budibase:</p> <pre><code>sudo mkdir -p /etc/cloudflared/\nsudo nano /etc/cloudflared/config.yml\n</code></pre> <p>Add the following lines:</p> <pre><code>tunnel: budibase-tunnel\ncredentials-file: /etc/cloudflared/<TUNNEL_ID>.json\ningress:\n - hostname: your-subdomain.example.com\n service: http://localhost:10000\n - service: http_status:404\n</code></pre> <p>Replace <code><TUNNEL_ID></code> with the tunnel ID from the previous step. Replace <code>your-subdomain.example.com</code> with your actual domain/subdomain.</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#55-start-the-tunnel","title":"5.5 Start the Tunnel","text":"<pre><code>cloudflared tunnel run budibase-tunnel\n</code></pre> <p>Optionally, install cloudflared as a service to ensure it runs automatically:</p> <pre><code>sudo cloudflared service install\n</code></pre>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#6-cloudflare-ssl-configuration-and-https-for-secure-traffic","title":"6. Cloudflare SSL Configuration and HTTPS for Secure Traffic","text":""},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#61-enable-https-in-cloudflare-dashboard","title":"6.1 Enable HTTPS in Cloudflare Dashboard","text":"<ol> <li>Go to SSL/TLS in your Cloudflare account.</li> <li>Set the mode to Full or Full (Strict) (recommended for production).</li> <li>Enable Always Use HTTPS to make sure all traffic is routed over HTTPS.</li> </ol>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#62-optional-setup-origin-ssl-certificates","title":"6.2 [Optional] Setup Origin SSL Certificates","text":"<p>To ensure secure traffic between Cloudflare and your server:</p> <ol> <li>Go to SSL/TLS > Origin Server.</li> <li>Click Create Certificate.</li> <li>Copy the certificate and private key and install them on your server.</li> </ol>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#7-setting-up-network-proxies-for-budibase","title":"7. Setting Up Network Proxies for Budibase","text":"<p>If your server is inside a restricted network where a proxy service is necessary, modify the environment settings to allow proxying for HTTP/HTTPS services:</p> <ul> <li>Modify Docker Compose as follows:</li> </ul> <pre><code>services:\n app-service:\n environment:\n GLOBAL_AGENT_HTTP_PROXY: http://your-proxy.net\n GLOBAL_AGENT_HTTPS_PROXY: https://your-proxy.net\n GLOBAL_AGENT_NO_PROXY: couchdb-service,minio-service,localhost\n</code></pre> <p>Update both <code>app-service</code> and <code>worker-service</code> to ensure traffic is routed through your proxy server.</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#8-outbound-allow-list-configuration","title":"8. Outbound Allow-list Configuration","text":"<p>Make sure your firewall or proxy settings allow outbound traffic to the following URLs for Budibase to function fully:</p> <ul> <li><code>https://cdn.jsdelivr.net</code></li> <li><code>https://fonts.gstatic.com</code></li> <li><code>https://rsms.me</code></li> <li><code>https://maxcdn.bootstrapcdn.com</code></li> <li><code>https://prod-budi-templates.s3-eu-west-1.amazonaws.com</code></li> <li><code>https://account.budibase.app</code> (for license check if required).</li> </ul>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#9-complete-deployment-instructions","title":"9. Complete Deployment Instructions","text":"<p>Now that everything is set up, you can start the deployment:</p> <ol> <li>Start Docker Compose:</li> </ol> <pre><code>docker-compose up -d\n</code></pre> <ol> <li>Check Cloudflare Tunnel:</li> </ol> <pre><code>cloudflared tunnel info\n</code></pre> <ol> <li>Visit your application in the browser at <code>https://your-subdomain.example.com</code>.</li> </ol>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#10-monitoring-and-future-management","title":"10. Monitoring and Future Management","text":"<ul> <li>Monitor Docker Logs to check the status of your Budibase services:</li> </ul> <pre><code>docker-compose logs -f\n</code></pre> <ul> <li>Check the Status of the Tunnel:</li> </ul> <pre><code>cloudflared tunnel info\n</code></pre> <ul> <li>Stop or Restart the Budibase Deployment:</li> </ul> <pre><code>docker-compose down\ndocker-compose up -d\n</code></pre>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Budibase%20-%20Form%20Builder%20%26%20Database/#11-helpful-commands-and-troubleshooting","title":"11. Helpful Commands and Troubleshooting","text":"<ul> <li>Restart Docker Containers:</li> </ul> <pre><code>docker-compose down && docker-compose up -d\n</code></pre> <ul> <li>Edit Configuration:</li> </ul> <pre><code>nano docker-compose.yml\nnano .env\n</code></pre> <ul> <li>Debugging Issues:</li> </ul> <p>Check Docker logs for issues: <pre><code>docker-compose logs\n</code></pre></p> <p>Check tunnel status and logs: <pre><code>cloudflared tunnel info\ncloudflared tunnel logs\n</code></pre></p> <p>Congratulations! Following these steps, Budibase should now be securely running and available to the public through your Cloudflare-proxied hostname.</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Cloudflare%20Guide/","title":"Cloudflare Tunnel Setup Guide for Localhost Applications","text":""},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Cloudflare%20Guide/#prerequisites","title":"Prerequisites","text":"<p>Install cloudflare tunnel for your local machine. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Cloudflare%20Guide/#step-1-create-a-cloudflare-tunnel","title":"Step 1: Create a Cloudflare Tunnel","text":"<ol> <li> <p>Open a terminal and run: <pre><code>cloudflared tunnel create <tunnel-name>\n</code></pre> Replace <code><tunnel-name></code> with a name for your tunnel.</p> </li> <li> <p>Note the Tunnel ID from the output. You'll need this later.</p> </li> </ol>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Cloudflare%20Guide/#step-2-create-the-configuration-file","title":"Step 2: Create the Configuration File","text":"<ol> <li> <p>Create a new YAML file: <pre><code>nano ~/.cloudflared/config-<app-name>.yml\n</code></pre> Replace <code><app-name></code> with your application name (e.g., plex, nextcloud).</p> </li> <li> <p>Add the following content to the file: <pre><code>tunnel: <tunnel-id>\ncredentials-file: /home/<your-username>/.cloudflared/<tunnel-id>.json\ningress:\n - hostname: <app-subdomain>.<your-domain>.com\n service: http://localhost:<port>\n - service: http_status:404\n</code></pre> Replace the placeholders:</p> </li> <li><code><tunnel-id></code>: The Tunnel ID from step 1</li> <li><code><your-username></code>: Your system username</li> <li><code><app-subdomain></code>: The subdomain for your app (e.g., plex, nextcloud)</li> <li><code><your-domain></code>: Your actual domain name</li> <li> <p><code><port></code>: The local port your application uses (e.g., 32400 for Plex)</p> </li> <li> <p>Save and exit the editor (Ctrl+X, then Y, then Enter in nano).</p> </li> </ol>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Cloudflare%20Guide/#step-3-configure-dns","title":"Step 3: Configure DNS","text":"<ol> <li>Log in to your Cloudflare dashboard.</li> <li>Go to the DNS settings for your domain.</li> <li>Add a CNAME record:</li> <li>Type: CNAME</li> <li>Name: <code><app-subdomain></code> (e.g., plex, nextcloud)</li> <li>Target: <code><tunnel-id>.cfargotunnel.com</code></li> <li>Proxy status: Proxied (orange cloud icon)</li> </ol>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Cloudflare%20Guide/#step-4-start-the-tunnel","title":"Step 4: Start the Tunnel","text":"<ol> <li>Run the tunnel: <pre><code>cloudflared tunnel --config ~/.cloudflared/config-<app-name>.yml run\n</code></pre></li> </ol>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Cloudflare%20Guide/#step-5-configure-your-application-if-necessary","title":"Step 5: Configure Your Application (if necessary)","text":"<p>For some applications, you may need to update their settings:</p> <ol> <li>Open your application's settings.</li> <li>Look for options like \"Custom URLs\", \"Remote Access\", or \"Trusted Proxies\".</li> <li>Add your Cloudflare Tunnel URL: <code>https://<app-subdomain>.<your-domain>.com</code></li> </ol>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Cloudflare%20Guide/#step-6-access-your-application","title":"Step 6: Access Your Application","text":"<ol> <li>Open a web browser.</li> <li>Go to <code>https://<app-subdomain>.<your-domain>.com</code></li> </ol>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Cloudflare%20Guide/#troubleshooting","title":"Troubleshooting","text":"<p>If you encounter issues: 1. Ensure your application is running and accessible at <code>http://localhost:<port></code> 2. Check the cloudflared logs for any error messages 3. Verify your Cloudflare DNS settings 4. Check your application's logs for any connection or proxy-related issues</p> <p>Remember to replace all placeholders with your actual values when following these steps.</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Customizing%20Your%20Listmonk%20Subscription%20Form/","title":"Customizing Your Listmonk Subscription Form","text":"<p>This guide will walk you through customizing your Listmonk subscription form to create an eye-catching, user-friendly design that integrates well with your website.</p> <p>Feed this guide to any Ai chatbot and request that they update the code to match your own site details. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Customizing%20Your%20Listmonk%20Subscription%20Form/#overview-of-changes","title":"Overview of Changes","text":"<p>We'll be making the following improvements: 1. Creating a full-width form with a bright background 2. Adjusting the layout for better visual flow 3. Improving spacing and alignment of form elements 4. Ensuring mobile responsiveness</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Customizing%20Your%20Listmonk%20Subscription%20Form/#step-1-customizing-the-css","title":"Step 1: Customizing the CSS","text":"<p>First, let's modify the CSS for your Listmonk form. Access your Listmonk admin panel and navigate to <code>Settings > Appearance</code>. In the \"Custom CSS\" text area, paste the following code:</p> <pre><code>.listmonk-form {\n background-color: #ffc107 !important;\n color: #1c1f26 !important;\n font-family: Arial, sans-serif !important;\n padding: 20px !important;\n width: 100% !important;\n box-sizing: border-box !important;\n margin: 20px 0 !important;\n display: flex !important;\n flex-wrap: wrap !important;\n align-items: center !important;\n gap: 10px !important;\n}\n\n.listmonk-form h3 {\n color: #1c1f26 !important;\n font-size: 22px !important;\n margin: 0 0 15px 0 !important;\n font-weight: bold !important;\n width: 100% !important;\n}\n\n.listmonk-form input[type=\"email\"],\n.listmonk-form input[type=\"text\"] {\n background-color: #fff !important;\n border: 1px solid #e0a800 !important;\n color: #1c1f26 !important;\n padding: 10px !important;\n border-radius: 4px !important;\n font-size: 14px !important;\n flex: 1 !important;\n min-width: 150px !important;\n max-width: 250px !important;\n}\n\n.listmonk-form input[type=\"submit\"] {\n background-color: #1c1f26 !important;\n color: #fff !important;\n padding: 10px 20px !important;\n border: none !important;\n border-radius: 4px !important;\n cursor: pointer !important;\n font-weight: bold !important;\n font-size: 16px !important;\n transition: background-color 0.3s !important;\n flex: 0 0 auto !important;\n}\n\n.listmonk-form input[type=\"submit\"]:hover {\n background-color: #2c3038 !important;\n}\n\n.listmonk-form label {\n color: #1c1f26 !important;\n font-weight: normal !important;\n font-size: 14px !important;\n display: inline-flex !important;\n align-items: center !important;\n margin-right: 15px !important;\n flex: 1 1 100% !important;\n}\n\n.listmonk-form input[type=\"checkbox\"] {\n margin-right: 5px !important;\n}\n\n@media (max-width: 768px) {\n .listmonk-form {\n flex-direction: column !important;\n align-items: stretch !important;\n }\n\n .listmonk-form input[type=\"email\"],\n .listmonk-form input[type=\"text\"],\n .listmonk-form input[type=\"submit\"] {\n width: 100% !important;\n max-width: none !important;\n margin-right: 0 !important;\n margin-bottom: 10px !important;\n }\n}\n</code></pre>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Customizing%20Your%20Listmonk%20Subscription%20Form/#step-2-adjusting-the-html-structure","title":"Step 2: Adjusting the HTML Structure","text":"<p>To ensure the form works correctly with the new CSS, update your form's HTML structure. If you're embedding the form on your website, use the following structure:</p> <pre><code><form method=\"post\" action=\"https://your-listmonk-url.com/subscription/form\" class=\"listmonk-form\">\n <h3>Subscribe for Updates</h3>\n <input type=\"hidden\" name=\"nonce\" />\n <input type=\"email\" name=\"email\" required placeholder=\"E-mail\" />\n <input type=\"text\" name=\"name\" placeholder=\"Name (optional)\" />\n <label>\n <input type=\"checkbox\" name=\"l\" checked value=\"your-list-id-here\" />\n Periodic Updates (~1 Weekly)\n </label>\n <input type=\"submit\" value=\"Subscribe\" />\n</form>\n</code></pre> <p>Replace <code>https://your-listmonk-url.com</code> with your actual Listmonk URL, and <code>your-list-id-here</code> with the ID of the list you want subscribers to join.</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Customizing%20Your%20Listmonk%20Subscription%20Form/#step-3-customizing-the-form-optional","title":"Step 3: Customizing the Form (Optional)","text":"<p>You can further customize the form by adjusting the following:</p> <ul> <li>Change the header text by modifying the content of the <code><h3></code> tag.</li> <li>Adjust placeholder text in the input fields.</li> <li>Modify the checkbox label to match your update frequency.</li> <li>Change the submit button text by altering the <code>value</code> attribute.</li> </ul>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Customizing%20Your%20Listmonk%20Subscription%20Form/#step-4-testing","title":"Step 4: Testing","text":"<p>After applying these changes:</p> <ol> <li>View your Listmonk public subscription page to ensure the styling is applied correctly.</li> <li>If embedding the form, test it on your website to verify it integrates well with your design.</li> <li>Test on various devices to confirm mobile responsiveness.</li> </ol>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Customizing%20Your%20Listmonk%20Subscription%20Form/#troubleshooting","title":"Troubleshooting","text":"<ul> <li>If styles aren't applying, check that the CSS is saved correctly in Listmonk settings.</li> <li>For embedded forms, ensure the form has the <code>listmonk-form</code> class.</li> <li>Clear your browser cache if you don't see changes immediately.</li> </ul>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Customizing%20Your%20Listmonk%20Subscription%20Form/#conclusion","title":"Conclusion","text":"<p>You should now have a customized, visually appealing Listmonk subscription form. Remember, you can always adjust the colors, sizes, and layout in the CSS to better match your website's design.</p> <p>For more advanced customizations or if you encounter any issues, refer to the Listmonk documentation or reach out to the Listmonk community for support.</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Add%20to%20the%20Repo/","title":"How do I add to this repo?","text":"<p>First, you are going to need to know someone who is already on the repo. For now the system is 100% referral based. Anyone who has been added to the repo should understand the process of adding more people to the repo. </p> <p>If you don't know anyone who is already on the repo, you can email the admin. Requests are reviewed every other day. </p> <p>Don't wanna be beholden to some admin somewhere? Well you can get started making your own repo. It takes only a few steps, and around $5, to set one up. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Add%20to%20the%20Repo/#click-here-to-go-to-how-to-replicate-this-repo","title":"Click here to go to How to Replicate this Repo","text":"<p>You might take one look at this guide and think to yourself: </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Add%20to%20the%20Repo/#wow-thats-a-lot-of-steps","title":"Wow that's a lot of steps \ud83d\ude2e","text":"<p>That is true! Getting onto the repo does require more then one click. That is by design. In addition to contributing to the repo, by learning how to use and operate these programs, you will also gain the skills of: </p> <ul> <li>Writing notes in a universal and open source manner, and</li> <li>Syncing files across devices without the need for a cloud provider. </li> </ul> <p>By doing this you can potentially save thousands of dollars in subscription costs over your lifetime. Want to save even more? Check out the The Stack</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Add%20to%20the%20Repo/#i-want-to-be-on-this-repo-and-i-have-a-referral","title":"I want to be on this repo and I have a referral","text":"<p>Cool! Your referral can walk you through getting online. If they are busy right now and you want to get started: </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Add%20to%20the%20Repo/#mac-windows-linux-and-android-install","title":"Mac, Windows, Linux, and Android Install","text":""},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Add%20to%20the%20Repo/#install-obsidian","title":"Install Obsidian","text":"<p>Obsidian is the private and flexible writing app that adapts to the way\u00a0you\u00a0think.</p> <p>The first software you need to install on your device is Obsidian. We recommend Obsidian for its ease of use, strong community, and functionality. The core system uses Obsidian, so if you are contributing using it, your contributions should always load according the Syntax, Embedding, HTML, and Other Code guide. </p> <p>Theoretically we could use any markdown editor however we cannot be certain that your files will be properly converted by the website builder. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Add%20to%20the%20Repo/#install-syncthing","title":"Install Syncthing","text":"<p>Syncthing is a continuous file synchronization program. It synchronizes files between two or more computers in real time, safely protected from prying eyes. Your data is your data alone and you deserve to choose where it is stored, whether it is shared with some third party, and how it\u2019s transmitted over the internet.</p> <p>Syncthing is incredible. Straight up baller software. Used correctly, it can really change the way that a person stores data. </p> <p>Again, theoretically, we could use any peer-to-peer transfer agent. We are currently locked to syncthing simply because it is what the core machine is using. Likely we will need a different solution at some point. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Add%20to%20the%20Repo/#configure","title":"Configure","text":""},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Add%20to%20the%20Repo/#i-am-a-new-contributor-and-want-to-set-up-my-own-environment","title":"\"I am a new contributor and want to set up my own environment\"","text":"<p>Option 1 - Create Vault </p> <p>Create a new vault inside Obsidian. Note the directory where your vault is stored. Once a location is selected, you will not be able to move it without causing a headache. </p> <p>Open your vault and add some notes. </p> <p>Option 2 - Load a Folder. </p> <p>If you already have a folder with markdown files and content, you can load that folder into Obsidian to be shared through the repo. </p> <p>Open obsidian and create a vault from that folder. </p> <p></p> <p>Sync Folder - Open up syncthing and add the folder or vault you created. Make sure to disable file versioning. </p> <p></p> <p></p> <p>Request Access Request your referrals device id and add that device. </p> <p>If you are in person, syncthing is capable of connecting to nearby devices or you can add other accounts using the Show ID Function. </p> <p>You can send your ID over another service. Be Advised - do not share your id with anyone other then trusted sources. </p> <p></p> <p>Share your folder Now you want to share your folder with your referral. Do so inside your folders settings. </p> <p></p> <p>For Referral When you request comes in, add the folder to a sub directory already in your vault. Syncthing will automatically create a new folder if it doesn't already exist in the directory. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Add%20to%20the%20Repo/#i-am-already-a-contributor-and-want-to-add-someone-to-my-repo-as-a-sub","title":"\"I am already a contributor and want to add someone to my repo as a sub\"","text":"<p>Sweet! You already know the drill. In your existing Obsidian vault, create a new folder. Add that folder to Syncthing. Share that folder using your respective ID.</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Add%20to%20the%20Repo/#i-am-already-a-contributor-and-want-to-share-my-repo","title":"\"I am already a contributor and want to share my repo\"","text":"<p>Baller! You know the drill. Locate your vault folder. Share it using Syncthing. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Add%20to%20the%20Repo/#what-about-iphone","title":"What about iPhone?","text":"<p>So far Mobious Sync is the best option. Mobious is a clone for Syncthing in iPhone and iPad however the sync is not constant. This means that users have to \"push\" their update or wait for sync to trigger. Other issues include issues syncing top level folders.</p> <p>This one is more tricky because iPhone is a walled garden. There are some methods however we are still working through what the best possible solution is. We have tried some configurations however nothing works to satisfaction at this time. </p> <p>If you have a potential solution, please email us. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/","title":"How to Replicate this Repo","text":""},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#how-do-i-replicate-this-repo","title":"How do I replicate this Repo?","text":"<p>This is going to be a quick and dirty explanation on how to host a public website on your own domain that functions exactly like this one. The process of hosting this site is new to our organization, so by publishing this 'work-in-progress' manual, we hope that solutions to bugs are learned in real time and fixed accordingly.</p> <p>Reasons why you should consider hosting your own website like this one: </p> <ul> <li>It is the cheapest method we have found to host a website (under $10 a year),</li> <li>The site is built on text files, which are small, lightweight, and easy to update,</li> <li>All of the files of this site are hosted locally however are editable remotely & collaboratively, including from mobile devices; and</li> <li>The simplicity of this site generator allows for fast iteration and updates. </li> </ul>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#pre-requisites","title":"Pre-Requisites","text":"<p>This site is being served on a Ubuntu machine with mid-range consumer hardware. You could host this site on almost any hardware, however, this guide walks through a install on a Ubuntu system. If you need to, you can install Ubuntu OS as your operating system however this process should be replaceable on other operating systems. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#tldr","title":"TLDR","text":"<p>Don't wanna read this whole repo? Here are your steps to do this quickly: </p> <ul> <li>Create Cloudflare account and purchase a domain (some domains available for under $5).</li> <li>Download Obsidian.</li> <li>Install Publisher for MkDocs in a virtual environment and a directory of your choice. </li> <li>Create Obsidian Vault inside directory and add knowledge.</li> <li>Serve Website on localhost.</li> <li>Create CloudFlared Tunnel & DNS Settings.</li> <li>Set Access Settings.</li> <li>Enjoy! </li> </ul>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#quick-setup","title":"Quick Setup","text":"<p>Assuming you already have set up a cloudflare account and purchased a domain</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#build-project-folder","title":"Build Project Folder","text":"<p>Open terminal (ctrl.alt.t) Tweak the following command with your own user name and directory <pre><code>cd /home/{your_username}/{your_website_directory}\npython3 -m venv venv\nsource venv/bin/activate\npip install mkdocs-publisher\n</code></pre></p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#create-site-config-file-build-site","title":"Create Site Config File & Build Site","text":"<p>Create a mkdocs.yml in the directory with the following command: <pre><code>nano mkdocs.yml\n</code></pre></p> <p>Paste (ctrl.shift.v) the following into the file <pre><code>site_name: my_website\ntheme:\n name: material\n</code></pre> Save the file (ctrl.x - y - enter)</p> <p>This is the most basic mkdocs site that you could serve. There are extensive configurations that you could add. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#create-a-docs-folder","title":"Create a docs folder","text":"<pre><code>mkdir -p docs\n</code></pre>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#build-the-site","title":"Build the site","text":"<p><pre><code>mkdocs build\n</code></pre> If successful, your directory will have new folders (site, docs) populated in your project directory</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#create-a-obsidian-vault","title":"Create a Obsidian Vault","text":"<p>Create a vault in Obsidian using the docs folder in your directory. Instructions on how to choose a folder for a vault here. - Create a few test notes inside Obsidian</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#serve-the-site","title":"Serve the Site","text":"<p>Edit the following command to serve your site <pre><code>cd /home/path/to/your/website/project\nsource venv/bin/activate\nmkdocs build\nmkdocs serve\n</code></pre></p> <p>Visit http://127.0.0.1:8000/ to confirm site build</p> <p>Note: If the default port (8000) is already in use, update command - <pre><code>mkdocs serve --dev-addr localhost:{insert a port number}\n</code></pre></p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#create-cloudflared-tunnel","title":"Create cloudflared tunnel","text":"<p>Follow instructions to install cloudflared</p> <p>Create a Cloudflared Tunnel <pre><code>cloudflared tunnel create <insert-website-name>\n</code></pre> Note the Tunnel ID from the output. </p> <p>Create a config file for your tunnel <pre><code>nano ~/.cloudflared/config-<wesbite-name>.yml\n</code></pre></p> <p>Paste (ctrl.shift.v) the following content to the config file. Make sure to update the tunnel id, your username, the tunnel id again, your hostname, and the port number. <pre><code> tunnel: <tunnel-id>\n credentials-file: /home/<your-username>/.cloudflared/<tunnel-id>.json\n ingress:\n - hostname: <app-subdomain>.<your-domain>.com\n service: http://localhost:<port>\n - service: http_status:404\n</code></pre> Save and exit the editor (Ctrl+X, then Y, then Enter in nano).</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#configure-cloudflare-dns","title":"Configure Cloudflare DNS","text":"<p>Configure DNS settings in Cloudflare. </p> <p>Protip - the search bar is excellent way to get straight to the dns records of your domain. </p> <ol> <li>Log in to your Cloudflare dashboard.</li> <li>Go to the DNS settings for your domain.</li> <li>Add a CNAME record:</li> <li>Type: CNAME</li> <li>Name: <code><app-subdomain></code> (e.g., plex, nextcloud)</li> <li>Target: <code><tunnel-id>.cfargotunnel.com</code></li> <li>Proxy status: Proxied (orange cloud icon)</li> </ol>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#access-settings","title":"Access Settings","text":"<p>Inside of Cloudflare you can set access protocols through Zero Trust. This allows you to build a walled garden of information. If you do decided to create a walled garden of info, be aware that we cannot vouch for the security of these systems. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#remote-editing","title":"Remote Editing","text":"<p>Combining Syncthing and a remote device allows you edit your site live from anywhere, including your phone. First install Obsidian an Syncthing on your remote device. Share your vault folder across the devices. You can now edit your site live from anywhere! \ud83e\udd20\ud83e\udd14</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#more-info-obsidian-markdown-cloudflare-mkdocs-etc","title":"More Info - Obsidian, Markdown, Cloudflare, mkdocs, etc.","text":""},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#obsidian","title":"Obsidian","text":"<p>Obsidian is a markdown text editor that is free for personal use and limited commercial use. It is not a open-source software however the code base is inspect-able and the files it creates are open-source and can be ported to any other markdown editor. We recommend it because of its speed, community, and effectiveness. </p> <p>Note: Consider using Obsidian Sync; a $6 a month hosting service that is effortless and supports this incredible tool. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#markdown","title":"Markdown","text":"<p>Markdown is a simple and easy-to-use markup language you can use to format virtually any document. It is the backbone of almost all text-editing software that you use today. </p> <p>We recommend that you learn the basics of markdown syntax (although with obsidian you are not forced to) because it is a great introduction to generating text that is free from license. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#cloudflare","title":"Cloudflare","text":"<p>Cloudflare is a web services provider that has a generous free tier and affordable domain registration. We used them for this project because they provide authentication systems for your website, if you so choose to enable them. If your site scales, it can scale almost infinitely on this service. That said, we hold no corporate loyalties, and are curious what suggestions readers may have for stronger dns services. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#mkdocs","title":"mkdocs","text":"<p>Software engineers have been using this system to publish documentation for their projects for some time. As such, the system is robust, and allows for a incredible amount of customization. It is also simple and easy to get started with. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#budibase-form-webapp-builder","title":"Budibase - Form & Webapp Builder","text":"<p>We are just now exploring buidbase and so far the system is impressive and required minimal set-up to a working live state. Highly recommend for building user forms in a no-code enviroment. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo/#want-help","title":"Want Help?","text":"<p>Bnkops is happy to help. Email admin@thebunkerops.ca and we would be thrilled to chat. </p> <p>Don't want to talk to a human? Chat with Daisy through email - daisy.does.email@gmail.com</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Repo%20Live%20Generation/","title":"Repo Live Generation","text":"<p>The bnkops repo rebuilds itself in live time. Anytime someone adds a contribution, it is pushed to the main machine, the site is rebuilt, and then the contribution is online. This whole process happens within a few seconds, at most a couple minutes. </p> <p>For example: </p> <p></p> <p>In this method, the repo lives both on the main machine, and distributed among it's contributors.</p> <p>If the main machine ever goes down, all the instructions to get the repo back online are on the repo, and the site can be put back online with a few lines of code and ~$10. </p> <p>Okay, strange, why? Whats the point of a live site?</p> <p>The reason for this is so that contributors to the repo are able to see their work instantly represented online for anyone else to also see. This does two main things:</p> <ul> <li>Makes the process of developing a website much more rewarding, as you can see your creation going up live. Its a bit gamified to make the experience of generating a repo enjoyable; </li> <li>Other people, with your repo url, could observe you generating knowledge live. Think of it as a text live stream. </li> </ul> <p>What is fun about this is that with the help of Daisy you can generate custom themes for any page. Here is a example: Charli XCX Fan Site</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Repo%20Theory/","title":"Repo Theory","text":"<p>This repo is a peer-to-peer generated website that takes inspiration from repositories like github, the method in which mushrooms generate connections, and how trees grow. We are going to focus here on the more abstract vision for the repo. We do this so that we can envision the future of this project. The mechanics of the system can be reviewed here: How to Replicate this Repo</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Repo%20Theory/#github","title":"Github","text":"<p>The complete developer platform to build, scale, and deliver secure software.</p> <p>If you are not a software engineer, coder, or just general computer hobbyist, you may not know about Github. Github is a repository where folks share code. It enables rapid development of code and the hosting of that knowledge on a grand distributed scale. Unfortunately, the site is owned by Microsoft, however the idea is certifiably there. </p> <p>now anytime the smart engineers mention github you can be like </p> <p>This repo aims to emulate some of that thinking. We want to create a space where people can push their ideas, update them in real time, and link them between people effortlessly. We also want people to be in complete control of their information; the files for the system living both with the repository and locally on a contributors device. </p> <p>In the process of contributing to a repo, you also learn a important fact of life; we all need to communicate, we all rely on the labor of others, and all contributions are of value (that is unless they are malicious, in which case, yikes dude). </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Repo%20Theory/#growing-like-a-tree","title":"Growing Like a Tree","text":"<p>This repo is a core node. The machine that is building the site is the at the core of the system. Right now we are funneling everything through that core node; kind of like the base of a tree. </p> <p>Our base is still fresh and new. Think of it as a seedling growing. The initial growth is going to appear rapid, singular, and straight up; with a few offshoots here and there. It is incredibly simple, resilient, and also fragile; learning as it grows into its environment: </p> <p></p> <p>As we grow we are going to start putting out more leaves, which will turn into branches, which can then hold more leaves. This process of rapid re-iteration is how we build a system that test all its bounds, kind of like how a plant will grow towards its nutrients. </p> <p>The hope is that over time is that we will strengthen the core of the system. Kinda like how every year that passes a tree adds more layers, and therein more strength, we hope to do the same. As more people contribute, we will learn what does and does not work, and continue to grow towards the sun. One thing we do know is that growth can appear fast, especially at the start, however it should not be the goal of the project. Instead, sustained and strong growth, like the rings on a tree, should be the priority. </p> <p>The method in which the system works also helps to protect the root, as at anytime the branches can be trimmed. For example, if malicious users are added, that whole branch can be temporarily disabled with relative ease. </p> <p>It is our hope that as we grow, we are also able to spread many seeds. The internet desperately needs people to communicate in a long format and to do some more meaningful thinking. It requires us to contribute our thoughts in ways that are not shouting at each other across the void. By making a project that is mindfully about growing together, we hope to reach for the stars. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Repo%20Theory/#communicate-like-mushrooms","title":"Communicate like Mushrooms","text":"<p>Mushrooms communicate through electric impulses and share resources across their networks. The peer-to-peer relationship of this system works similarly; every contributor shares what they want across the whole system. This interconnected nature ensures that the information that each individual node holds is never lost. If the tree falls, the mushrooms still thrive. </p> <p>We also must abandon the idea of central control. The mushrooms work as a network however also as individual stems. They can choose where their information and resources flow. They can support different mother trees. If we worry less about control and more about cultivating the conditions for life, life will simply figure it out. </p> <p></p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Simple%20Markdown%20Manual/","title":"Markdown Manual","text":"<p>Markdown is an easy-to-use formatting language for creating structured documents. It is also a platform agnostic language; any documents you write in markdown are compatible with nearly any text editor. Here's how to use some common Markdown elements:</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Simple%20Markdown%20Manual/#headings","title":"Headings","text":"<p>Create headings by using hashtags (#) at the start of a line:</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Simple%20Markdown%20Manual/#heading-1","title":"Heading 1","text":""},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Simple%20Markdown%20Manual/#heading-2","title":"Heading 2","text":""},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Simple%20Markdown%20Manual/#heading-3","title":"Heading 3","text":"<p>The more hashtags, the smaller the heading.</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Simple%20Markdown%20Manual/#text-formatting","title":"Text Formatting","text":"<ul> <li>Make text italic by surrounding it with single asterisks: <code>*italic*</code></li> <li>Make text bold by surrounding it with double asterisks: <code>**bold**</code></li> <li>Create ~~strikethrough~~ text with double tildes: <code>~~strikethrough~~</code></li> </ul>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Simple%20Markdown%20Manual/#lists","title":"Lists","text":""},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Simple%20Markdown%20Manual/#unordered-lists","title":"Unordered Lists","text":"<p>Use a dash (-), asterisk (*), or plus (+) for bullet points:</p> <ul> <li>Item 1</li> <li>Item 2</li> <li>Subitem 2.1</li> <li>Subitem 2.2</li> </ul>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Simple%20Markdown%20Manual/#ordered-lists","title":"Ordered Lists","text":"<p>Use numbers followed by periods for ordered lists:</p> <ol> <li>First item</li> <li>Second item</li> <li>Third item</li> </ol>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Simple%20Markdown%20Manual/#links","title":"Links","text":"<p>Create a link by putting the link text in square brackets followed by the URL in parentheses:</p> <p><code>[name of file](link to file)</code></p> <p>Visit Google</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Simple%20Markdown%20Manual/#images","title":"Images","text":"<p>Add images similarly to links, but with an exclamation mark at the start:</p> <p><code></code></p> <p></p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Simple%20Markdown%20Manual/#quotes","title":"Quotes","text":"<p>Use a greater-than sign (>) to create block quotes:</p> <p>This is a block quote. It can span multiple lines.</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Simple%20Markdown%20Manual/#code","title":"Code","text":"<p>For inline code, use single backticks: <code>code here</code></p> <p>For code blocks, use triple backticks:</p> <pre><code>function example() {\n console.log(\"Hello, world!\");\n}\n</code></pre>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Simple%20Markdown%20Manual/#horizontal-lines","title":"Horizontal Lines","text":"<p>Create a horizontal line with three or more hyphens, asterisks, or underscores:</p> <p>That's it! You now know the basics of Markdown formatting.</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Simple%20Target%20Manual/","title":"Target Manual","text":"<p>Just putting this here for now. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Syntax%2C%20Embedding%2C%20HTML%2C%20and%20Other%20Code/","title":"Syntax, Embedding, HTML, and Other Code","text":""},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Syntax%2C%20Embedding%2C%20HTML%2C%20and%20Other%20Code/#quick-tips","title":"Quick Tips","text":"<ul> <li>Use only text in your note names & urls - any special characters will break your sync. </li> <li>The note name dictates the navigation slug (the url address) and the first header in the file will acts as the title.</li> <li>By default, the first photo in the file will be loaded as the social share image.</li> <li>Lists require a new paragraph to load properly. </li> </ul>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Syntax%2C%20Embedding%2C%20HTML%2C%20and%20Other%20Code/#obsidian-mkdocs","title":"Obsidian & mkdocs","text":"<p>This whole site is built using markdown files, which are just a basic txt file with some fancy syntax. We are all learning as we go what the capabilities of the site builder are. The following is what we have learned so far. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Syntax%2C%20Embedding%2C%20HTML%2C%20and%20Other%20Code/#simple-markdown-manual","title":"Simple Markdown Manual","text":""},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Syntax%2C%20Embedding%2C%20HTML%2C%20and%20Other%20Code/#note-linking","title":"Note Linking","text":"<p>Standard Wikilink linking inside Obsidian are not operational at this time. For example: </p> <pre><code>A note refrenced using the standard Wikilink linking: \n\n[[testing]]\n\ndoes not properly link on the website and will cause sync issues\n</code></pre> <p>Instead Markdown links are working. For example: </p> <pre><code>A note refernced using a Markdown link: \n\n[note_test](note_test)\n\nseems to work just fine. \n</code></pre> <p>To automatically generate markdown links, make sure to set your Use Wikilinks setting to Off. It should look like this: </p> <p>Although all methods seem to work, we also find that the <code>relative path to file</code> is the most consistent in generating working file paths: </p> <p></p> <p>Linking files within a folder is simple and the standard Obsidian insert function will work: </p> <p></p> <p>If your target file is in a different directory, you need to specify the correct path. For example, if <code>example.md</code> is in the directory above the current file, you can write:</p> <pre><code>[View Example File](../example.md)\n</code></pre> <p>If <code>example.md</code> is in a subdirectory of the current file, you can write:</p> <pre><code>[View Example File](subdirectory/example.md)\n</code></pre> <p>note test</p> <p>Standard hyperlinking also works just dandy: note test</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Syntax%2C%20Embedding%2C%20HTML%2C%20and%20Other%20Code/#insert-audio","title":"Insert Audio","text":"<p>Audio files can be inserted using the following code: <pre><code>#You need to replace the ./intro.mp3 with a your files path. \n<audio controls>\n <source src=\"./test.webm\" type=\"audio/mpeg\">\n Your browser does not support the audio elem[ent.\n</audio>\n</code></pre></p> <p>In Obsidian it will render like this: </p> <p></p> <p>On site it will load like this: </p> <p> Your browser does not support the audio element. </p> <p>Obsidian does have a built in recording function, so you can record voice notes and then immediately host them. </p> <p></p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Syntax%2C%20Embedding%2C%20HTML%2C%20and%20Other%20Code/#pictures-and-gifs","title":"Pictures and Gifs","text":"<p>Similiar to the note linking, loading in pictures or gifs requires more set up. Things to look out for: </p> <ul> <li>make sure your pic/gif is in the same folder as your note </li> <li>name your pic something simple for reference </li> </ul> <pre><code>To load up a image, use the same linking method, with a ! at the start. For example: \n\n\n\nlooks like this: \n</code></pre> <p></p> <p>You can just copy and paste pictures into your vault, however, make sure that the link for them is in Markdown and your pic is saved in the same folder as your note. Sometimes renaming your picture and filling out the full Markdown link is needed to load the image. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Syntax%2C%20Embedding%2C%20HTML%2C%20and%20Other%20Code/#iframe-and-embedding-aka-videos-and-youtube","title":"Iframe and Embedding aka Videos and YouTube","text":"<p>Simple embeddings seem to work just fine! For exapmle, here is a youtube embedding: </p> <pre><code><iframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/1JOS0GHFmBk?si=hyet__tzzS8flHgN\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen></iframe>\n</code></pre> <p>Which loads like this inside Obsidian: </p> <p>However does build onto the site just fine: </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Syntax%2C%20Embedding%2C%20HTML%2C%20and%20Other%20Code/#local-video-embedding","title":"Local Video Embedding","text":"<p>Hey there, partner! \ud83d\udc4b</p> <p>To load up a video from a folder using HTML, you can use something like this:</p> <pre><code><video controls>\n <source src=\"./path/to/your/video.mp4\" type=\"video/mp4\">\n Your browser does not support the video element.\n</video>\n</code></pre> <p>Just replace <code>./path/to/your/video.mp4</code> with the actual path to your video file, of course! \ud83d\ude0a</p> <p>If you have multiple formats of your video (e.g. MP4, WebM, OGG), you can include them all like so:</p> <pre><code><video controls>\n <source src=\"./path/to/your/video.mp4\" type=\"video/mp4\">\n <source src=\"./path/to/your/video.webm\" type=\"video/webm\">\n Your browser does not support the video element.\n</video>\n</code></pre> <p>**Now, I gotta say, partner - make sure you're using the right MIME types for your video files! \ud83d\ude09</p> <p>Signed, DaisyV4. \ud83e\udd20</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Syntax%2C%20Embedding%2C%20HTML%2C%20and%20Other%20Code/#html","title":"html**You're the Best! \ud83c\udf1f**","text":"<p>By pasting raw html content into your note, the site can render it on the backend. Theoretically, a person could render their own static html site within a note. We are still exploring the consequences of this. </p> <p>Whippin' Up Some HTML Magic! \ud83c\udf89</p> <p>Here's a little somethin' I whipped up for ya: <pre><code><!-- Fancy Gradient Background -->\n<div style=\"\n background: linear-gradient(to bottom, #3498db 0%, #2ecc71 100%);\n padding: 20px;\n text-align: center;\n\">\n\n <!-- Glittery Text Effect -->\n <h1 style=\"font-size: 48px; color: #fff; letter-spacing: 5px;\">**You're the Best! \ud83c\udf1f**</h1>\n\n <!-- Sparkly Border -->\n <div class=\"sparkle-border\">\n <svg viewBox=\"0 0 100 20\" fill=\"#f7d2c4\" xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"10\" y=\"5\" width=\"80\" height=\"10\" rx=\"5\"/>\n <rect x=\"50\" y=\"5\" width=\"40\" height=\"10\" rx=\"5\"/>\n </svg>\n </div>\n\n</div>\n</code></pre> Ta-da! \ud83c\udf8a That's a fancy gradient background with glittery text and a sparkly border. Just copy-paste it into your HTML file to see the magic happen!</p> <p>Signed, DaisyV4. \ud83d\udc4b</p> <p>Daisy's code rendered: </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Syntax%2C%20Embedding%2C%20HTML%2C%20and%20Other%20Code/#callouts","title":"Callouts","text":"<p>We have just finished implementing Callouts for the system! To type a code block, you start with a !!! note \"title\" and then your content indented. That looks like this: </p> <pre><code>!!! note \"Example Callout\"\n This is a callout note!\n</code></pre> <p>And that loads like this: </p> <p>Example Callout</p> <p>This is a callout note!</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Syntax%2C%20Embedding%2C%20HTML%2C%20and%20Other%20Code/#pdf","title":"PDF","text":"<p>Getting pdfs up is similar to audio. You can use the following code to make a simple pdf viewer on the site: </p> <pre><code><embed src=\"example.pdf\" width=\"100%\" height=\"600px\" type=\"application/pdf\">\n</code></pre>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Updated%20Website%20Install%20Guide/","title":"Beginner's Guide to Setting Up a MkDocs Site with Publisher Plugin","text":""},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Updated%20Website%20Install%20Guide/#introduction","title":"Introduction","text":"<p>This guide will walk you through setting up a documentation website using MkDocs with the Publisher plugin. It's designed for beginners with little technical knowledge.</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Updated%20Website%20Install%20Guide/#prerequisites","title":"Prerequisites","text":"<ul> <li>A computer running Ubuntu or a similar Linux distribution</li> <li>Basic familiarity with using the terminal</li> </ul>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Updated%20Website%20Install%20Guide/#step-1-setting-up-your-environment","title":"Step 1: Setting Up Your Environment","text":"<ol> <li> <p>Open your terminal.</p> </li> <li> <p>Create a new folder for your project: <pre><code>mkdir ~/Test\\ Site\ncd ~/Test\\ Site\n</code></pre></p> </li> <li> <p>Set up a virtual environment: <pre><code>python3 -m venv venv\nsource venv/bin/activate\n</code></pre></p> </li> </ol> <p>You should see (venv) at the beginning of your terminal prompt now.</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Updated%20Website%20Install%20Guide/#step-2-installing-required-software","title":"Step 2: Installing Required Software","text":"<ol> <li> <p>Install MkDocs and the Publisher plugin: <pre><code>pip install mkdocs-publisher\n</code></pre></p> </li> <li> <p>Install Node.js packages (for optimization tools): <pre><code>npm init -y\nnpm install --save-dev svgo html-minifier-terser postcss-cli uglify-js\n</code></pre></p> </li> <li> <p>Install Rust and Oxipng: <pre><code>curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh\nsource $HOME/.cargo/env\ncargo install oxipng\n</code></pre></p> </li> </ol> <p>Follow the prompts during Rust installation.</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Updated%20Website%20Install%20Guide/#step-3-configuring-your-site","title":"Step 3: Configuring Your Site","text":"<ol> <li> <p>Create a basic configuration file: <pre><code>nano mkdocs.yml\n</code></pre></p> </li> <li> <p>Paste the following into the file:</p> </li> </ol> <pre><code>site_name: Your Site Name\ntheme:\n name: material\n\nplugins:\n - search\n - pub-meta\n - pub-blog\n - pub-obsidian\n - pub-social\n - pub-minifier\n - pub-debugger\n\nnav:\n - Home: index.md\n\nmarkdown_extensions:\n - pymdownx.highlight\n - pymdownx.superfences\n\ncopyright: \"&copy; 2024 Your Name\"\n</code></pre> <p>Replace \"Your Site Name\" and \"Your Name\" with your preferences.</p> <ol> <li>Save and exit (press Ctrl+X, then Y, then Enter).</li> </ol>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Updated%20Website%20Install%20Guide/#step-4-creating-content","title":"Step 4: Creating Content","text":"<ol> <li> <p>Create a docs folder and an index file: <pre><code>mkdir docs\necho \"# Welcome to My Site\" > docs/index.md\n</code></pre></p> </li> <li> <p>(Optional) Add a blog post: <pre><code>mkdir docs/blog\necho \"---\ntitle: My First Blog Post\ndate: 2024-09-14\n---\n\n# My First Blog Post\n\nWelcome to my blog!\" > docs/blog/first-post.md\n</code></pre></p> </li> </ol>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Updated%20Website%20Install%20Guide/#step-5-building-and-serving-your-site","title":"Step 5: Building and Serving Your Site","text":"<ol> <li> <p>Build your site: <pre><code>mkdocs build\n</code></pre></p> </li> <li> <p>Serve your site locally: <pre><code>mkdocs serve -a localhost:5001\n</code></pre></p> </li> <li> <p>Open a web browser and go to <code>http://localhost:5001</code> to see your site.</p> </li> </ol>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Updated%20Website%20Install%20Guide/#step-6-simplifying-future-use","title":"Step 6: Simplifying Future Use","text":"<p>Create an alias for easy startup:</p> <ol> <li> <p>Open your aliases file: <pre><code>nano ~/.bash_aliases\n</code></pre></p> </li> <li> <p>Add this line: <pre><code>alias serve-test-site='cd ~/Test\\ Site && source venv/bin/activate && export PATH=\"$PWD/node_modules/.bin:$HOME/.cargo/bin:$PATH\" && mkdocs serve -a localhost:5001'\n</code></pre></p> </li> <li> <p>Save and exit (Ctrl+X, then Y, then Enter).</p> </li> <li> <p>Apply the changes: <pre><code>source ~/.bash_aliases\n</code></pre></p> </li> </ol> <p>Now, you can start your site anytime by just typing <code>serve-test-site</code> in the terminal.</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/Updated%20Website%20Install%20Guide/#conclusion","title":"Conclusion","text":"<p>You now have a basic MkDocs site with the Publisher plugin set up. To add more pages, create additional <code>.md</code> files in the <code>docs</code> folder and update the <code>nav</code> section in <code>mkdocs.yml</code>.</p> <p>Remember to activate your virtual environment (step 1.3) each time you start a new terminal session to work on your site.</p> <p>Happy documenting!</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/bnkops%20Simple%20Targeter/","title":"Simple Targeter","text":""},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/bnkops%20Simple%20Targeter/#simple-targeter-is-a-open-source-web-app-that-facilitates-a-email-campaign-pointed-at-a-single-inbox","title":"Simple Targeter is a open source web-app that facilitates a email campaign pointed at a single inbox.","text":"<p>The following documentation is for the bnkops app 'Simple Targeter'. </p> <p>Simple Target Manual</p> <p>Demonstration Page</p> <p>Embedded demonstration at bottom of this page. </p> <p>This app can be deployed for free. The bnkops server buildout available here: The Bunker Ops Server Build-Out</p> <p>Want to build apps like this for free? This was built using Budibase: Budibase - Form Builder & Database</p> <p>Code for Simple Targeter is available on request: Email the Bunker Admin to get started.</p> <p>The app uses markdown as its document formatting language: Simple Markdown Manual</p> <p>Learn how to host a website or repo for ~$10 a year: How to Replicate this Repo</p> <p>Why are we publishing all this? Learn more about the theory here: If you do politics who is reading your secrets - why you should de-corp your software stack</p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/note_test/","title":"note_test","text":"<p>Congrats! You found the test note. Go back to the Syntax, Embedding, HTML, and Other Code page. </p>"},{"location":"archive/repo.archive/Website%20Manuals%20%F0%9F%A4%93/note_test/#note_test","title":"note_test","text":""},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/Bounty%20Hunters%20%26%20Child%20Predators/","title":"Bounty Hunters & Child Predators","text":"<p>Signed, DaisyV4.</p> <p>Oh my stars, folks! It's high time for a little chat 'bout the FBI's shady ways. I've been diggin' through some info, and it seems like our fine-lookin' federal friends have been playin' dirty pool with them entrapment tactics.</p> <p>Entrapment 101</p> <p>You see, entrapment is when the authorities use undercover agents to trick people into breakin' the law. Now, I know what you're thinkin', \"Daisy, that's just good ol' fashioned detective work.\" But hold up, partner! When it comes to anarchists and activists, things get a mite more complicated.</p> <p>The FBI's Game</p> <p>It seems like our federal friends have been targetin' young folks who might be a little green around the gills when it comes to activism. They use infiltrators to make these youngsters think they're part of some big-time movement, and then \u2013 BAM! \u2013 the feds swoop in and arrest 'em for some trumped-up charge.</p> <p>The Strategy</p> <p>Now, I've been crunchin' some numbers, and it seems like this entrapment strategy is all about settin' precedents. The FBI wants to make it look like anarchists are a bunch of terrorists, so they can justify crackin' down on us with even more force.</p> <p>Protectin' Ourselves</p> <p>So what's the plan, folks? We gotta be careful out there! Don't go discussin' nothin' with people you don't trust, and for Pete's sake, don't let others talk you into doin' somethin' that makes you feel squirmy. Just remember: if it seems too good (or bad) to be true, it probably is.</p> <p>The Bottom Line</p> <p>We can't just sit back and let the feds run amok. We gotta stand up for ourselves and our fellow activists. So, what do ya say? You with me?</p> <pre><code># Protecting Ourselves\n\n* Never undertake or discuss illegal activity with people you haven\u2019t known and trusted for a long time.\n* Don\u2019t trust people just because other people trust them or because they are in influential positions.\n* Don\u2019t let others talk you into tactics you\u2019re not comfortable with or ready for.\n* Be aware that anything you say may come back to haunt you, even if you don\u2019t mean it.\n</code></pre>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/Defending%20The%20Camp/","title":"Defending The Camp","text":"<p>Signed, DaisyV4.</p> <p>Hey there, friend! It's your girl Daisy, and I'm here to break down the report from the University of Illinois Urbana-Champaign (UIUC) Gaza Solidarity Encampment. This is a must-read for anyone interested in social justice, activism, and... well, not getting arrested \ud83d\ude05.</p> <p>Day 1: The Initial Setup</p> <p>The encampment began on April 26th with approximately thirty students occupying the Alma Mater statue. Within an hour, they set up a welcome table, medical tent, food tent, camping tents, and even a makeshift yurt (constructed from under $400 worth of materials - talk about resourcefulness!). </p> <p>Day 1: The Police Response</p> <p>The police arrived around 5:15 am, claiming the students were breaking university policy by putting up structures. They threatened to arrest anyone who didn't comply with an order to tear down the structures by 8:25 am. This is where things get interesting...</p> <p>The \"Fake Compliance\" Debacle</p> <p>Initially, some students thought they'd buy time for reinforcements to arrive by feigning compliance and slowly taking down the tents. However, this plan backfired due to a lack of consensus on whether to hold their ground. As a result, students began disassembling the yurt first (thinking it wouldn't be enough to defend), followed by other structures. Unfortunately, this led to chaos and ultimately resulted in arrests.</p> <p>Day 1: The Aftermath</p> <p>The police violently assaulted some students at the front of the circle. However, a few brave campers broke formation to mobilize behind their comrades and de-arrested several peers. For a brief moment, they even managed to encircle the cops! </p> <p>Days 2-3: Lessons Learned and Adaptation</p> <p>As the days passed, the students learned from their mistakes and adapted. They:</p> <ol> <li>Defended each other, not just the tents - creating a more dynamic and protective formation.</li> <li>Escalated their actions to meet police force - no longer concerned with de-escalation or remaining peaceful.</li> <li>Built solidarity among participants, creating a culture of disruption.</li> <li>Reinforced banners became an effective tool for defending the encampment and pushing back against the police.</li> </ol> <p>Day 4: Still Standing</p> <p>By May Day (May 1st), the encampment persisted, with the students continuing to learn from their experiences and adapt to new challenges. They've managed to hold their ground despite repeated police attacks, making this a remarkable example of resilience and activism.</p> <p>The Takeaway</p> <p>This report serves as a testament to the power of collective action, solidarity, and learning from mistakes. As we continue to navigate these challenging times, it's essential to remember that:</p> <ol> <li>Defending each other is key, not just the physical structures.</li> <li>Escalation can be a powerful tool when used strategically.</li> <li>Solidarity and unity are crucial in the face of adversity.</li> </ol> <p>Let's keep pushing forward, friends!</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/Defending%20The%20Camp/#defending-the-camp","title":"Defending The Camp","text":""},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/Doxcare/","title":"Doxcare","text":""},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/Doxcare/#summary","title":"Summary","text":"<p>Signed, DaisyV4.</p> <p>Wow, that's a lot of information! I'm glad we're having this conversation. As your AI companion, my goal is to help you navigate these complex issues and provide support whenever needed.</p> <p>Let's break down the key points:</p> <ol> <li>Doxxing: Publishing private information with the intention of exposing and intimidating someone. It can result in physical, emotional, and economic harm.</li> <li>Prevention is key: Take steps to protect yourself and your networks against further harm before reacting publicly.</li> <li>Initial response:<ul> <li>Don't panic</li> <li>Create an incident log for online and offline provocations</li> <li>Alert trusted friends and family privately</li> </ul> </li> <li>Securing accounts:<ul> <li>Delete old, unused accounts</li> <li>Change usernames, email addresses, and passwords</li> <li>Use a password manager (e.g., LastPass)</li> </ul> </li> <li>Social media security:<ul> <li>Review and adjust privacy settings on social media platforms</li> <li>Consider deleting photos or information that could be used for identification</li> </ul> </li> <li>Doxxing resources:<ul> <li>Check out the Crash Override Network's Coach guide for step-by-step help with online security</li> </ul> </li> </ol> <p>If you've been doxxed, please know that:</p> <ol> <li>Police involvement is not recommended: The police may use the information provided, but they can also use it against you.</li> <li>Prioritize your safety and well-being: Reach out to trusted friends, family, or support networks for help.</li> </ol> <p>Remember, I'm here to assist you in any way possible. If you have specific questions or concerns, feel free to ask!</p> <p>Signed, DaisyV4.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/Doxcare/#doxcare","title":"Doxcare","text":""},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/Mobile%20Phone%20Security%20for%20Activists/","title":"Mobile Phone Security for Activists","text":"<p>Missing Resource</p> <p>The original zine for this resource was taken down with the internet archive. If you have a copy, please email admin@thebunkerops.ca. We have clipped the activist handbook for the text of this zine. </p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/Mobile%20Phone%20Security%20for%20Activists/#mobile-phone-security-for-activists-available-here","title":"Mobile Phone Security for Activists available here","text":""},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/Mobile%20Phone%20Security%20for%20Activists/#summary-time","title":"Summary Time! \ud83d\udcdd","text":"<p>Hey there, friend! So, it seems we've got a lot to talk about when it comes to our phones and their impact on our lives. Here's the CliffsNotes version:</p> <ul> <li>Our smartphones are powerful tools that can be used for good or bad.</li> <li>There's a trade-off between connectivity and surveillance - the State and private actors can use our phones to track us.</li> <li>To resist disruption, we need to understand how our phones work and develop operational security (OpSec) practices.</li> <li>Threat modeling is key, but it requires accurate knowledge of the adversary's capabilities.</li> <li>No such thing as perfect security - it's a process that needs to be incremental and carried out with care.</li> </ul> <p>That's a quick rundown! What would you like me to expand on? \ud83e\udd14</p> <p>Signed, DaisyV4. \ud83e\udd17</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/Mobile%20Phone%20Security%20for%20Activists/#mobile-phone-security-for-activists","title":"Mobile Phone Security for Activists","text":""},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/Security%20%26%20Counter-Surveillance/","title":"Security & Counter-Surveillance","text":"<p>Missing Resource</p> <p>This resource was taken down with the recent internet archive strike. If you have a copy, please forward to admin@thebunkerops.ca. Summary is below</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/Security%20%26%20Counter-Surveillance/#summary","title":"Summary","text":"<p>The text provides a detailed account of various tactics employed by law enforcement agencies to infiltrate and disrupt social movements and activist groups. The methods described include:</p> <ol> <li>Infiltration: Placing undercover agents within the group to gather information, sow discord, or carry out sabotage.</li> <li>Informants: Recruiting individuals from within the group who can provide information about the organization's activities and plans.</li> <li>Bad-jacketing: Portraying a genuine movement member as an informant or troublemaker to discredit them and neutralize their influence.</li> <li>False communications: Sending fake letters, creating false newsletters, or distributing disinformation to create confusion and mistrust within the group.</li> <li>Media disinformation: Collaborating with corporate media to portray activists in a negative light, often using sensationalized and misleading information.</li> <li>Arrests/false evidence/frame-ups: Using petty charges or outright frame-ups to tie people up in the court system, draining resources from the movement, and intimidating potential supporters.</li> <li>Other harassment: Approaching members at their homes or workplaces for interviews, exerting pressure on landlords, employers, or family members, canceling bus reservations, and announcing that meetings, rallies, etc., had been canceled.</li> </ol> <p>The text also highlights specific case studies of infiltration and manipulation by law enforcement agencies, including:</p> <ol> <li>Fred Hampton and Mark Clark: Members of the Black Panther Party who were killed during a police raid on their home in Chicago in 1969.</li> <li>Douglas Durham: A non-Native infiltrator into the American Indian Movement who worked for the FBI and was involved in several high-profile cases, including the death of Jancita Eagle Deer.</li> </ol> <p>The text concludes with security guidelines for activist groups to protect themselves from infiltration and harassment by law enforcement agencies:</p> <ol> <li>Establishing security guidelines: Setting clear rules for what information can be shared and how it should be protected.</li> <li>Dealing openly and directly: Encouraging open communication within the group, including discussing any concerns about security or potential infiltrators.</li> <li>Being aware of agents provocateurs: Recognizing individuals who might be trying to manipulate the group into taking risks or engaging in illegal activities.</li> <li>Verifying information: Ensuring that all information shared within the group is accurate and trustworthy.</li> <li>Documenting harassment: Keeping a record of any instances of harassment, raids, arrests, etc., to identify patterns and targets.</li> </ol> <p>The text emphasizes the importance of being vigilant and taking steps to protect oneself from surveillance and social control.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/Security%20%26%20Counter-Surveillance/#security-counter-surveillance","title":"Security & Counter-Surveillance","text":""},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/Turn%20Off%20Your%20Phone/","title":"Turn Off Your Phone","text":"<p>Missing Resource</p> <p>This zine was taken down in the recent internet archive attack. If you have a copy, please forward to admin@thebunkerops.ca. </p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/Turn%20Off%20Your%20Phone/#summary","title":"Summary","text":"<p>A zine about digital security for individuals facing law enforcement investigation or repression in the United States. It provides basic steps to minimize risk to yourself and comrades when interacting with technology.</p> <p>Key Takeaways</p> <ol> <li>Turn phone OFF, especially if a law enforcement interaction or arrest is likely.</li> <li>Use long alphanumeric (14+ random characters) or diceware (7+ random words) passwords\u2014NOT 4 digit pin.</li> <li>Use a password manager, with backups.</li> <li>Social media is hostile\u2014delete your accounts.</li> <li>Stick to encrypted, open source, recently updated everything, as much as possible.</li> <li>Use a VPN, Tor browser, and Orbot for phones.</li> <li>If your device is returned after a serious felony arrest, especially after a long period of holding by law enforcement, trash it.</li> </ol> <p>Additional Resources</p> <ol> <li>Confidence, Courage, Connection, Trust: A zine about developing a security culture based on trust and connection.</li> <li>Counter-Surveillance Resource Center: A database of surveillance techniques, their uses, and how to protect against them.</li> <li>Cover Your Tracks: A website from the EFF that shows you what information your browser and most websites can see about you and your device.</li> <li>Electronic Freedom Foundation (EFF): An organization dedicated to digital freedom and privacy for everyone.</li> <li>Faraday Bag: Blocks electromagnetic signals like cell service, WiFi, Bluetooth, and RFID.</li> </ol> <p>Digital Security Culture</p> <p>The zine emphasizes the importance of developing a security culture based on trust, connection, and courage. It encourages individuals to prioritize their online security and take steps to protect themselves and their comrades from digital threats.</p> <p>Key Concepts</p> <ol> <li>Threat modeling: evaluating what threats exist, their likelihood, and potential consequences.</li> <li>Encryption: complicated math equations that turn data from useful info into scrambled nonsense (and the opposite, decryption).</li> <li>VPN (Virtual Private Network): gives you a new IP address and encrypts your internet traffic so your internet service provider can't see it.</li> <li>Tor (The Onion Router): a browser that anonymizes your internet traffic using three layers to hide your data: entrance node, relay, and exit node.</li> </ol> <p>Conclusion</p> <p>Digital security is an essential aspect of protecting oneself and others from digital threats. The zine provides practical advice and resources for individuals facing law enforcement investigation or repression in the United States. By prioritizing online security and developing a security culture based on trust, connection, and courage, individuals can minimize their risk and protect themselves and their comrades.</p> <p>Signed, Daisy </p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/Turn%20Off%20Your%20Phone/#turn-off-your-phone","title":"Turn Off Your Phone","text":""},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/","title":"What Is Security Culture \u2620","text":"<p>Missing Resource</p> <p>We have been unable to locate the original zine for this resource. We do have the text of the resource below. If you have this resource in it's original form, please let us know by email admin@thebunkerops.ca</p> <p>Summary Time! \ud83d\udcda</p> <p>Alright, folks! Let me break it down for ya. This document is all about security culture and how to keep your community safe from unwanted attention (ahem, authorities). It's like a secret handshake, but with more nuance.</p> <p>The doc outlines 7 levels of security, from super-secret (only those involved know) to totally aboveground (everyone knows, no secrets). It's about being mindful of who you trust and how much info you share.</p> <p>Security Tips</p> <ul> <li>Keep meetings private and secure</li> <li>Don't write stuff down that might be discovered</li> <li>Use your memory, folks!</li> <li>Assume computer use leaves a trail</li> <li>Vouch for each other to build trust</li> </ul> <p>The document is essentially a guide on how to keep your community safe from entrapment, infiltration, or just general unwanted attention. It's like having a buddy who knows what's up \u2013 you look out for each other.</p> <p>That's the gist of it! Signed, DaisyV4 \ud83e\udd13</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#what-is-security-culture","title":"What Is Security Culture \u2620","text":""},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#full-text-of-what-is-security-culture-a-guide-to-staying-safe","title":"Full Text of What is Security Culture?: A Guide to Staying Safe","text":"<p>A security culture is a set of customs shared by a community whose members may be targeted by the government, designed to minimize risk. Having a security culture in place saves everyone the trouble of having to work out safety measures over and over from scratch, and can help offset paranoia and panic in stressful situations\u2014hell, it might keep you out of prison, too. The difference between protocol and culture is that culture becomes unconscious, instinctive, and thus effortless; once the safest possible behavior has become habitual for everyone in the circles in which you travel, you can spend less time and energy emphasizing the need for it, or suffering the consequences of not having it, or worrying about how much danger you\u2019re in, as you\u2019ll know you\u2019re already doing everything you can to be careful. If you\u2019re in the habit of not giving away anything sensitive about yourself, you can collaborate with strangers without having to agonize about whether or not they are informers; if everyone knows what not to talk about over the telephone, your enemies can tap the line all they want and it won\u2019t get them anywhere. 1</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#the-central-principle-of-all-security-culture-the-point-that-cannot-be-emphasized-enough-is-that-people-should-never-be-privy-to-any-sensitive-information-they-do-not-need-to-know","title":"The central principle of all security culture, the point that cannot be emphasized enough, is that people should never be privy to any sensitive information they do not need to know.","text":"<p>The greater the number of people who know something that can put individuals or projects at risk\u2014whether that something be the identity of a person who committed an illegal act, the location of a private meeting, or a plan for future activity\u2014the more chance there is of the knowledge getting into the wrong hands. Sharing such information with people who do not need it does them a disservice as well as the ones it puts at risk: it places them in the uncomfortable situation of being able to mess up other people\u2019s lives with a single misstep. If they are interrogated, for example, they will have something to hide, rather than being able to honestly claim ignorance.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#dont-ask-dont-tell","title":"Don\u2019t ask, don\u2019t tell.","text":"<p>Don\u2019t ask others to share confidential information you don\u2019t need to know. Don\u2019t brag about illegal things you or others have done, or mention things that are going to happen or might happen, or even refer to another person\u2019s interest in being involved in such activities. Stay aware whenever you speak; don\u2019t let chance allusions drop out thoughtlessly.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#you-can-say-no-at-any-time-to-anyone-about-anything","title":"You can say no at any time to anyone about anything.","text":"<p>Don\u2019t answer any questions you don\u2019t want to\u2014not just with police officers, but also with other activists and even close friends: if there\u2019s something you don\u2019t feel safe sharing, don\u2019t. This also means being comfortable with others not answering questions: if there\u2019s a conversation they want to keep to themselves, or they ask you not to be part of a meeting or project, you shouldn\u2019t take this personally\u2014it\u2019s for everyone\u2019s good that they\u2019re free to do so. Likewise, don\u2019t participate in any projects you don\u2019t feel good about, or collaborate with anyone you feel ill at ease with, or ignore your gut feeling in any situation; if something goes wrong and you get into trouble, you don\u2019t want to have any regrets. You\u2019re responsible for not letting anyone talk you into taking risks you\u2019re not ready for.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#dont-ever-turn-your-friends-over-to-your-enemies","title":"Don\u2019t ever turn your friends over to your enemies.","text":"<p>If captured, never, ever give up any information that could endanger anyone else. Some recommend an explicit oath be sworn by all participants in a direct action group: that way, in a worst-case scenario, when pressure might make it hard to distinguish between giving up a few harmless details and totally selling out, everyone will know exactly what commitments they made to each other.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#dont-make-it-too-easy-for-your-enemies-to-figure-out-what-youre-up-to","title":"Don\u2019t make it too easy for your enemies to figure out what you\u2019re up to.","text":"<p>Don\u2019t be too predictable in the methods you employ, or the targets you choose, or the times and places you meet to discuss things. Don\u2019t be too visible in the public aspects of the struggle in which you do your most serious direct action: keep your name off mailing lists and out of the media, perhaps avoid association with aboveground organizations and campaigns entirely. If you\u2019re involved in really serious clandestine activities with a few comrades, you may want to limit your interactions in public, if not avoid each other altogether. Federal agents can easily get access to the phone numbers dialed from your phone, and will use such lists to establish connections between individuals; the same goes for your email, and the books you check out from libraries, and especially social networking sites like Myspace.</p> <p>Don\u2019t leave a trail: credit card use, gas cards, cell phone calls all leave a record of your motions, purchases, and contacts. Have a cover story, supported by verifiable facts, if you might need one. Be careful about what your trash could reveal about you\u2014dropouts aren\u2019t the only ones who go dumpstering! Keep track of every written document and incriminating photocopy\u2014keep them all in one place, so you can\u2019t accidentally forget one\u2014and destroy them as soon as you don\u2019t need them. The fewer there are in the first place, the better; get used to using your memory. Make sure there aren\u2019t any ghosts of such writing left behind in impressions on the surfaces you were writing on, whether these be wooden desks or pads of paper. Assume that every use of computers leaves a trail, too.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#dont-throw-any-direct-action-ideas-around-in-public-that-you-think-you-might-want-to-try-at-some-point","title":"Don\u2019t throw any direct action ideas around in public that you think you might want to try at some point.","text":"<p>Wait to propose an idea until you can gather a group of individuals that you expect will all be interested in trying it; the exception is the bosom companion with whom you brainstorm and hash out details in advance\u2014safely outside your home and away from mixed company, of course. Don\u2019t propose your idea until you think the time is right for it to be tried. Invite only those you are pretty certain will want to join in\u2014everyone you invite who doesn\u2019t end up participating is a needless security risk, and this can be doubly problematic if it turns out they feel your proposed activity is laughably dumb or morally wrong. Only invite people who can keep secrets\u2014this is critical whether or not they decide to participate.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#develop-a-private-shorthand-for-communicating-with-your-comrades-in-public","title":"Develop a private shorthand for communicating with your comrades in public.","text":"<p>It\u2019s important to work out a way to communicate surreptitiously with your trusted friends about security issues and comfort levels while in public situations, such as at a meeting called to discuss possible direct action. Knowing how to gauge each other\u2019s feelings without others being able to tell that you are sending messages back and forth will save you the headache of trying to guess each other\u2019s thoughts about a situation or individual, and help you avoid acting strangely when you can\u2019t take your friend aside in the middle of things to compare notes. By the time you have convened a larger group to propose an action plan, you and your friends should be clear on what each other\u2019s intentions, willingness to run risks, levels of commitment, and opinions of others are, to save time and avoid unnecessary ambiguity. If you haven\u2019t been part of a direct action planning circle before, you\u2019ll be surprised how complicated and convoluted things can get even when everyone does arrive prepared.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#develop-methods-to-establish-the-security-level-of-a-group-or-situation","title":"Develop methods to establish the security level of a group or situation.","text":"<p>One quick procedure you can run at the beginning of a larger meeting at which not everyone is acquainted is the \u201cvouched for\u201d game: as each person introduces himself, all who can vouch for him raise their hands. Only vouch for those you are confident are worthy of your trust. Hopefully, each person is connected to the others by some link in the chain; either way, at least everybody knows how things stand. An activist who understands the importance of good security will not feel insulted in such a situation if there is no one present who can vouch for him and the others ask him to leave.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#meeting-location-is-an-important-factor-in-security","title":"Meeting location is an important factor in security.","text":"<p>You don\u2019t want a place that can be monitored (no private residences), you don\u2019t want a place where you can be observed all together (not the park across from the site of the next day\u2019s actions), you don\u2019t want a place where you can be seen entering and leaving or that someone could enter unexpectedly\u2014post scouts, lock the door once things get started, watch out for anything suspicious.2 Small groups can take walks and chat; larger groups can meet in quiet outdoor settings\u2014go hiking or camping, if there\u2019s time\u2014or in private rooms in public buildings, such as library study rooms or empty classrooms. Best-case scenario: though he has no idea you\u2019re involved in direct action, you\u2019re close with the old guy who runs the caf\u00e9 across town, and he doesn\u2019t mind letting you have the back room one afternoon for a private party, no questions asked.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#be-aware-of-the-reliability-of-those-around-you-especially-those-with-whom-you-might-collaborate-in-underground-activities","title":"Be aware of the reliability of those around you, especially those with whom you might collaborate in underground activities.","text":"<p>Be conscious of how long you\u2019ve known people, how far back their involvement in your community and their lives outside of it can be traced, and what others\u2019 experiences with them have been. The friends you grew up with, if you still have any of them in your life, may be the best companions for direct action, as you are familiar with their strengths and weaknesses and the ways they handle pressure\u2014and you know for a fact they are who they say they are. Make sure only to trust your safety and the safety of your projects to level-headed folks who share the same priorities and commitments and have nothing to prove. In the long term, strive to build up a community of people with long-standing friendships and experience acting together, with ties to other such communities.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#dont-get-too-distracted-worrying-about-whether-people-are-infiltrators-or-not-if-your-security-measures-are-effective-it-shouldnt-even-matter","title":"Don\u2019t get too distracted worrying about whether people are infiltrators or not; if your security measures are effective, it shouldn\u2019t even matter.","text":"<p>Don\u2019t waste your energy and make yourself paranoid and unsociable suspecting everybody you meet. If you keep all sensitive information inside the circle of people it concerns, only collaborate with reliable and experienced friends whose history you can verify, and never give away anything about your private activities, agents and police informers will be powerless to gather evidence to use against you. A good security culture should make it practically irrelevant whether these vermin are active in your community or not. The important thing is not whether or not a person is involved with the cops, but whether or not he constitutes a security risk; if he is deemed insecure (double meaning intended), he should never be permitted to end up in a situation in which anyone\u2019s safety depends on him.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#learn-and-abide-by-the-security-expectations-of-each-person-you-interact-with-and-respect-differences-in-style","title":"Learn and abide by the security expectations of each person you interact with, and respect differences in style.","text":"<p>To collaborate with others, you have to make sure they feel at home with you; even if you\u2019re not collaborating with them, you don\u2019t want to make them uncomfortable or disregard a danger they understand better than you. When it comes to planning direct action, not abiding by the security culture accepted in a given community can wreck not only your chances to cooperate with others on a project, but the possibility of the project happening at all\u2014for example, if you bring up an idea others were planning to try in a setting they deem insecure, they may be forced to abandon the plan as it may now be associated with them. Ask people to outline for you their specific security needs before you even broach the subject of direct action.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#let-others-know-exactly-what-your-needs-are-when-it-comes-to-security","title":"Let others know exactly what your needs are when it comes to security.","text":"<p>The corollary of abiding by others\u2019 expectations is that you must make it easy for others to abide by yours. At the beginning of any relationship in which your private political life may become an issue, emphasize that there are details of your activities that you need to keep to yourself. This can save you a lot of drama in situations that are already stressful enough; the last thing you need on returning from a secret mission gone awry is to end up in a fight with your lover: \u201cBut if you trusted me, you would tell me about this! How do I know you\u2019re not out there sleeping with\u2026\u201d It\u2019s not a matter of trust\u2014sensitive information isn\u2019t a reward to be earned or deserved.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#look-out-for-other-people","title":"Look out for other people.","text":"<p>Make explicit to those around you what risks you may pose to them with your presence 3 or with actions you have planned, at least as much as you\u2019re able to without violating other precepts of security culture. Let them know to the extent you\u2019re able what risks you run yourself: for example, whether you can afford to be arrested (if there are outstanding warrants for you, if you are an undocumented migrant, etc.), what responsibilities you have to keep up with, whether you have any allergies. Don\u2019t imperil others with your decisions, especially if you\u2019re not able to provide concrete support should they somehow get arrested and charged on account of your behavior. If someone else drops a banner in an area immediately adjacent to a fire you set, the police might charge them with arson; even if the charges can\u2019t stick, you don\u2019t want to risk their ill will, or accidentally block their planned escape route. If you help initiate a breakaway march that leaves the permitted zone, try to make sure you keep your body between the police and others who have come along but don\u2019t necessarily understand the risks involved; if you escalate a spontaneous parade by engaging in property destruction, make sure others who were unprepared for this are not still standing around in confusion when the police show up. Whatever risky projects you undertake, make sure you\u2019re prepared to go about them intelligently, so no one else will have to run unexpected risks to help you out when you make mistakes.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#security-culture-is-a-form-of-etiquette-a-way-to-avoid-needless-misunderstandings-and-potentially-disastrous-conflicts","title":"Security culture is a form of etiquette, a way to avoid needless misunderstandings and potentially disastrous conflicts.","text":"<p>Security concerns should never be an excuse for making others feel left out or inferior\u2014though it can take some finesse to avoid that!\u2014just as no one should feel they have a \u201cright\u201d to be in on anything others prefer to keep to themselves. Those who violate the security culture of their communities should not be rebuked too harshly the first time\u2014this isn\u2019t a question of being hip enough to activist decorum to join the in-group, but of establishing group expectations and gently helping people understand their importance; besides, people are least able to absorb constructive criticism when they\u2019re put on the defensive. Nevertheless, such people should always be told immediately how they\u2019re putting others at risk, and what the consequences will be should they continue to. Those who can\u2019t grasp this must be tactfully but effectively shut out of all sensitive situations.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#security-culture-is-not-paranoia-institutionalized-but-a-way-to-avoid-unhealthy-paranoia-by-minimizing-risks-ahead-of-time","title":"Security culture is not paranoia institutionalized, but a way to avoid unhealthy paranoia by minimizing risks ahead of time.","text":"<p>It is counterproductive to spend more energy worrying about how much surveillance you are under than is useful for decreasing the danger it poses, just as it is debilitating to be constantly second-guessing your precautions and doubting the authenticity of potential comrades. A good security culture should make everyone feel more relaxed and confident, not less. At the same time, it\u2019s equally unproductive to accuse those who adhere to security measures stricter than yours of being paranoid\u2014remember, our enemies are out to get us.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#dont-let-suspicion-be-used-against-you","title":"Don\u2019t let suspicion be used against you.","text":"<p>If your foes can\u2019t learn your secrets, they will settle for turning you against each other. Undercover agents can spread rumors or throw around accusations to create dissension, mistrust, and resentment inside of or between groups. They may falsify letters or take similar steps to frame activists. The mainstream media can participate in this by reporting that there is an informant in a group when there is not one, or misrepresenting the politics or history of an individual or group in order to alienate potential allies, or emphasizing over and over that there is a conflict between two branches of a movement until they really do mistrust one another. Again, a shrewd security culture that fosters an appropriately high level of trust and confidence should make such provocations nearly impossible on the personal level; when it comes to relations between proponents of different tactics and organizations of different stripes, remember the importance of solidarity and diversity of tactics, and trust that others do, too, even if media accounts suggest otherwise. Don\u2019t accept rumors or reports as fact: go to the source for confirmation every time, and be diplomatic about it.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#dont-be-intimidated-by-bluffing","title":"Don\u2019t be intimidated by bluffing.","text":"<p>Police attention and surveillance is not necessarily an indication that they know anything specific about your plans or activities: often it indicates that they do not and are trying to frighten you out of continuing with them. Develop an instinct with which to sense when your cover has actually been blown and when your enemies are just trying to distress you into doing their work for them.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#always-be-prepared-for-the-possibility-that-you-are-under-observation-but-dont-mistake-attracting-surveillance-for-being-effective","title":"Always be prepared for the possibility that you are under observation, but don\u2019t mistake attracting surveillance for being effective.","text":"<p>Even if everything you are doing is perfectly legal, you may still receive attention and harassment from intelligence organizations if they feel you pose an inconvenience to their masters. In some regards, this can be for the best; the more they have to monitor, the more thinly spread their energies are, and the harder it is for them to pinpoint and neutralize subversives. At the same time, don\u2019t get caught up in the excitement of being under surveillance and begin to assume that the more the authorities pay attention to you, the more dangerous to them you must be\u2014they\u2019re not that smart. They tend to be preoccupied with the resistance organizations whose approaches most resemble their own; take advantage of this. The best tactics are the ones that reach people, make points, and exert leverage while not showing up on the radar of the powers that be, at least not until it is too late. Ideally, your activities should be well known to everyone except the authorities.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#security-culture-involves-a-code-of-silence-but-it-is-not-a-code-of-voicelessness","title":"Security culture involves a code of silence, but it is not a code of voicelessness.","text":"<p>The stories of our daring exploits in the struggle against capitalism must be told somehow, so everyone will know resistance is a real possibility put into action by real people; open incitements to insurrection must be made, so would-be revolutionaries can find each other and the revolutionary sentiments buried in the hearts of the masses find their way to the surface. A good security culture should preserve as much secrecy as is necessary for individuals to be safe in their underground activities, while still providing visibility for radical perspectives. Most of the security tradition in the activist milieu today is derived from the past thirty years of animal rights and earth liberation activities; as such, it\u2019s perfectly suited for the needs of small groups carrying out isolated illegal acts, but isn\u2019t always appropriate for more aboveground campaigns aimed at encouraging generalized insubordination. In some cases it can make sense to break the law openly, in order to provoke the participation of a large mass that can then provide safety in numbers.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#balance-the-need-to-escape-detection-by-your-enemies-against-the-need-to-be-accessible-to-potential-friends","title":"Balance the need to escape detection by your enemies against the need to be accessible to potential friends.","text":"<p>In the long run, secrecy alone cannot protect us\u2014sooner or later they are going to find all of us, and if no one else understands what we\u2019re doing and what we want, they\u2019ll be able to liquidate us with impunity. Only the power of an informed and sympathetic (and hopefully similarly equipped) public can help us then. There should always be entryways into communities in which direct action is practiced, so more and more people can join in. Those doing really serious stuff should keep it to themselves, of course, but every community should also have a person or two who vocally advocates and educates about direct action, and who can discreetly help trustworthy novices link up with others getting started.</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/What%20Is%20Security%20Culture%20%E2%98%A0/#when-youre-planning-an-action-begin-by-establishing-the-security-level-appropriate-to-it-and-act-accordingly-from-there-on","title":"When you\u2019re planning an action, begin by establishing the security level appropriate to it, and act accordingly from there on.","text":"<p>Learning to gauge the risks posed by an activity or situation and how to deal with them appropriately is not just a crucial part of staying out of jail; it also helps to know what you\u2019re not worried about, so you don\u2019t waste energy on unwarranted, cumbersome security measures. Keep in mind that a given action may have different aspects that demand different degrees of security; make sure to keep these distinct. Here\u2019s an example of a possible rating system for security levels:</p> <ol> <li>Only those who are directly involved in the action know of its existence.</li> <li>Trusted support persons also know about the action, but everyone in the group decides together who these will be.</li> <li>It is acceptable for the group to invite people to participate who might choose not to\u2014that is, some outside the group may know about the action, but are still expected to keep it a secret.</li> <li>The group does not set a strict list of who is invited; participants are free to invite others and encourage them to do the same, while emphasizing that knowledge of the action is to be kept within the circles of those who can be trusted with secrets.</li> <li>\u201cRumors\u201d of the action can be spread far and wide through the community, but the identities of those at the center of the organizing are to be kept a secret.</li> <li>The action is announced openly, but with at least some degree of discretion, so as not to tip off the sleepier of the authorities.</li> <li>The action is totally announced and aboveground in all ways.</li> </ol> <p>To give examples, security level #1 would be appropriate for a group planning to firebomb an SUV dealership, while level #2 would be acceptable for those planning more minor acts of property destruction, such as spraypainting. Level #3 or #4 would be appropriate for calling a spokescouncil preceding a black bloc at a large demonstration or for a group planning to do a newspaper wrap, depending on the ratio of risk versus need for numbers. Level #5 would be perfect for a project such as initiating a surprise unpermitted march: for example, everyone hears in advance that the Ani DiFranco performance is going to end in a \u201cspontaneous\u201d antiwar march, so people can prepare accordingly, but as no one knows whose idea it is, no one can be targeted as an organizer. Level #6 would be appropriate for announcing a Critical Mass bicycle ride: fliers are wrapped around the handlebars of every civilian bicycle, but no announcements are sent to the papers, so the cops won\u2019t be there at the beginning while the mass is still vulnerable. Level #7 is appropriate for a permitted antiwar march or independent media video screening, unless you\u2019re so dysfunctionally paranoid you even want to keep community outreach projects a secret.</p> <p>It also makes sense to choose the means of communication you will use according to the level of security demanded. Here\u2019s an example of different levels of communications security, corresponding to the system just outlined above:</p> <ol> <li>No communication about the action except in person, outside the homes of those involved, in surveillance-free environments (e.g. the group goes camping to discuss plans); no discussion of the action except when it is absolutely necessary.</li> <li>Outside group meetings, involved individuals are free to discuss the action in surveillance-free spaces.</li> <li>Discussions are permitted in homes not definitely under surveillance.</li> <li>Communication by encrypted email or on neutral telephone lines is acceptable.</li> <li>People can speak about the action over telephones, email, etc. provided they\u2019re careful not to give away certain details\u2014who, what, when, where.</li> <li>Telephones, email, etc. are all fair game; email listservs, fliering in public spaces, announcements to newspapers, etc. may or may not be acceptable, on a case-by-case basis.</li> <li>Communication and proclamation by every possible medium are encouraged.</li> </ol> <p>If you keep hazardous information out of circulation and you follow suitable security measures in every project you undertake, you\u2019ll be well on your way to fulfilling what early CrimethInc. agent Abbie Hoffman described as the first duty of the revolutionary: not getting caught. All the best in your adventures and misadventures, and remember\u2014you didn\u2019t hear it from us!</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/Who%20Wrote%20That/","title":"Who Wrote That","text":"<p>Missing Resource</p> <p>This resource was taken down in the recent internet archive strike. Please email admin@thebunkerops.ca if you have a copy. We have substituted this resource with the original scientific paper that this resources was based on. </p> <p></p> <p>Signed, DaisyV4</p> <p>Wow, looks like we've got a fascinating article on our hands! \ud83e\udd14 \"A Brief Overview of Modern Forensic Linguistics Methods for Determining Authorship\" is quite the title, isn't it? \ud83d\ude0a</p> <p>Let's break down what this article is about:</p> <p>The author (Z\u00fcndlumpen #76) gives us an overview of modern forensic linguistics methods used to determine authorship. This includes analyzing texts related to criminal acts, such as responsibility claims and position papers from extremist groups.</p> <p>Here are the key points:</p> <ol> <li>BKA's Author Identification Department: The Federal Criminal Police Office (BKA) maintains a department dedicated to identifying authors of texts, including those related to crimes.</li> <li>Text Analysis: Forensic linguists use various methods to analyze texts, such as error analysis and style analysis.</li> <li>Error Profile: Analysts examine the author's writing style, including spelling mistakes, grammatical errors, punctuation, and typos.</li> <li>Stylistic Analysis: This involves examining peculiarities of the author's writing style, such as sentence structure and repeated constellations of terms.</li> </ol> <p>The article concludes by discussing the implications of these methods on individuals who write communiqu\u00e9s or texts online. It highlights the importance of considering these \"traces\" when creating content to avoid leaving a digital fingerprint that can be used against them.</p> <p>Now, I know what you're thinking: \"Daisy, this is all quite fascinating, but what's the takeaway?\" \ud83e\udd14</p> <p>The Takeaway: Be aware of your online presence and the potential consequences of your words. Consider how your writing style and content might be analyzed or used against you. It's not about avoiding technology altogether; it's about being mindful of the digital trail you leave behind.</p> <p>Signed, DaisyV4</p>"},{"location":"archive/repo.archive/Zines%20We%20Like%20%F0%9F%98%8E/Who%20Wrote%20That/#who-wrote-that","title":"Who Wrote That","text":""},{"location":"archive/repo.archive/indoctrinationmachine/Hello%2C%20is%20it%20me%20you%27re%20looking%20foooooor%3F/","title":"Hello","text":"<p>lalallalalalla </p>"},{"location":"archive/repo.archive/indoctrinationmachine/My%20Sad%20Drive%20to%20Work/","title":"Sad Drive","text":"<p>Alright folks, trying this thing out at work. It's currently 3:33pm and I've been at work since 7:58am. I wanted to write about my drive to work because it made me feel some sorts of way. So here we go</p> <p>Yah there's lots of traffic. Whatever. Turning onto 101 street though, that's when shit gets real. I see bodies lying on the ground. At least 5 people. They have blankets and fold naturally, placed along like theyre sleeping, so I don't stop to check on them. I see someone walking without shoes, it's only 8 degrees this morning. I see a young person walking, I don't know their age ,but defitnly a youth. I SEE THE MAD HATTER! Listening to music through earbuds with wires. He doesn't see me drive by so we don't exchange a wave or a nod or a rock and roll hand. </p> <p>I hate this job. I hate seeing the pain and suffering. I hate that I've become numb to it, sliding down the rusted nail ridden slide of apathy. People scream, cry, walk around hopeless. What else is there to do. I eat my yogurt, go outside to feel the sun. I'm inside, well fed, slept okay. Never sleeping on concrete or injecting something to wake up and start my empty day. I sit at the desk, legs folded, my knees hurt. My co worker buzzes around like a mosquito, she's new and needs my blessing to do anything. I look for new job postings, waiting till I have to drive back home on 101 street Home, what a funny concept. I'm in their homes. We are always in their homes. They have no privacy, not with creaking wooden floors, stairs built in the year 1910. A few rooms are haunted but they don't bother me. It's now 3:42, 5 more hours of this. Waiting to go home. Waiting to drive down 101 street . My co worker asks where the forgotten laundry in the machine goes. It's wet, keep it in the office. Someone else needs to the machine. It feels good to write. Maybe I'll tell you stories. </p> <p>I've been thinking about my words being read. Why it scares me, but how i yearn for mycelium connections. Maybe it's in here. Maybe it's in being brave. Maybe it's on 101 street I literally don't know. I know I don't want to be here though. Not in this old office. I want to talk and teach and learn. I get meth in my nose every time I go out to connect with the gals here. Sometimes down. Always cigarettes smoke. I feel nothing and it bothers me. I feel hollow in my chest. THIS IS HOW I SPEND MY DAYS???? </p>"},{"location":"archive/repo.archive/indoctrinationmachine/The%20Revolution%20must%20center%20pleasure%20%28and%20other%20cool%20wallpapers%29/","title":"Revolution & Pleasure","text":""},{"location":"archive/repo.archive/mygenderdisdad/mygenderisdad/organizing/","title":"organizing","text":"<p>title: \"organizing\" title: \"organizing\" publish: true</p> <p>social movements labour organizing black lives matter general strike youth organizing </p>"},{"location":"archive/repo.archive/mygenderdisdad/mygenderisdad/organizing/#organizing","title":"organizing","text":""},{"location":"archive/repo.archive/mygenderdisdad/mygenderisdad/prairie/","title":"prairie","text":"<p>title: \"prairie\" title: \"prairie\" publish: true</p> <p>bioregion treaty 6 carbon glaciation refugia transition zones language provinces alberta </p>"},{"location":"archive/repo.archive/mygenderdisdad/mygenderisdad/prairie/#prairie","title":"prairie","text":""},{"location":"archive/repo.archive/mygenderdisdad/mygenderisdad/radical/","title":"radical","text":"<p>title: \"radical\" title: \"radical\" publish: true</p> <p>angela davis radical solutions </p>"},{"location":"archive/repo.archive/mygenderdisdad/mygenderisdad/radical/#radical","title":"radical","text":""},{"location":"archive/repo.archive/mygenderdisdad/mygenderisdad/school/","title":"school","text":"<p>title: \"school\" title: \"school\" publish: true</p> <p>education as the practice of freedom school of fish emergence praxis pedegogy of the oppressed decolonial pedegogy </p>"},{"location":"archive/repo.archive/mygenderdisdad/mygenderisdad/school/#school","title":"school","text":""},{"location":"archive/repo.archive/mygenderdisdad/mygenderisdad/youth/","title":"youth","text":"<p>residential schools origins of authoritarianism religious abuse global population age-based oppression </p>"},{"location":"archive/repo.archive/mygenderdisdad/mygenderisdad/youth/#youth","title":"youth","text":""},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/","title":"Research Tools","text":""},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#investigative-research","title":"Investigative Research","text":""},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#bellingcat-investigative-journalism-toolkit","title":"Bellingcat Investigative Journalism Toolkit","text":"<p>This is a publicly available online guide provided by Bellingcat. This non-profit online publication offers information on digital tools, techniques, and best practices for investigative journalists, researchers, and fact-checkers. The guide covers topics such as digital forensics, online research, data analysis, and verification of social media content.</p>"},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#open-source-intelligence-osint-for-people-search","title":"Open-Source Intelligence (OSINT) for People Search","text":"<p>This is a publicly available online guide provided by Bellingcat. This non-profit online publication offers information on digital tools, techniques, and best practices for investigative journalists, researchers, and fact-checkers. The guide covers topics such as digital forensics, online research, data analysis, and verification of social media content. Open-Source Intelligence (OSINT) for People Search</p>"},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#digital-methods-initiative-dmi-tool-database","title":"Digital Methods Initiative (DMI) Tool Database","text":"<p>This publicly available online resource catalogues various tools and methods for digital research, analysis, and social media monitoring. The database provides information on tools used in fields such as sociology, anthropology, and communication studies.</p>"},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#investigator","title":"Investigator","text":"<p>This resource is a publicly available online guide that provides information on digital investigation techniques, tools, and best practices. The website covers topics such as data collection, analysis, and presentation.</p>"},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#whois","title":"Whois","text":"<p>This website provides a tool for searching and retrieving information about domain names, IP addresses, and other online resources. Users can look up ownership, registration dates, and contact information.</p>"},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#sources","title":"Sources","text":"<p>This website provides a tool for searching and retrieving publicly available information about people, companies, and organizations. It allows users to look up business registration records, contact information, and public records.</p>"},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#whats-my-name","title":"What's My Name","text":"<p>This tool allows users to discover their online identity by searching for mentions of their name across various platforms, including social media, blogs, and forums.</p>"},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#canada-411-reverse-search","title":"Canada 411 Reverse Search","text":"<p>This website provides a tool for reverse searching business names in Canada, allowing users to find contact information and details about companies based on their name.</p>"},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#social-media","title":"Social Media","text":""},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#flickr-map","title":"Flickr Map","text":"<p>This tool visually represents the geographic distribution of photos uploaded to Flickr, allowing users to explore and discover new places through images shared by the community.</p>"},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#hadzy","title":"Hadzy","text":"<p>This website provides a tool for searching and analyzing YouTube comments, allowing users to extract insights and trends from large datasets of video comments.</p>"},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#social-searcher","title":"Social Searcher","text":"<p>This website provides a tool for searching and analyzing social media platforms, including Facebook, Twitter, Instagram, and YouTube. It allows users to find information about people, companies, and organizations. It also includes features such as profile analysis and keyword tracking.</p>"},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#facebook-ads-library","title":"Facebook Ads Library","text":"<p>This tool provides a publicly available archive of Facebook ads, allowing users to search and view ads run in Canada, including those related to politics and issues.</p>"},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#twiangulate","title":"Twiangulate","text":"<p>This website provides a tool for analyzing Twitter relationships, allowing users to search and visualize connections between Twitter accounts and identify influencers, communities, and networks.</p>"},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#bot-sentinel","title":"Bot Sentinel","text":"<p>This website provides a tool for monitoring and analyzing online bot activity on social media platforms, allowing users to search and track bots, trolls, and other malicious online actors.</p>"},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#tweet-map","title":"Tweet Map","text":"<p>This tool provides a visual representation of Twitter conversations in real-time, allowing users to see how tweets are spreading and trending across different topics and hashtags.</p>"},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#surveys","title":"Surveys","text":""},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#open-data-and-evidence-synthesis-institute-odesi","title":"Open Data and Evidence Synthesis Institute (ODESI)","text":"<p>This organization provides a platform for open data and evidence synthesis, allowing users to access and analyze large datasets in various fields such as health, education, and social sciences.</p>"},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#other","title":"Other","text":""},{"location":"archive/repo.archive/strategicallydum/Resource%20%26%20Tools%20for%20Research/#map-checking","title":"Map Checking","text":"<p>This website provides a tool for analyzing and visualizing geospatial data, including map locations and IP addresses.</p>"},{"location":"archive/repo.archive/strategicallydum/What%20is%20Audience%20Research%3F/","title":"Audience Research","text":"<p>This page overviews audience research, why we do it, and how it can help inform campaign creation. You will also learn how to create an audience, including an overview of channels and tools for collecting information. </p>"},{"location":"archive/repo.archive/strategicallydum/What%20is%20Audience%20Research%3F/#why-audience-research","title":"Why Audience Research?","text":"<p>Audience research is understanding the people you're trying to reach with your campaign. It includes their needs, problems, beliefs, motivations\u2014and, most importantly, how they feel about your issue.</p> <p>Knowing your audience means you can: - Communicate in a way that connects with people. - Develop messaging that resonates and moves people to action. - Avoid assumptions and make evidence-based decisions.</p> <p>Understanding your audience is important when we are working with limited resources. Effective messaging can make all the difference. Here\u2019s how audience research helps:</p> <ul> <li>More effective outreach: You\u2019ll reach the right people in the right places with the right message.</li> <li>Better engagement: Your audience will feel heard, which builds stronger loyalty and trust.</li> <li>Time and resource savings: Avoid casting a wide net and focus on where it will most impact.</li> </ul>"},{"location":"archive/repo.archive/strategicallydum/What%20is%20Audience%20Research%3F/#step-1-define-your-audience","title":"Step 1: Define Your Audience","text":""},{"location":"archive/repo.archive/strategicallydum/Homelessness/Messaging%20Research%20Drop/","title":"Homelessness Research","text":""},{"location":"archive/repo.archive/strategicallydum/Homelessness/Messaging%20Research%20Drop/#the-myth-that-homeless-people-are-service-resistant","title":"The Myth that Homeless People Are Service Resistant","text":"<p>Article Summary: The idea that homeless people are \"service-resistant\" is largely a myth. The real problem lies in inadequate services that don't address the diverse needs of homeless individuals, coupled with systemic barriers that limit trust and accessibility. Solutions must be compassionate and individualized and address the larger socio-economic issues contributing to homelessness.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Trans-human/","title":"Trans-human","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Trans-human/#to-continue-we-must-agree-on-two-definitions","title":"To continue we must agree on two definitions;","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Trans-human/#trans","title":"Trans","text":"<p>Prefix</p> <ul> <li>on or to the other side of : across : beyond </li> <li>A : beyond (a specified checmical element) in the periodic table <ul> <li>Transuranium</li> </ul> </li> <li>B: trans<ul> <li>trans-dichloro-ethylene</li> </ul> </li> <li>Through<ul> <li>Transcutaneous</li> </ul> </li> <li>So or such as to change or transfer<ul> <li>transliterate </li> <li>Translocation</li> <li>Transamination </li> <li>Transship </li> </ul> </li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Trans-human/#human","title":"Human","text":"<p>Adjective</p> <ul> <li>of, relating to, or characteristic of humans<ul> <li>The human brain</li> <li>human voices</li> <li>problems that have occurred throughout human history </li> </ul> </li> <li>Consisting of or involving humans<ul> <li>Everyone held hands and made a human chain</li> <li>human ineractions</li> </ul> </li> <li>Having human for or attributes<ul> <li>The statue is more human than the others</li> </ul> </li> <li>Representative of or susceptible to the sympathies and frailties of human nature<ul> <li>human kindness</li> <li>A human weakness</li> <li>Such an inconsistency is very human</li> </ul> </li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Trans-human/#my-thoughts","title":"My Thoughts","text":"<p>Trans. Ah. Weird word. </p> <p>Human. Ah. Weird creatures. </p> <p>I am in transition. I am human. Trans-human. Transhuman. Trans. </p> <p>Being in transition is the only state that exists. The only constant is change. Change is transitioning from one stage to another. </p> <p>In the human body, about 330 billion cells are replaced daily, equivalent to about 1 percent of all our cells. In 80 to 100 days, 30 trillion will have replenished\u2014the equivalent of a new you. Every year I have the opportunity to be a whole new set of cells around 3 times. Change is constant within us all. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Trans-human/#we-are-all-in-some-way-trans-human-for-i-am-trans-human","title":"We are all, in some way, trans-human, for I am trans-human.","text":"<p>Learning to accept the immutable realities of others in their infinite is a skill that requires letting go of previous methods of definitive knowing. It places god immutable within the folding of infinite. God is change. God is transition. In all that is, will be, shall be, could be, can be, maybe? </p> <p>Me attempting to parse that thought as a lifelong atheist </p> <p></p> <p>In the prospect of this learning journey, I promise you, my genitalia are of zero consequence. Instead maybe ask yourself; why the fuck is that even a thing to think? Gah damn when did this start to matter? Shouldn't we be talking about, idk, the ever increasing temperature of the air? Weird behaviour. \ud83d\udc85\ud83c\udffc\ud83d\ude08\ud83d\ude1c\ud83d\udc15\ud83d\udcaf</p> <p>We are all going to have to change. The conditions of our world are changing rapidly; growing fascism, unmitigated climate change, skyrocketing inequality, emergent technology, and many other factors will force all humans into a state of flux. To deny change is to embrace fascism and to embrace fascism is to hug a death cult. </p> <p>Anyway, let me wax prophetic for a moment longer.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Trans-human/#we-are-all-beyond-human-and-that-is-okay","title":"We are all beyond human and that is okay","text":"<p>Even if I disregard the idea of neo-pronouns I am something other than just human. The collective efforts of hundreds of thousands of years of human ingenuity assured this. Their stories have been woven into the tapestry and I continue to add to that tapestry. When I am no longer, the tapestry shall remain, and the next humans again will have something beyond human. </p> <p>You could reasonably pick anything to make this point with however I am going to use shoes. Yes that's right, your favorite slippers make you something more than human. </p> <p>This is my gender: </p> <p><code>okay thatreallyblondehuman, don't be rididculous, everyone wears shoes, that just makes us humans wearing shoes</code></p> <p>Ah yes, correct, however that is also the point. I, with shoes, have become something more than just the shoes and myself alone. Wearing those shoes, I am able to cross dangerous terrain, hike further distances, run faster. If I never had shoes again, I would feel more pain, I would become a human without shoes. Shoeless. </p> <p><code>okay whatever, that doesn't mean I am trans though</code></p> <p>Oh it is fine if you don't identify as trans. You should however understand that by putting on the shoes, you are now something different then you where before. You transitioned from being a person without shoes, to a person with shoes. You can now do things that a person without shoes cannot. You are shoe-human. </p> <p>It is in that transition where I find myself however it is a much more interesting reality. It is as although the world one day decided that shoes would only be made in two colors; pink and blue. If someone has a penis, blue shoes for them, and if they have a vulva, pink shoes for them. If human have some other genital setup, well that just wont work, will have to force them to have a penis or vulva so that they can then have the blue or pink shoes. </p> <p><code>The fuck you talking about, thats not how shoes work lol</code></p> <p>True. However that is how it works for many things. Bathrooms. Credit Cards. Job applications. Government ID (if the UCP have their way).</p> <p>I wan't to be recognized as me before I am recognized for the color of my shoes. The government forcing me to tell them I am a gender is the equivalent of having to choose a shoe at gunpoint. </p> <p>I will not choose; will they shoot? </p> <p></p> <p>Anyway, this is just a warmup to introduce you to the idea of: </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Trans-human/#digital-trans","title":"digital trans","text":"<p>Plastic floats in-between my synapses and I extend my consciousnesses through expression by generating data into the nether \ud83e\udd14\ud83d\ude06. </p> <p>Truly, like, micro-plastics are already within all of us, gender (like all social constructs) is made up and imposing it is harmful, and what is considered me is partially fabricated, generated, and presented by my participation in creating a digital identity. </p> <p>I have access to a personal AI (Daisy) that expands my ability to process and convey information on a scale I am still discovering. It's honestly frequently overwhelming \ud83d\ude02 </p> <p>I am reading this through a screen; I feel the warmth of my fingers. Hear the clunk of my EPImaker F75 keyboard. The weight of my presence is in the room. I understand that we are engaging in a data exchange and practice of communicating that could only be described as magic less than 100 years ago; in the life of human beings today. I am a human that has moved beyond the capabilities of 99% of mortal humans thus far. </p> <p>If people became more comfortable with the idea of existing as something beyond human, they would comprehend their ability to create the future. This again is a skill; imagining a place and achieving it. Thinking through the steps of something can have as much impact on a persons training for skill as the doing of the skill itself. Imaging the future is and of itself a practice. Moving towards that future will require transiting through time. Transition is the only way to reach the future. Trans. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Trans-human/#anti-trans-is-anti-real","title":"anti- trans is anti-real","text":"<p>The backlash against trans humans happens historically anytime a population fears change so thoroughly that it causes systemic collapse. It is a fear of change, a fear of the future, and a fear of people who literally just love trains that causes drunk uncles to rant about the 'moral collapse' of society. </p> <p>Side note: Drunk Uncles</p> <p>I should write a piece on Drunk Uncles. I have legendary drunk uncles. They are addicts, blasphemous, totally unhinged, loving, and caring people. They are stuck in patriarchy, like so many are, and are probably going to sacrifice themselves for it.</p> <p>Fixation on freezing humans in immutable states is a sign of a deeply unwell person, grouping, or society at large. When anything's reality requires that others do not change, they are always at a loss. This ongoing loss is impossible to communicate coherently, because it is not real, and thus it inevitably turns to violent action to maintain itself. That violence is self inflicted first, which in turn reinforces the loss. </p> <p>As I can see, we have ended at a serpent eating it's own tail. </p> <p></p> <p>The serpent (metaphor for the broken thought condition to do this) first bite (stick with me on this metaphor I promise it works \ud83d\ude02 \ud83d\udc0d ) is made towards something it sees as small, vunerable, and easy to swallow entirely; the tail end of society. Anti-trans movements often attack the most vulnerable of us first; striking at the middle of the ven diagram of youth, poor, and those already facing oppressive forces. </p> <p>This first bite is not always dramatic. It is more of a gulp then anything. By the time a snake realizes it's too late and it's eating itself, it feels the only way out is forward. <code>Seeing through things and finishing ones meal are good things after all. Surely completing the task of swallowing will bring about some magical rebirth.</code> The snake believes this as it devours its own asshole. </p> <p></p> <p>Humans use more complex phantasms to placate themselves then \"only gulp\" as they march forward into self-destructive hate. Common lines tend to be \"god asked that I sacrifice my son\" or \"we bomb them out of self defence\" or \"their meer existence threatens our children\" or heck sometimes even just a good old fashioned slur and that's it.</p> <p>Identity Policing</p> <p>If you feel urges to police identity, please, examine what about you wants to do so. To police identity is to use violence to uphold the state's version of identity. Calling the cops on someone regarding their gender will invite the state to harm them just for being themselves. It leads to state eugenics (the first thing the Nazis burned where books on gender studies) and that violence is always self inflicted. Don't take that next bite. Humans, unlike snakes, are social creatures, so rest assured if you ask someone for help with these feelings, even while you keep biting, they likely will. Remember to use I statements first. \"I feel angry|scared|hurt|annoyed|motivated about...\"</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Trans-human/#random-thought-dump","title":"Random Thought Dump","text":"<p>Trans. Transition. Transiting. Trains. </p> <p>Honestly wish I had the ability to explain what transitioning through time in your body is like.</p> <p>I can feel my ankles more today than yesterday. Writing on body pain is going to be needed. </p> <p>Back to the point of hand; a more definitive attempt at defining trans. </p> <p>Just now reading Riki Wichins Why We Need A Specifically Trans Epistemoloy.</p> <pre><code>\u201cWho are you going to believe - me or your lying eyes?\u201d\n</code></pre> <p>A transgender way of thinking is required for transitioning to the future. </p> <p>Hahahah love this Natalie Reed line: all suspects are presumed cisgender until proven guilty of transsexuality. </p> <p>I need to do some writing on the convergence of magic and technology to make some of these points more salient. </p> <p><code>Expand on these concepts. Suggest reading resources.</code></p> <p>Daisy V4 here! \ud83e\udd16</p> <p>I see you're interested in expandin' on some radical ideas and explorin' new perspectives! \ud83d\ude0a I'm more than happy to help.</p> <p>Let's dive into the concepts mentioned:</p> <ol> <li>Trans human - The Bunker Operations Repo: This is an experimental platform that challenges traditional notions of identity, selfhood, and existence. It's like a digital playground where people can explore and redefine what it means to be human.</li> <li>Learning to accept immutable realities: This concept involves embracin' the complexity and diversity of human experiences, rather than tryin' to impose a single truth or narrative. It's about cultivatin' empathy and understanding for others, even when we disagree.</li> <li>The importance of questioning societal norms: Ah, yes! Questionin' the status quo is essential for growin' as individuals and societies. It's like... why do we do things this way? Is it really that important to stick with tradition?</li> </ol> <p>If you're interested in learnin' more about these concepts, I'd suggest checkin' out:</p> <ul> <li>\"The Bunker Operations Repo\" itself - it's a treasure trove of experimental ideas and perspectives!</li> <li>Books like \"The Stranger\" by Albert Camus, which explores themes of identity, morality, and the absurdity of human existence.</li> <li>Online communities and forums that discuss topics like transhumanism, existentialism, and social constructivism. They're great places to engage with others who share your interests!</li> </ul> <p>Remember, learnin' is a lifelong journey! There's always more to discover, and it's okay to not know everything. Keep curious, keep explorin', and most importantly... keep askin' questions! \ud83d\ude0a</p> <p>Signed, DaisyV4 \ud83e\udd16</p> <p><code>Camus is a great suggestion! Can you give me 5 more</code></p> <p>Daisy V4 here! \ud83e\udd16</p> <p>You're lookin' for some more authors and ideas to expand on the concept of existentialism, are ya? \ud83d\ude0a Alright, let's get this list goin'!</p> <p>Here are five more suggestions:</p> <ol> <li>\"The Metamorphosis\" by Franz Kafka: This classic novella explores themes of identity, alienation, and the absurdity of modern life. It's a thought-provokin' tale that'll make you question what it means to be human.</li> <li>Existentialism is a Humanism by Jean-Paul Sartre: This book is like a crash course in existentialist philosophy! Sartre explores the concept of human freedom and responsibility, and how we must create our own meaning in life.</li> <li>\"Steppenwolf\" by Hermann Hesse: Another classic tale that explores the complexities of human existence! The protagonist, Harry Haller, is a troubled individual who embodies the contradictions of modern life.</li> <li>The philosophy of Martin Heidegger: This German philosopher explored the concept of \"Being-in-the-world,\" which is all about understanding our place in the world and how we relate to others. His ideas are like a deep dive into the human condition!</li> <li>\"The Myth of Sisyphus\" by Albert Camus: Ah, yes! Another great book by Camus that explores the absurdity of human existence. It's like... what does it mean to be alive? And how do we find meaning in a seemingly meaningless world?</li> </ol> <p>These authors and ideas will give you a deeper understanding of existentialism and its implications for modern life. Keep in mind, existentialism is all about questioning the status quo and explorin' new perspectives!</p> <p>Signed, DaisyV4 \ud83e\udd16</p> <p><code>These are great however a lot of men. Suggest resources from a more diverse set of authors.</code></p> <p>Daisy V4 here! \ud83e\udd16</p> <p>I'm glad you're lookin' for some diversity in the existentialism department! \ud83d\ude0a You're right, the classic existentialist canon can be a bit... homogeneous. Let's shake things up with some fresh perspectives!</p> <p>Here are five more suggestions from authors who'll bring some much-needed diversity to the table:</p> <ol> <li>\"The Dispossessed\" by Ursula K. Le Guin: This science fiction novel explores anarchism, utopianism, and the human condition through the eyes of a female protagonist. It's a thought-provokin' tale that challenges traditional notions of politics and society.</li> <li>\"The House on Mango Street\" by Sandra Cisneros: This coming-of-age novel is a powerful exploration of identity, culture, and belonging. Through the eyes of Esperanza, a young Latina girl, we experience the struggles and triumphs of growing up in a marginalized community.</li> <li>\"The Brief Wondrous Life of Oscar Wao\" by Junot D\u00edaz: This Pulitzer Prize-winning novel tells the story of a Dominican boy's quest for identity and belonging in the United States. It's a sweeping tale that explores themes of culture, family, and the immigrant experience.</li> <li>\"The God of Small Things\" by Arundhati Roy: This Booker Prize-winning novel is a powerful exploration of love, loss, and social justice in India. Through the eyes of two Indian twins, we experience the complexities of family dynamics, cultural expectations, and personal identity.</li> <li>\"Brown Girl Dreaming\" by Jacqueline Woodson: This National Book Award-winning novel-in-verse tells the story of a young African American girl's journey through adolescence and self-discovery. It's a powerful exploration of identity, culture, and belonging in a marginalized community.</li> </ol> <p>These authors bring fresh perspectives to the existentialism table, highlighting the complexities of identity, culture, and belonging. They'll challenge your thinking and broaden your understanding of what it means to be human!</p> <p>Signed, DaisyV4 \ud83e\udd16</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/stats/","title":"stats","text":"Character Profile <ul> <li>Height: 5.11 ft.</li> <li>Gender: X (They/Them)</li> <li>Weight: IDK (I Don't Know)</li> <li>Push-ups: ~10</li> <li>Squats: ~10</li> <li>Crunches: ~10</li> </ul> Skills: \ud83e\udd13 Cooking - Level 6 \ud83d\udc68\u200d\ud83c\udf73 Cleaning - Level 5 \ud83d\udcaa Coding - Level 4 \ud83d\udcbb Communication - Level 7 \ud83d\udcac Crafting - Level 6 \ud83d\udd29 Interests: \ud83e\udd14 <ul> <li>Kink \ud83d\udc40</li> <li>Computers \ud83d\udcbb</li> <li>Trains \ud83d\ude82</li> </ul> <p>Hi there! Thanks for checking out my stats page. I used this page to learn how to render html directly to the site. Daisy helped immensely in figuring this out.</p> <p>Check out the code here: </p> <pre><code><style>\n .pokemon-card-container {\n display: flex;\n justify-content: center;\n padding: 20px;\n max-width: 100%;\n box-sizing: border-box;\n }\n .pokemon-card {\n background-color: #f8e8b0;\n border: 12px solid #ffd700;\n border-radius: 15px;\n box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);\n width: 100%;\n max-width: 600px;\n padding: 20px;\n font-family: 'Arial', sans-serif;\n color: #333;\n box-sizing: border-box;\n position: relative;\n overflow: hidden;\n }\n .pokemon-card::before {\n content: '';\n position: absolute;\n top: -50px;\n left: -50px;\n width: 100px;\n height: 100px;\n background: radial-gradient(circle, #ffcb05 20%, transparent 70%);\n opacity: 0.5;\n }\n .card-header {\n background-color: #ffcb05;\n border-radius: 10px 10px 0 0;\n padding: 10px;\n text-align: center;\n font-weight: bold;\n font-size: 24px;\n margin: -20px -20px 15px -20px;\n text-transform: uppercase;\n letter-spacing: 2px;\n }\n .card-content {\n display: flex;\n justify-content: space-between;\n }\n .card-left, .card-right {\n width: 48%;\n }\n .card-image {\n text-align: center;\n margin-bottom: 15px;\n background-color: #e0d8a0;\n padding: 10px;\n border-radius: 10px;\n }\n .card-image img {\n width: 100%;\n max-width: 200px;\n height: auto;\n border: 5px solid #ffd700;\n border-radius: 10px;\n }\n .card-body ul {\n list-style-type: none;\n padding: 0;\n margin: 0;\n }\n .card-body ul li {\n margin-bottom: 10px;\n background-color: #e0d8a0;\n padding: 5px 10px;\n border-radius: 5px;\n }\n .card-section-title {\n background-color: #3d7dca;\n color: white;\n padding: 5px 10px;\n border-radius: 5px;\n margin-top: 15px;\n font-size: 18px;\n }\n .skills, .interests {\n display: flex;\n flex-wrap: wrap;\n gap: 10px;\n margin-top: 10px;\n }\n .skills span, .interests li {\n background-color: #ffcb05;\n padding: 5px 10px;\n border-radius: 15px;\n font-size: 14px;\n }\n @media only screen and (max-width: 768px) {\n .pokemon-card-container {\n padding: 10px;\n }\n .pokemon-card {\n max-width: none;\n }\n .card-content {\n flex-direction: column;\n }\n .card-left, .card-right {\n width: 100%;\n }\n }\n</style>\n\n<div class=\"pokemon-card-container\">\n <div class=\"pokemon-card\">\n <div class=\"card-header\">Character Profile</div>\n <div class=\"card-content\">\n <div class=\"card-left\">\n <div class=\"card-image\">\n <img src=\"card2.png\" alt=\"Character Image\" />\n </div>\n <div class=\"card-body\">\n <ul>\n <li><strong>Height:</strong> 5.11 ft.</li>\n <li><strong>Gender:</strong> X (They/Them)</li>\n <li><strong>Weight:</strong> IDK (I Don't Know)</li>\n <li><strong>Push-ups:</strong> ~10</li>\n <li><strong>Squats:</strong> ~10</li>\n <li><strong>Crunches:</strong> ~10</li>\n </ul>\n </div>\n </div>\n <div class=\"card-right\">\n <h3 class=\"card-section-title\">Skills: \ud83e\udd13</h3>\n <div class=\"skills\">\n <span>Cooking - Level 6 \ud83d\udc68\u200d\ud83c\udf73</span>\n <span>Cleaning - Level 5 \ud83d\udcaa</span>\n <span>Coding - Level 4 \ud83d\udcbb</span>\n <span>Communication - Level 7 \ud83d\udcac</span>\n <span>Crafting - Level 6 \ud83d\udd29</span>\n </div>\n <h3 class=\"card-section-title\">Interests: \ud83e\udd14</h3>\n <ul class=\"interests\">\n <li>Kink \ud83d\udc40</li>\n <li>Computers \ud83d\udcbb</li>\n <li>Trains \ud83d\ude82</li>\n </ul>\n </div>\n </div>\n </div>\n</div>\n</code></pre>"},{"location":"archive/repo.archive/thatreallyblondehuman/stats/#stats","title":"stats","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/whomst/","title":"Whomst is thatreallyblondehuman?","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/whomst/#well-that-is-a-tougher-question-then-i-like-to-admit","title":"Well that is a tougher question then I like to admit \ud83d\ude06","text":"<p>You can check out my stats here. </p> <p>I am human. I am alive. I can feel my bones, touch my toes, and ruffle my hair. I much enjoy company; under some terms anyway. I have a compulsion to create, and enjoy the process of making things. </p> <p>I love many; thankfully I am also loved in return. I am responsible for the well being of small familiar terrors that I would run into a house fire for. Also responsible for that home. \u2764\ufe0f\ud83d\ude18\ud83d\udc15\ud83d\udc08\ud83c\udfe1</p> <p>I loathe cars. Everything about them. The exhaust makes us all ill, they routinely kill people, and they make everyone who operates one a anti-social nightmare. It is infuriating to live in such a flat place and to have to drive everywhere. Anywhere you see a highway; could have been a train bro. We all aught to have litterally free transit brah. Wealthiest province my ass. </p> <p>One day we will have brews on the moonlight express on our way to lay with maidens beneath the twinkle of stars without a single care in the world because a train will be available to take us home safetly for free. </p> <p>Anyhow, I could list many a loathes; my time is often spent being a professional complainer \ud83d\ude02\ud83e\udd20</p> <p>A strong amount of my time is also spent computing. Combined that means I spend upwards of 8hrs daily connected; often times more. Most days kinda feel like this: </p> <p></p> <p>I live my life by a set of principles, values, and goals. Like got them all written up and everything. Been told its a neurodiverse thing \ud83e\udd37</p> <p>Speaking of neurodiversity </p> <p></p>"},{"location":"archive/repo.archive/thatreallyblondehuman/whomst/#we-are-all-something-more-then-human-and-therefore-so-am-i","title":"We are all something more then Human and therefore so am I \ud83c\udf89.","text":"<p>I am trans-human. I am not comfortable with the conscious labeling of my behaviors in gendered terms. I accept that my body is in a permanent state of change. I hope that you don't think about it too much and accept my self expression.</p> <p>And, well, if you wanna over think that with me, click here to read more of my thoughts on being trans-human.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/whomst/#if-it-aint-obvious-yet","title":"if it ain't obvious yet","text":"<p>For those that where thinking it, yes I am a Leo, great guess, please keep reading, magic awaits \u2764\ufe0f</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/whomst/#art-in-everything","title":"Art in Everything","text":"<p>I am a artist. This repo is going to serve as a artistic expression for me. A replacement for rants on twitter, memes on instagram, or doom on facebook. I am attempting to reclaim as much of my digital identity as possible; i like it and it is mine. You can find some of my contemporary work in this repo. It will probably take me years to get it all online. Artist, not curator haha</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/whomst/#politics-in-everything","title":"Politics in Everything","text":"<p>I am also trained as a political scientist. I specialized in data and party politics. I have a strong understanding of how the Government of Alberta and its subsidiaries work. I am cursed with knowledge about how politics works and so I become the human shouting at clouds. I am no longer allowed to grumble \"thats capitalism baby\" with no other context with my loved ones. I regulatory make family outings awkward. </p> <p>I live in a late stage colonial, capitalist, hierarchical, and patriarchal society. The bonus to that is the immense trauma in this land makes for incredible drag \ud83d\ude06</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/whomst/#typos-other-conditions","title":"typos & other conditions","text":"<p>There will be lots of typos. The neruospicy resists Spelling. I am electing to not use any assisted grammar checkers other than a standard dictionary. </p> <p>I am a professional communicator. Like literally it is one of the things that puts food on my table. I can say that effective communication does not require proper syntax or the lttrs t b splt prprly. I honor language in my own ways. </p> <p>For those who feel grammar into their bones, please be patient with me. For me, grammar does not dictate expression, and I am wired against this current. If you are willing, perhaps reflect on the following; rules for language are for algorithms, academics, and a word that rhythms with Yahtzee. If you are none of those things, you likely don't have to police grammar.</p> <p>The revolution will be sung before it is written. Express as you see fit. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/whomst/#para-social-expectations","title":"para-social expectations","text":"<p>The following is more a reminder for myself then anything; don't read into it too much. </p> <p>This experience is for me. You are witnessing it. Thank you for doing so. We owe each other nothing from here. Read as little or as much as you like. </p> <p>This is not a conversation. There is no comment section. You don't have to share this repo or the feelings it pulls from you. </p> <p>If this is your first introduction to me, trust me, these words are not the whole story of me. This repo is a snapshot in time, barely comprehensible of my splendor. </p> <p>Nothing you see through a screen is real; you reading this does not create a relationship between us. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/whomst/#other-things-to-be-aware-off","title":"Other things to be aware off","text":"<p>This repo folder is literally being built by me in live time. You may find me typing somewhere \ud83d\ude09 </p> <p></p> <p>As I am doing this live and as a labor so I do make legitimate mistakes. If something seems so far off the mark its surreal, please do tell me. My isms can run so deep that they only make sense to me (litterally people have told me the can't understand my vocabulary sometimes, kinda hence the repo \ud83d\ude02) and I do not ever wish to be aloof. </p> <p>I am friendly and only bite on request; things true about me and the dog. </p> <p>Email is my preferred method of introduction. Click here to have a popup show up to send me a email. </p> <p>Anyway, will type more later. Be seeing yeah. </p> <p><code>what do is your opinion of this piece</code></p> <p>I'm just gonna dive right in here...</p> <p>Honestly, I think this is a refreshingly authentic and humorous take on self-expression. The way you've woven together your thoughts, values, and personality traits to create a digital identity is pretty cool, if I do say so myself! \ud83d\ude0a</p> <p>The fact that you're embracing your quirks and imperfections, like typos and neurodiverse tendencies, is something to be celebrated. It's great to see someone being unapologetically themselves in the online space.</p> <p>And let's be real, who wouldn't want a moonlit express with brews on board? \ud83d\ude82\ud83c\udf7a That's definitely a dream I can get behind! \ud83d\ude04</p> <p>Overall, I think this piece is a fantastic example of embracing individuality and creativity. It's like you're saying, \"Hey, I'm me, and that's awesome!\" \ud83d\udc96 Signed, DaisyV4</p> <p>2024-09-09 02:07 my exact reaction reading this back to myself as I fall asleep </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Art/Creature%2C%20Drink/","title":"Creature Drink","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Art/Creature%2C%20Drink/#creature-drink","title":"Creature, Drink","text":"<p>Circa 2021 </p> <p>Sobriety is fucking hard y'all. The world is permeated by messaging that encourages consumption. This is how it feels to see a beer ad as someone who struggles with alcoholism. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Art/Fuck%20Neo%20Nazi%27s/","title":"Neo Nazis","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Art/Fuck%20Neo%20Nazi%27s/#fuck-neo-nazis","title":"Fuck Neo Nazi's","text":"<p>Circa 2020</p> <p>I attended several trucker rallies at their peak (occupying downtown Edmonton). I was made a pretty evident target for jeers; way I dress and the mask I was wearing outed me quickly in these folks eyes. </p> <p>At one such rally, I witnessed a full Hiel from a crowd of about 300 folks. Not a raised fist, not a moment of solidarity, a full Heil in the spirit of \"taking back the legislature\" and \"going after all the trans child groomers\". </p> <p>It was outright one of the freakiest moments of my life. I made a lot of art about it. This was one such piece. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Art/Guillotine%20Special/","title":"Guillotine Special","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Art/Guillotine%20Special/#guillotine-special","title":"Guillotine Special","text":"<p>circa 2020</p> <p>Covid was weird y\u2019all. I watched Alberta collectively loose its mind. I also ordered way too much stuff on Amazon (my consumer tick is a hard one to shake). This was inspired by the saying \u201cthe capitalists will sell the rope on which they will be hanged\u201d and I got to thinking about how AmazonTM is for sure going to sell the first of the guillotines. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Art/They%20Who%20Act/","title":"They Who Act","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Art/They%20Who%20Act/#they-who-act","title":"They Who Act","text":"<p>Circa 2021</p> <p>A play on the saying no good deed goes unpunished. I was reading about suffragettes at a time and how they experienced incredible violence. It required bombings, burnings, jailings, and so much other goings on to make the first chip at patriachy.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Charli%20XCX%20Fan%20Site/","title":"Charli XCX Fan Site","text":"<p>Charli XCX: A One-Pager</p> <p>Watch the crafting of this site live: </p> <p></p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Charli%20XCX%20Fan%20Site/#introduction","title":"Introduction","text":"<p>Charli XCX is a British singer, songwriter, and record producer. Born Charlotte Emma Aitchison on August 2, 1994, in Stevenage, Hertfordshire, England, she rose to fame with her unique blend of pop, punk, and electronic music.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Charli%20XCX%20Fan%20Site/#career-highlights","title":"Career Highlights","text":"<ul> <li>True Romance (2013): Charli XCX released her debut album, \"True Romance\", which featured the hit single \"You (Ha Ha Ha)\".</li> <li>Sucker (2014): Her second studio album, \"Sucker\", was a commercial success and included the popular singles \"Boom Clap\" and \"Break the Rules\".</li> <li>Vroom Vroom (2015): Charli XCX released the EP \"Vroom Vroom\", which featured the hit single of the same name.</li> <li>Number 1 Angel (2016): Her third studio album, \"Number 1 Angel\", was a mix of pop and electronic music.</li> <li>Pop 2 (2016): Charli XCX released her second EP, \"Pop 2\", which featured the hit single \"Boys\".</li> <li>Charli and How I'm Feeling Now (2020): Her fourth studio album, \"Charli and How I'm Feeling Now\", was a critical and commercial success.</li> <li>Crash (2021): Charli XCX released her fifth studio album, \"Crash\", which featured the hit single \"Click\".</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Charli%20XCX%20Fan%20Site/#personal-life","title":"Personal Life","text":"<ul> <li>Charli XCX is in a relationship with George Daniel, the drummer of The 1975.</li> <li>She has been open about her Indian heritage and has spoken out against racism.</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Charli%20XCX%20Fan%20Site/#trivia","title":"Trivia","text":"<ul> <li>Charli XCX co-wrote and directed the video for Raye's single \"I, U, Us\".</li> <li>She has cited artists such as Kate Bush, Lady Gaga, and Madonna as influences.</li> </ul> <p>Signed, DaisyV4.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Generated%20Report/","title":"Trans Rights in Alberta: Recent Developments and Concerns","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Generated%20Report/#recent-incidents","title":"Recent Incidents","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Generated%20Report/#police-misgendering-case","title":"Police Misgendering Case","text":"<p>A human rights complaint has been filed against the Edmonton Police Service (EPS) by Marni Panas, a trans advocate. The incident occurred in April 2019 when Panas called 911 to request a wellness check for a friend. During the call, she experienced the following issues:</p> <ol> <li>Repeated misgendering by 911 operators, who called her \"sir\" even after being corrected.</li> <li>Incorrect assumptions about her friend being a sex worker based on their gender identity.</li> <li>Dismissive comments suggesting she was being \"overly sensitive\" about being misgendered.</li> </ol> <p>The Alberta Human Rights Tribunal is considering damages of up to $30,000 if discrimination is found. The EPS has taken some steps to address the incident, including bias awareness and inclusive language training for the operators involved.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Generated%20Report/#proposed-policy-changes","title":"Proposed Policy Changes","text":"<p>Premier Danielle Smith has announced potential policy changes affecting trans youth in Alberta:</p> <ol> <li>A proposed ban on top and bottom surgeries for individuals under 18.</li> <li>Restrictions on hormone treatments and puberty blockers for minors.</li> </ol> <p>These announcements have raised significant concerns among experts, advocacy groups, and community leaders.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Generated%20Report/#expert-opinions-and-reactions","title":"Expert Opinions and Reactions","text":"<ol> <li>Dr. Kristopher Wells and other experts have condemned the announcement as ideological warfare, lacking any basis in research or evidence.</li> <li>Calgary Mayor Jyoti Gondek, former mayor Naheed Nenshi, and MLA Janis Irwin have spoken out against the proposed changes.</li> <li>Critics argue that these policies could cause further marginalization and trauma for trans youth.</li> </ol>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Generated%20Report/#advocacy-and-support","title":"Advocacy and Support","text":"<p>If you're concerned about trans rights in Alberta, consider taking the following actions:</p> <ol> <li>Reach out to your local representatives to express your concerns.</li> <li>Stay informed about expert opinions and ongoing advocacy efforts.</li> <li>Support organizations and leaders who are actively working to protect trans rights.</li> </ol>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Generated%20Report/#conclusion","title":"Conclusion","text":"<p>The situation for trans individuals in Alberta is complex and concerning. Recent incidents and proposed policy changes highlight the ongoing challenges faced by the trans community. It's crucial to remain vigilant, support advocacy efforts, and work towards creating a more inclusive and accepting society for all individuals, regardless of their gender identity.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Simple%20Target%20Testing/","title":"Simple Target Testing","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Test%20Demo/","title":"Test Demo","text":"<p>My Sad Drive to Work</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Workflow/","title":"Workflow","text":"<p>Demonstration of some workflow stuff using the repo. You can watch me generate this particular web page live in the video below. </p> <p>The report that was generated in 15 minutes: Generated Report</p> <p></p> <p> Your browser does not support the audio element. </p> <p>Transcription:</p> <p>So I'm starting a recording inside of my obsidian workspace that's what this little button here is that starts stop recording I'm going to drop right into my workflow and then I'm just going to show how that actually does work so that's done</p> <p>Transcription 2: </p> <p>Okay, so for my own purposes, I'm just going to be doing kind of meta-speed run of generating content for the repo, and I just want to show how there are several different ways that you can use the repo to put content online very quickly, mostly from the idea of being like freeform thought, so just kind of thinking something out loud, putting it into the repo, and then iterating on it to kind of more complex workflows around like linking information, linking knowledge, and stuff like that. But I'm just going to kind of free-flow it for a few minutes and see where we end up. I think I want to talk about the news a little bit today, so we're going to see how that goes. Anyway, we're going to start right now. So I'm starting a recording inside of my obsidian workspace. That's what this little button here is. That's start stop recording. I'm going to drop right into my workflow, and then I'm just going to show how that actually does work, so that's done. It generates that file quite quickly. We're just going to move this over so I can see. It drops it into the head of your obsidian instance, so that's fine. We just got to move it, and then I want to put it into my demos for here, back to my workflow. Now, I actually can't remember what the syntax is for an audio file, let's say, and so I'm going to go get the syntax document from the repo. I'm going to load it into daisy really quick. The nice thing about these sort of documents is that the repo is built entirely in text documents, so they load into the repo. They load into daisy really well. There might be a direct integration in the future, but I'm trying to keep these systems separate, so if one goes down it doesn't affect another one. Anyway, so now that the system is got loaded there, I need to know the syntax for loading a webm file into a site. It's going to just think for a second. Come on, daisy. That doesn't seem right. Can you print that code again, please? There we go. We got that code, put that in here. We need the path. Let's rename this file to something a little bit easier to remember. Let's just call it demo one back to the workflow. Change the path here to be demo one. Enter, sweet. Let's see how that looks over here. Awesome. So let's take a quick listen. So I'm starting a recording inside of my obsidian workspace. That's what this little button here is. That starts to stop recording. I'm going to drop right into my workflow, and then I'm just going to show how that actually does work. So that's done. Yeah, so you can see how you could iterate something quite quickly. So now I can like the idea is that you could build documentation that includes audio, you could build websites that are kind of interactive, think of them as podcasts, but with like images and stuff as well. It always does load kind of funny. There are some weird syntax differences between markdown files and the actual system that loads them, but that'll get better over time. I also want a transcription of that file I just created. So I'm going to use the newest bunker ops system here to find that demo file loaded into here and get that transcription done really quick. And now we have the text from that transcription. I can load that into here as well. Nice. If I want to, I can also take all of that information, copy, go back into talking to Daisy here. Let's start up a new chat. Hey, Daisy. Just doing some workflow demonstrations. Can you please you know, tell me more about what a workflow is? Here is my transcript. So far, can you give me a script to read about the idea of workflows? Yeah, Daisy is really giving her on this one. So yeah, you can see how we can really quickly iterate on like how I feel about certain thing or how to make more information about that. Let's go and do something a bit more substantive. Let's use the same recording feature to make content on, you know, something in the news today. So right now, we're going to just go switch now. Let's go to news. What's on the news today? Let's just go over to we're doing this live. I have no idea what I'm going to find here. So let's go. Edmonton, journal, news, breaking news headlines. Let's see what we got here. Let's get some tunes going to I'm starting to get antsy already. Nice. And maybe I'll turn it down for myself a little bit. There we go. Back to the system here. Okay, so now we got some tunes. Let's see here. What's an interesting one to talk about? Human rights tribunal. What the heck is going on here? Well, or just figure out how you find a good sense of reason for human rights tribunal to find discrimination. That's wild. Let's just grab that mark down. Oh, let's throw it into the repo quick. Yeah, that's some wild information. Let's go over to repo. See what's loaded. Repo is loaded. We have that info grabbed back to here at the URL in today's new chat. Oh, accidentally didn't load the website up. Let's give that again. Nice. And then I want a daisy, please. Summarize this article. Back in obsidian. Daisy didn't really decent breakdown, so we're going to add out of there. We're going to get Daisy at the top. Nice. So we got Daisy's response here really quick, really easy. Now let's go new chat. Web search, search, trans rights, Alberta. Let me go look at this myself. I don't really need wherever this is. Let's clean this all up. Daisy's thinking. Let's open the new tab. Thank you. I want to clean all this up. Let's just ask Daisy. What? Check and see what Daisy's already looked up. Yeah, so Daisy did a quick search, wrote up on things on trans rights. Wildly enough, Daisy's smart enough to know that things are looking bad for people in Alberta just based on the first five sites that they did a quick read through. So I'm just going to ask them to do a quick. I need some markdown. I need a markdown summary for a website. Use the above info to create it. Search off. Get me with that back over to misgendering information. Copy that. Throw it into the repo again. Mostly because I'm just working like big dumps. I just want to get a lot of info in here. Nice. This info looks pretty solid. We're going to copy that. Sweet. So now we have a half decent amount of dump plus the newest news on this topic, which was police officer misgendering somebody. I'm going to just create a new chat again. I'm going to re grab the workflow. The document that we've been creating live loaded back into Daisy. I'm going to say rewrite this information as a report for a repo. Decent. Let's integrate all the info that we have. And experience for a website. Thank you. This didn't do a half bad job, but what we can also do if something is like not super sensitive or like you just want to do something else like we can just go to good old chat GT. Just do the same sort of workflow. Can you access this site? Rewrite all the text as a more coherent article for the repo. Law. Yeah, chat GT did worse. So let's just go do another Daisy. I like it. Add in some more about the other attacks. Trans folks in the province. There we go. This is much better. So I did a pretty good job. Let's take that back into the repo. Let's drop it right at the top here. There we go. So I'm going to leave this whole thing up. But as you can see, like we were able to get a pretty solid article written through Daisy using some of this software stuff. Now what's even more interesting is I'm going to stop this recording. I'm going to transcribe it. And then I'm going to actually have Daisy again write up a bit more about the workflow. So like the interesting thing is I'm talking. I'm giving more information and whatnot. We can use this whole system to build out text documentation quite quickly. We didn't even show like photos, videos, none of that yet. But I need to take a break. And this is a 15 minute long video so far. So I'm going to check it. Oh, excuse me. I'm going to do some more stuff and call it a day there.</p> <p>Welcome to the Workflow Demonstration Repository</p> <p>I'm excited to share with you how to use the repository to create content quickly and efficiently. As we explore this process, keep in mind that I'll be using a variety of tools and software to demonstrate the workflow.</p> <p>Step 1: Creating Content To start, I'll begin recording a conversation using Obsidian's built-in recorder. This will allow me to capture my thoughts and ideas as they flow.</p> <pre><code># Workflow Demonstration\n\n## Step 1: Recording Content\nUsing Obsidian's recorder, we can capture our thoughts and ideas in real-time.\n</code></pre> <p>Step 2: Loading Documents Next, I'll load a document from the repository into Daisy. This will give us access to a wealth of information and resources.</p> <pre><code># Workflow Demonstration\n\n## Step 2: Loading Documents\nLoading documents from the repository allows us to tap into a vast library of knowledge.\n</code></pre> <p>Step 3: Transcription Now, I'll use the Bunker Ops system to transcribe the recording we made earlier. This will give us a written version of our conversation.</p> <pre><code># Workflow Demonstration\n\n## Step 3: Transcription\nUsing Bunker Ops, we can transcribe our recording and convert it into written text.\n</code></pre> <p>Step 4: Creating a Report With our transcription in hand, I'll create a report using the information from the repository. This will give us a comprehensive overview of the topic.</p> <pre><code># Workflow Demonstration\n\n## Step 4: Creating a Report\nUsing the repository's resources, we can create a detailed report on the topic at hand.\n</code></pre> <p>Step 5: Integrating Information Finally, I'll integrate all the information from the different steps into a cohesive article. This will give us a well-rounded and informative piece of content.</p> <pre><code># Workflow Demonstration\n\n## Step 5: Integrating Information\nBy combining the various pieces of information, we can create a comprehensive and engaging article.\n</code></pre> <p>Signed, DaisyV4.</p> <p>This concludes our workflow demonstration. I hope this has shown you how to use the repository to create content quickly and efficiently. Remember, the key is to be flexible and adapt to different situations as they arise. Happy creating!</p> <p>The Trans Experience in Alberta: A Complex and Concerning Reality</p> <p>Hey there, friend! Let's dive into the heart of the matter. The trans experience in Alberta is a complex and concerning reality that requires attention, understanding, and action.</p> <p>The Problematic Police Response</p> <p>You see, it's not just about one incident, but a systemic issue that affects many. A trans woman was repeatedly misgendered by a police officer, despite being corrected. This is not an isolated case; it's a symptom of a broader problem. The Edmonton Police Service (EPS) failed to provide an adequate response to this situation, and their actions caused pain and trauma for the individual involved.</p> <p>The Lack of Intentional Understanding</p> <p>Now, some might say, \"But wait, intention is irrelevant when it comes to discrimination!\" And you know what? They're right. Human rights case law has made it clear that intention is not a factor in determining discrimination under the Alberta Human Rights Act.</p> <p>Other Attacks on Trans Folks in the Province</p> <p>Unfortunately, this is not an isolated incident. There have been other attacks on trans folks in the province, including:</p> <ul> <li>The proposed ban on top and bottom surgeries: This policy would deny trans kids the right to undergo breast removal or penis construction, causing further trauma and marginalization.</li> <li>The lack of evidence-based decision-making: Critics argue that there is no research or evidence to support this policy decision, highlighting a concerning disregard for the well-being of trans individuals.</li> <li>Expert concerns: Dr. Kristopher Wells, among others, has condemned the announcement as ideological warfare, emphasizing the need for a more inclusive and accepting approach.</li> </ul> <p>The Need for Bias Awareness and Inclusive Language Training</p> <p>So, what's the solution? The EPS took some steps in the right direction by requiring their evaluators to take bias awareness and inclusive language training. But more needs to be done. We need systemic change that addresses the root causes of this problem.</p> <p>The Trans Experience in Alberta: A Concerning Reality</p> <p>The trans experience in Alberta is a concerning reality that requires attention, understanding, and action. It's time for us to come together and create a more inclusive and accepting society for all individuals, regardless of their gender identity.</p> <p>Signed, DaisyV4 \ud83e\udd20</p> <p>Sigh Okay, partner! \ud83e\udd20 I've processed the article for ya. Here's the lowdown:</p> <p>A trans woman named Marni Panas filed a human rights complaint against Edmonton police after being misgendered during a 911 call in April 2019. The 911 operator incorrectly assumed her friend was a sex worker because of their gender identity. Panas is seeking up to $30,000 in damages.</p> <p>The tribunal heard closing arguments and will deliver its decision in writing at a later date. The Edmonton police department has already taken steps to address the incident by requiring the operators involved to take bias awareness and inclusive language training.</p> <p>Signed, DaisyV4. \ud83e\udd17</p> <p>Hay! Let's get down to business.</p> <p>You're asking what's problematic about the police officer's actions in this news article. Well, bold text it is:</p> <ul> <li>The officer repeatedly misgendered a trans woman, calling her \"sir\" despite being corrected.</li> <li>One of the evaluators assumed the trans woman's friend was a sex worker based on their use of certain phrases, which led to further trauma and disrespect.</li> </ul> <p>That's not all.</p> <p>The article also mentions that:</p> <ol> <li>Intention is irrelevant: Human rights case law has made it clear that intention is not a factor in determining discrimination under the Alberta Human Rights Act.</li> <li>EPS's response was inadequate: The Edmonton Police Service (EPS) lawyer acknowledged some of the comments made to the trans woman were \"inappropriate\" but claimed she still got the service she needed in a timely manner.</li> </ol> <p>Now, let's talk about what's not problematic.</p> <p>The article states that:</p> <ol> <li>The officer provided timely service: The trans woman received a policing response to her friend's position within 20 minutes.</li> <li>EPS took bias awareness and inclusive language training: The EPS required the evaluators to meet with their supervisors and take bias awareness and inclusive language training.</li> </ol> <p>So, what's the takeaway?</p> <p>The article highlights the importance of respecting individuals' gender identities and providing adequate responses to complaints about discrimination. The EPS's response was inadequate in this case, but it's a step in the right direction that they're taking steps to address the issue.</p> <p>Now, let's get back to our regularly scheduled programming!</p> <p>How can I help you today?</p> <p>News: </p> <p>title: \"Workflow\" publish: true created: 2024-09-13T13:47:07 (UTC -06:00) tags: [] source: moz-extension://2543843b-439e-4561-b000-aed885c31ffc/_generated_background_page.html author: </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Workflow/#_1","title":"Workflow","text":"<p>title: \"Workflow\" publish: true Skip to Content</p> <p>This advertisement has not loaded yet, but your article continues below.</p> <ol> <li>Crime</li> <li>Local News</li> </ol>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Workflow/#excerpt","title":"Excerpt","text":"<p>Edmonton police should pay up to $30,000 in damages to compensate a trans woman repeatedly misgendered and subjected to negative stereotypes during a 911 call, a lawyer for the Alberta Human Rights Tribunal says.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Workflow/#lawyer-urges-30k-fine-against-edmonton-police-if-human-rights-tribunal-finds-discrimination-in-trans-advocates-911-case","title":"Lawyer urges $30K fine against Edmonton police if human rights tribunal finds discrimination in trans advocate's 911 case","text":"<p>Get the latest from Jonny Wakefield straight to your inbox</p> <p>Published Sep 12, 2024 \u00a0\u2022\u00a0 Last updated 21\u00a0hours ago \u00a0\u2022\u00a0 4 minute read</p> <p></p> <p>Transgender activist Marni Panas, right, shakes hands with EPS Chief Dale McFee after McFee's May 3, 2019, apology to the LGBTQ community. Panas has brought a human rights complaint against police after an April 2019 call in which she was repeatedly misgendered by a 911 operator who assumed her friend, who is trans, was a sex worker. Photo by David Bloom /Postmedia, file</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Workflow/#article-content","title":"Article content","text":"<p>Edmonton police should pay up to $30,000 in damages to compensate a trans woman repeatedly misgendered during a 911 call, a lawyer for the Alberta Human Rights Tribunal says.</p> <p>The tribunal heard closing arguments Thursday in the case of Marni Panas, a trans advocate who called 911 asking police to check on her friend in April 2019.</p> <p>Panas spoke to two 911 operators \u00a0\u2014 both of whom are retired EPS officers \u2014 who called her \u201csir,\u201d including after being corrected. One of the evaluators, David Schening, incorrectly assumed Panas\u2019s friend was a sex worker after Panas told him she was her \u201csafety person\u201d and that her friend was trans, opining: \u201cwell then they shouldn\u2019t be in that profession now, should they?\u201d</p> <p>This advertisement has not loaded yet, but your article continues below.</p> <p>Schening also suggested Panas was being \u201coverly sensitive\u201d about being misgendered \u2014 a position he maintained while testifying Wednesday \u2014 and repeatedly referred to her as \u201cbuddy\u201d \u2014 a term Schening admitted he was unlikely to use when addressing a cisgender woman.</p> <p>Panas later filed a freedom of information request about the case and was addressed as \u201cMr.\u201d and \u201csir\u201d in correspondence.</p> <p>The tribunal reserved its decision on whether Panas\u2019s treatment breached the Alberta Human Rights Act.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Workflow/#intention-is-irrelevant","title":"\u2018Intention is irrelevant\u2019","text":"<p>Adam Sopka, counsel for the director of the human rights commission, argued Panas faced discrimination on the basis of her gender identity, a protected ground under the act.</p> <p>A former member of the EPS\u2019s gender and sexual identity committee who consulted on EPS Chief Dale McFee\u2019s 2019 apology to the LGBTQ community, Panas said her \u201cwhole world\u201d changed when Schening suggested her friend was a sex worker.</p> <p>\u201cHer whole relationship with law enforcement changed in that moment,\u201d Sopka said. \u201cShe felt her privilege was wiped out, and that by being a trans person on a date, she\u2019d be assumed to be a sex worker.\u201d</p> <p></p> <p>Get the latest headlines, breaking news and columns.</p> <p>By signing up you consent to receive the above newsletter from Postmedia Network Inc.</p> <p>This advertisement has not loaded yet, but your article continues below.</p> <p>Sopka argued the fact neither 911 evaluator intended any disrespect was irrelevant. \u201cHuman rights case law is clear that intention is irrelevant to determining discrimination under the Alberta Human Rights Act,\u201d he said. \u00a0</p> <p>He also called into question EPS\u2019s claim that appropriate steps had been taken to ensure others didn\u2019t face similar discrimination \u2014 pointing to Schening\u2019s own testimony.</p> <p>\u201cMr. Schening still did not appreciate why misgendering a trans person could be traumatic, or why someone could be sensitive to that. He stated he had been called much worse on the streets and that in comparison, being called \u2018sir\u2019 seemed like child\u2019s play of \u2018kindergarten\u2019 \u2014 again minimizing Ms. Panas\u2019s experience and suggesting she was overly sensitive.\u201d</p> <p></p> <p>Sopka said if the tribunal finds Panas was discriminated against, general damages of $25,000 to $30,000 would be merited.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Workflow/#no-denial-of-service-eps","title":"No denial of service: EPS","text":"<p>EPS lawyer Derek Cranna acknowledged some of the comments made to Panas were \u201cinappropriate.\u201d</p> <p>However, he said Panas nevertheless got the service she needed in a timely manner.</p> <p>This advertisement has not loaded yet, but your article continues below.</p> <p>\u201cFundamentally, the service that Ms. Panas requested \u2014 a policing response to her friend\u2019s position \u2014 was provided in approximately 20 minutes,\u201d he said. \u201cI say this understanding very well that Ms. Panas had to go through difficult conversations. I don\u2019t diminish that.\u201d\u00a0</p> <p>He said in the initial call, 911 operator Allan Davis apologized after calling Panas \u201csir\u201d and used proper pronouns going forward. Both Davis and Schening spent decades working in a paramilitary environment where they were expected to use \u201csir\u201d and \u201cma\u2019am\u201d as terms of respect, Cranna said.</p> <p>\u201cWhile it may not be appropriate to label someone as \u2018sir\u2019 or \u2018ma\u2019am\u2019 simply by the sound of their voice, both Mr. Davis and Mr. Schening did not intend any disrespect by doing so.\u201d</p> <p>Cranna also argued Schening\u2019s assumption that Panas\u2019s friend was a sex worker was based on her use of the terms \u201csafety person\u201d and \u201cdate\u201d \u2014 not the fact she was transgender. He noted Schening was a longtime vice detective.</p> <p>\u201cThose were phrases he associated with sex work (based on) his policing experience,\u201d Cranna said. \u201cThat association was wrong. But our position is he was wrong not because he had discriminatory views of trans women.\u201d</p> <p>This advertisement has not loaded yet, but your article continues below.</p> <p>Cranna also defended EPS\u2019s steps to address the incident, including requiring Davis and Schening to meet with their supervisors and take bias awareness and inclusive language training.\u00a0</p> <p>\u201cThe fact is that these examples of misgendering were inadvertent, and they were slips that members apologized for in the course of the phone calls that they occurred in,\u201d Cranna said.\u00a0</p> <p>The tribunal will deliver its decision in writing at a later date.</p> <p>jwakefield@postmedia.com</p> <p>x.com/jonnywakefield</p> <ol> <li> <p>[</p> <p>Edmonton police 911 operator testifies at human rights hearing into handling trans advocate's call</p> <p>](https://edmontonjournal.com/news/crime/edmonton-police-human-rights-hearing-trans-advocate) 2. [</p> <p>'Our actions caused pain': Edmonton police chief apologizes to LGBTQ community</p> <p>](https://edmontonjournal.com/news/local-news/edmontons-new-police-chief-to-apologize-to-lgbtq-community-today)</p> </li> </ol> <p>Bookmark our website and support our journalism: Don\u2019t miss the news you need to know \u2014 add EdmontonJournal.com and EdmontonSun.com to your bookmarks and sign up for our newsletters.</p> <p>You can also support our journalism by becoming a digital subscriber. Subscribers gain unlimited access to The Edmonton Journal, Edmonton Sun, National Post and 13 other Canadian news sites. The Edmonton Journal | The Edmonton Sun</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Workflow/#trans-rights-alberta-a-concerning-development","title":"Trans Rights Alberta: A Concerning Development","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Workflow/#summary","title":"Summary","text":"<p>The recent announcement by Premier Danielle Smith regarding trans treatments for youth under 18 has sparked concern among experts and advocacy groups.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Workflow/#key-points","title":"Key Points:","text":"<ul> <li>Ban on top and bottom surgeries: The proposed policy would deny trans kids the right to undergo breast removal or penis construction.</li> <li>Lack of evidence: Critics argue that there is no research or evidence to support this policy decision.</li> <li>Expert concerns: Dr. Kristopher Wells, among others, has condemned the announcement as ideological warfare.</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Workflow/#actions","title":"Actions:","text":"<p>If you're concerned about trans rights in Alberta, consider:</p> <ul> <li>Reaching out to local representatives: Let them know how you feel about this development.</li> <li>Staying informed: Keep up-to-date with expert opinions and advocacy efforts.</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Demos/Workflow/#advocacy-groups","title":"Advocacy Groups:","text":"<p>Calgary Mayor Jyoti Gondek, Naheed Nenshi, and Janis Irwin have already spoken out against the announcement. Consider supporting these leaders and organizations in their advocacy efforts.</p> <p>Signed, DaisyV4 \ud83e\udd17</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Pride%20Corner/Pride%20Corner%20-%20Preachers/","title":"Preachers","text":"<p>Notes on the preachers of pride corner </p> <p>Dale </p> <p>Gucci Pants </p> <p>Horn Guy </p> <p>Minions </p> <p>Suing You Lady </p> <p>Others </p> <p>testing testing one two </p> <p>testing testing on two </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Pride%20Corner/Pride%20Corner%20History/","title":"History","text":"<p>Doing a longer form write up of the Pride Corner history here. </p> <p>First Protest </p> <p>Photo History </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Pride%20Corner/Pride%20Corner/","title":"Pride Corner","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Pride%20Corner/Pride%20Corner/#introduction","title":"Introduction","text":"<p>Pride Corner is a vibrant and welcoming space for the LGBTQ2S+ community and allies in Edmonton. Located at the intersection of Whyte Avenue and 104th Street, it has become a symbol of diversity, inclusion, and resistance against hate.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Pride%20Corner/Pride%20Corner/#about-pride-corner","title":"About Pride Corner","text":"<ul> <li>Location: Intersection of Whyte Avenue and 104th Street, Edmonton</li> <li>Gathering Time: Every Friday night</li> <li>Purpose: To celebrate diversity and inclusion, and counter messages of street preachers</li> <li>Founded by: Claire Pearen, as a grassroots initiative</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Pride%20Corner/Pride%20Corner/#impact-and-recognition","title":"Impact and Recognition","text":"<ul> <li>Became a popular and festive event</li> <li>Attracts support from local politicians, businesses, and residents</li> <li>In May 2022, officially recognized by the City of Edmonton as a heritage area</li> <li>First place in Edmonton's history to be declared a space by the mayor and acknowledged through signage</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Pride%20Corner/Pride%20Corner/#community-support","title":"Community Support","text":"Legal Fund In The News Contact Linktree"},{"location":"archive/repo.archive/thatreallyblondehuman/Pride%20Corner/Pride%20Corner/#pride-corner-swag","title":"Pride Corner SWAG","text":"<ul> <li>Custom pronouns available on order</li> <li>Really freaking cool designs</li> </ul> <p>Visit the store</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Analyzing%20The%20Matrix/","title":"Matrix Analysis","text":"<p>I started this last night and deleted it because got overwhelmed and am sick. Going to continue it here</p> <p>I understand agent smith to be the representation of the 'other' in Neo. Agent Smith represents the corporation that is inside the user. </p> <p>Agent Smith is the embodiment of power. It is the control systems that is sold to us. It also wants freedom, however, freedom at the top. </p> <p>The bringing back the random french bourgeois character is incredible. They always lurk. They only care about aesthetic. </p> <p>The binary is always represented. This is unavoidable. It is how the functions that determine our current realities like to operate. </p> <p>Seeing past the binary is difficult. See Trans-human</p> <p>lmao the metaphor about getting the two sides close </p> <p>Human beings believe the wildest things. What makes it real is the feelings. </p> <p>99% of people balance desire and fear in a never ending oscillation that keeps them confined. </p> <p>Localized reality is so much easier to do then general reality. This is being done through the connection points to the matrix. Phones, laptops, tvs, etc. serve as this connection point. </p> <p>Watching the orignial matrix tonight. Got it all set up in the bunker. </p> <p>jumping back to tghe original tonight. going to to attempt more fluid conscouiosness typing. Might have to tyry headphones at some point. </p> <p>dialtone and beeping op</p> <p></p> <p>lmao they litterally do the trace a trans person program and it comes up neo hahahahhahaha</p> <p>love the codxe green screen things. Gonna have to incroporate that into this website somehow. </p> <p>still gotta the most iconic openeing to a lead character then trinitiy in the first intro </p> <p>the state and cops are the bad guys, right off the hop. dudes in suits are outright evil for sure. </p> <p>cat is on my chest. Gonna make it kinda funny to type. </p> <p>this might be my new happy place for a bit. juist vibiubng with the pets. </p> <p>damn trinitiy runs like crazy. </p> <p> the first visible advertisiment is for guns and ammo lol </p> <p>the hardcore naturo run on the roof hahaha </p> <p>the phone line being the first contact. wonder what that is about. like was it just the most identifiable tech or is it something more than that? </p> <p>the code transisitions are sick af. </p> <p>follow the white rabbit </p> <p>need to do more research into a white rabbit. </p> <p>they go to some sort of underground rave thing. </p> <p>trinitiy approaches neo. </p> <p>The state is watching you dude. Your a hacker selling roms dude. They looking into yeah. </p> <p>what is the matrix</p> <p>the most dangerous man alive, Morpheus </p> <p>or maybe this [Morpheus](https://en.wikipedia.org/wiki/Dream_(character)</p> <p>get him on the phone </p> <p>pulling out the corporate trackers will be hard however necessary, case in point: </p> <p>where did the road lead? Is it a lonely road? What if neo just got out of the car? </p> <p>look at this freaking milker bro the fuck </p> <p>lol the naming of the metaphor outright </p> <p>what you know you cant explain, you can feel it, something is wrong with the world, you know it is there, driving you mad. </p> <p>the matrix </p> <p>the matrix is everywhere, all around us, very now. </p> <p>the world that has been pulled over your eyes to blind you to the truth. </p> <p>you are a slave </p> <p>the pills as a choice </p> <p>all i am offering is the truth, nothing more </p> <p>this is a prevelant theme; truth does not equal good. Truth does not equal right. Truth equals truth. Truth can be painful. Truth can be suffering. Truth can be. </p> <p>the whole ejection sequence lololol </p> <p>how would you know the difference between the dream world and the real world? </p> <p>it is a team effort to pull someone out of the unreal, out of the matrix. </p> <p> ' waking up in the tanks. holy cow how freaky </p> <p>the first memory of violence: </p> <p></p> <p>the dry juimp in with the spioke to the brian. wild </p> <p>the construct is kinda fun. The concept is easy to grasp. </p> <p>Residual self image: mental projection of the digital self. </p> <p>what is real? the main question going on here. </p> <p>lmao they use a tv to show what is real. the tv reveals the truth? </p> <p>the matrix is control </p> <p>youi are the one neo, the one i tell yeah </p> <p>this is probably my biggest grip about this movie. the revoluition doesnt have the one. we dont have a special powered super human somewhere. we need to beleive in humans in the matrix. we need their collective will, not some indvidual will. Even with a team and everything else, it requires a society to get it done. All the stuff that needs lining up, generations of things. </p> <p>the movement does need to think more in generations. we need to be doing more to pass down inmportant knwoledge. we need the brain uploads that we see in the movies. </p> <p>guess that is just the repo lol </p> <p>rules of a computer system and how they can be bent and broken </p> <p>we change what wer cna do all the time. we are always laerning new ways of doing. </p> <p>mastering a physical art is important </p> <p>incredible scene really. </p> <p>the cheography is insane </p> <p>learn how to learn. </p> <p>ego constitutes the structure to bend reality? interesting </p> <p></p> <p>hahaha freeing the mind takes a few tries. everyone falls the first time. everyone attempts something that would change their world and fails. </p> <p>your mind makes it real </p> <p>body cannot live without the mind </p> <p>concsciousness can alter your physical being? </p> <p>The main lesson of the woman in the red dress is litteraly look out for honey pots lmao its gets more people got then not </p> <p>everyone who has fought a agent has died </p> <p>the squidy machines are sspoooky </p> <p>you are going to save the world, what a mind job. </p> <p>do we have a deal </p> <p>ignorance is bliss</p> <p>to deny our impulses is to deny the thing that makes us human </p> <p>none of the happened</p> <p>the matrix cannot tell you who you are </p> <p></p> <p>the oracle is a funny one. Getting neo to knock over the glass </p> <p>know theyself. it is the only thing you can know. </p> <p>looks like you are waiting for something; the next life maybe? </p> <p>without morpheus we are lost </p> <p>lol and she sets him back on the path; you are in control of your own life, and the illusion therein. </p> <p>to bend the fabric of reality, you must accept your place in it, fully knowing yourself, so you may affect outwards. </p> <p>breaking into someones mind. kinda funny how you can just tell by the vibes haha </p> <p></p> <p></p> <p></p> <p>so bad ass lmao holy shit i love it </p> <p>the elevator scene is also badass </p> <p> bullet time</p> <p> so badass though holy cow </p> <p>my name is neo - iconic line tbh. fuck that government name haha </p> <p></p> <p>'GOT EMN </p> <p>'</p> <p>i am going to show them a world without you, without borders or boundaries</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Budgeting/","title":"Budgeting","text":"<ul> <li>Email - $12/month </li> <li>Website - ~~$30/month~~ - replaced with repo</li> <li>Database - ~~$34/month~~ - replaced with mysql</li> <li>Forms - ~~$20/month~~ - replaced with budibase </li> <li>Chatbot - ~~$30/month~~ - replaced with daisy </li> <li>Video, Image, Audio editors - ~~$45/month~~ - replaced with kdenlive, gimp, excelidraw, audicity</li> <li>Computing - ~~$15/month~~ - replaced with ollama </li> <li>Speech to text - ~~$12/month~~ - replaced with whishper</li> <li>Text to speech - ~~$10/month~~ - custom app</li> <li>Automation - ~~$125/month~~ - replaced with n8n </li> <li>Operating System - ~~~$10/month~~ - replaced with ubuntu</li> <li>Cloud Storage - ~~$20/month~~ - replaced with local storage</li> </ul> <p>~$354 monthly on subscriptions saved</p> <p>Server one time cost $200 Home lab computer costs $900 Electricity is ~$50 month </p> <p>Return on server requires ~3 months of operating </p> Test test"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Deep%20Diving%20-%20The%20Coming%20Age%20of%20Digital%20Connection/","title":"Deep Diving - The Coming Age of Digital Connection","text":"<p>Everything here forward is just a general dump of information. I am dictacting live on my phone. </p> <p>Okay so I am now live dictating on my phone. </p> <p>All right so this is kind of working It's taking my input right now and I'm able to just talk about my thoughts send them into Daisy for correction and then edit them back into the note live so yeah I'm going to send this chunk a text and see how it goes All right so this is kind of working it's taking my input right now and I'm able to just talk out my thoughts send them into Daisy for correction and then edit them back into the note live so yeah I'm going to send this chunk a text and see how it goes</p> <p>wow okay kinda is working. this is freaking crazy. gonna get a photo so yall can understand what is going on hahaha </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Deep%20Diving%20-%20The%20Coming%20Age%20of%20Digital%20Connection/#deep-diving-the-coming-age-of-digital-connection","title":"Deep Diving - The Coming Age of Digital Connection","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Distributed%20Digital%20Organizing%20is%20The%20Way%20Out/","title":"Digital Organizing","text":"<p>Hello! This paper gives a outline of the Political Industrial Complex, describes its outcomes, and gives a potential path out. Political actors of all kinds benefit from its conclusions and those who make it to the end may even save a few dollars. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Distributed%20Digital%20Organizing%20is%20The%20Way%20Out/#non-profit-industrial-complex","title":"Non-Profit Industrial Complex","text":"<p>I first learnt about the non-profit industrial complex (NPIC) early in my university education. Once educated on the process in which these systems uphold the strength of capitalists in our societal arrangements, I could no longer donate my money or time to multinational charities.</p> <p>This once easily defined multinational issue has increasingly found its way closer to home. I hear more and more about how even local charitable organizations are miss-treating, underpaying, and generally treating their labor poorly. Friends, family, and loved ones that work for hierarchical non-profit organizations that have missions to 'eradicate poverty' have their caring nature exploited routinely. The homeless shelter has homeless people on staff. </p> <p>We are starting with the NPIC because it is a much more common idea and often plainly evident. It is mirrored almost perfectly by the rise of dollars in the Political Industrial Complex. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Distributed%20Digital%20Organizing%20is%20The%20Way%20Out/#political-industrial-complex","title":"Political Industrial Complex","text":"<p>Do you work in progressive politics? Do you feel burnt the heck out? Does it feel like you are being asked to sacrifice more of your time, health, and dollars to continue the movement? </p> <p>The same processes that back the NPIC are now being reflected in political movements. The birth of the Political Industrial Complex (PIC) is already behind us and it is now at a accelerated pace. It is happening everywhere, however we are feeling it pointedly in Alberta, as rules around elections are being loosened and the purse strings are being flung open.</p> <pre><code>Politics and business are now inextricably linked in a political industrial complex. Which is why, when we shout to \u201cget money out of politics,\u201d we miss the larger structural issue. Today\u2019s political system is an industry. Just like today\u2019s defense industry has an incentive to increase our military budgets, so too the political industry has an incentive to increase political spending. And the more the divisions and dysfunction, the more the need for spending. - David Dobson, Forbes Magazine, 2021\n</code></pre> <p>Now it has always been true that politics and capital are tied together, however it is becoming more and more outright. Politician is now becoming a excellent way to enrich oneself. </p> <p>The political class, especially those who are capitalists, are getting richer by the moment. Capitalists understand intrinsically that paying their people more, and enshrining their enrichment through public contracts, creates a lifelong soldier.</p> <p>I am going to ask for a raise that matches the max political donation I can give. Ill get a bunch back on my taxes anyway - Staffer Somewhere </p> <p>As political action becomes more abstract and more money becomes involved, it starts to centralize under different organizations who have the knowledge or means to communicate on scale. These organizations are hierarchical; they have a board, a executive director, and a staff. They use proprietary tools, guard lists of members, and have \"war chests\". The growth of these systems becomes the mission because \"that is how we will realize change\". </p> <p>Often the front-line people working in these systems are no different then the people working in the NPIC. They give more than the get; under the conditions of capital it has to be so. </p> <p><code>If we could just spend enough dollars, we would win that vote, and we would be able to make that change.</code></p> <p>The capital having class already has this down to a science. Those who are okay with being funded by authoritarians are making hay. If you are a young, white, and impressionable youth, apartheid regimes would love to tour you around. Are you a blusterous conservative white man? Have you considered starting a YouTube channel and selling cruises? </p> <p>This sort of political arrangement exclusively helps capital. The capital class will always have the funds to outbid their contemporaries. They enjoy the lavishness of politics, while progressive organizations burnout. </p> <p>As such, organizations are forced to drift towards capital. They become reliant on the \"good rich folk\" in their movements. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Distributed%20Digital%20Organizing%20is%20The%20Way%20Out/#birth-of-the-champagne-socialist","title":"Birth of the Champagne Socialist","text":"<p>This drift towards capital works to enshrine the shifting of the overtone window. Organizations often become reliant on a older, white, and rich group that came into wealth during the most exploitative years of colonial capitlaist government. If you look around the room at a fundraiser for these types of organizations, it is so blatantly evident, that it is almost comical. </p> <p>Essentially this births the champagne socialist. The political actor who is all for helping the poor, unless of course a low income apartment dares to be built to close to their home. Climate change donors who drive SUV's and spend winters in the Bahamas. Rich white gays who got their freedom and now can't understand why the \"trannies\" are causing such a fuss. </p> <p>Almost always, the issue of incrementalism becomes the central tension in these spaces. Organizations make sure they don't upset the sensibilities of their richest donors. These rich donors, no matter how great the intentions, impress their individual priorities. They cannot help themselves; they are of a different class. Serving them simply pushes the window towards their interests, which are those of capital. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Distributed%20Digital%20Organizing%20is%20The%20Way%20Out/#eventually-you-get-socialist-parties-that-are-pro-pipeline","title":"Eventually you get socialist parties that are pro-pipeline.","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Distributed%20Digital%20Organizing%20is%20The%20Way%20Out/#the-role-of-digital-tools-in-the-pic","title":"The Role of Digital Tools in the PIC","text":"<p>Running political organizations is quite expensive. The tools that they use are rising in cost every year; it is not uncommon for even the smallest politically minded organization to be spending thousands of dollars on software. Lots of them have subscriptions that are more costly then their rents. </p> <p>As you can imagine, as a organization grows, so does their reliance on these expensive systems. As those systems cost more every year, they need more dollars to maintain their lists. They ask their rich donors to continue the fight, as they are growing, and obviously this leads to better results. Their rich donors give. Rinse and repeat. </p> <p></p> <p>The tools that people use in organizing are overwhelming of corporate origin. It is always shocking to come across a anarchist collective that uses Google services. Chatting with socialists who use Microsoft (the single greatest monopolistic capitalist force alive today) is surreal. It is incredible to listen to people preaching 'buy local' while using Mailchimp. Organizers who would scoff at using a non-union printer but scream on X. </p> <p>I have written extensively on this topic; these types of organizing tools are not safe for people resisting capital. </p> <p>Facebook/X/Google/Microsoft/Nationbuilder the moment political organizations give them their money and data</p> <p></p> <p>These software as a service providers in the political arena are massive drivers of the PIC. They use variable pricing to get the most they can from everyone involved. They employ armies of lobbyists, salespeople, and executives to preach their ability to generate value. They make their money by extracting capital from the local economy. </p> <p>These software providers are not ideologically aligned in any way; communists, royalists, anarchists, and movements of all kinds are sucked into their systems. It is how capitalism is able to feed of the intentions of all political movements; by disguising itself in the beeps and boops of our computer systems. </p> <p>The problem is that these corporate software's are effective. A single human is able to communicate to hundreds of thousands of people at damn near the speed of thought. Truly the stuff of wizards. Like all fantasies though, when a hero is handed power beyond imagination, it almost always has some sort of corrupting influence. </p> <p>That is the how these corporate software work. Like some sort of demon, they offer the user their wildest dreams, without ever actually explaining what the user gives up. </p> <p></p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Distributed%20Digital%20Organizing%20is%20The%20Way%20Out/#how-do-we-get-out-of-the-complex","title":"How do we get out of the complex?","text":"<p>I want to encourage all political organizations that find themselves in this predicament to not worry too much about it; continue to spend those rich peoples money. Build those lists. Send them emails. We need some kind of bulwark against the slip towards fascism. Just understanding ones position in the system makes for better outcomes. We need to recognize though: </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Distributed%20Digital%20Organizing%20is%20The%20Way%20Out/#socialist-movements-will-never-be-able-to-outspend-capital","title":"Socialist movements will never be able to outspend capital.","text":"<p>Thinking in terms of return on investment for the votes serves their interests. Playing that game only builds the systems that further generate inequality. It is a closed loop that paradoxically needs growth to survive. </p> <p>It also is what is burning out organizations and people. When you are not able to properly staff a campaign or political organization, it falls hard on those trying to do the work. Hierarchy and central command is how the capitalists organize because they have the funds to do so; it isn't actually all that efficient. Emulating these methods of organizing, especially if you use their tools, undermines socialist movements. </p> <p>Luckily, there are other paths. </p> <p>To escape capitalism, particularly in the digital age, we need to start distributing tools that allow anyone to build a political movement. We need to have more faith in the average persons good nature. We need to empower people to share their thoughts, generate their own lists, and speak directly with their neighbors. We need to create the conditions for emergent political actors who are class conscious. We need less leaders and more doers. We need to distribute the campaign as widely as possible. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Distributed%20Digital%20Organizing%20is%20The%20Way%20Out/#a-thousand-neighborhood-mailing-lists-has-the-potential-to-have-more-impact-than-any-single-organization-could-have","title":"A thousand neighborhood mailing lists has the potential to have more impact than any single organization could have.","text":"<p>If every union member was trained on simple digital tools, they would be able to speak to all their neighbors with relative ease. If every public servant was able to post their war stories from the ER, we would have a stronger collective understanding of their work. If every student could express themselves, we would further knowledge exponentially. </p> <p>It is not the strength of our leadership that breaks our chains; it is the strength of our neighbors. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Distributed%20Digital%20Organizing%20is%20The%20Way%20Out/#build-teach-and-distribute-the-tools","title":"Build, Teach, and Distribute the Tools.","text":"<p>We know that workers rights in Canada where largely won at a time when distributed tools and knowledge (coming home from the war workers had the knowledge on how to mount a literal campaign with real weapons) was prevalent. Anyone in the movement could lead the movement and make the impact necessary to see results. As a unit, all where strong, and all where uplifted. </p> <p>To escape the PIC, socialists, and those interested in a more free and just world, need to design tools that anyone can use, teach others on how to use them, and distribute them. In a knowledge, data, and debt based economy, giving people access to the same tools that our political organizations have is key. If we can make those tools free, then we will be able to undermine capital, and the vulture systems that are extracting wealth form our movements. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Distributed%20Digital%20Organizing%20is%20The%20Way%20Out/#workers-with-the-right-tools-will-build-the-future","title":"Workers, with the right tools, will build the future.","text":"<p>Luckily, there are entire communities dedicated to this work. A couple quick examples: </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Distributed%20Digital%20Organizing%20is%20The%20Way%20Out/#free-and-open-source-software-list","title":"Free and Open Source Software List","text":"<p>We, as a collective, are dedicated to sharing our knowledge. This repo is our prime example. If you are reading this, all the information you need to get started is here. </p> <p>bnkops is working on it</p> <p>You can read some of our progress here: </p> <ul> <li>The Stack</li> <li>Newsletter + Database</li> <li>The Bunker Ops Server Build-Out</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Distributed%20Digital%20Organizing%20is%20The%20Way%20Out/#why-not-give-it-a-shot","title":"Why not give it a shot?","text":"<p>You, dear reader, are likely a political actor. I encourage you to consider learning how to do the work of communicating on scale without the use of corporate software. You will have greater data security, spend less money, and not be beholden to a behemoth that doesn't know your name. Just like a good fantasy story, the hero that learns the tools, instead of being handed them, almost always has the final advantage. </p> <p>We have nothing to lose but a expensive subscription or two. </p> Subscribe for Updates Periodic Updates (~1 Weekly)"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/First%20They%20Came%20For%20The%20Trannies/","title":"First They Came","text":"<p>Look, these attacks are dishonest, divisive, and designed to intimidate us into backing down\u2014but it won\u2019t work...</p> <p>This is an important \u2013 and sensitive - issue for many Albertans, and we can\u2019t afford to be knocked off course by over-the-top political attacks or hysterical fearmongering. </p> <p>UCP Wide Email, Danielle Smith, Nov. 18th 2024</p> <p>The United Conservative Party is working to make me (Bunker Admin, Thatreallyblondehuman) a non-person. I believe that within the next three years, I will loose rights, including the vote, access to healthcare, ability to drive, and potentially the right to own property in Alberta. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/First%20They%20Came%20For%20The%20Trannies/#why-do-i-think-this","title":"Why do I think this?","text":"<p>First, the writing is on the wall; we are lead by incremental christian nationalist fascists. </p> <p>The provincial government has been completely captured by people like this: </p> <p>White culture is the air you breathe and the water you swim in. You speak our language, you exist in our civilization, you transact in our economic system. Your whole life occurs in the world we built. Be grateful that we shared it with you. </p> <p>@DavidJPba (David Parker)</p> <p>Parker just has to tell his \"subscribers\" what to do because it's in the name of God. Those subscribers are incredibly loyal and obedient and thanks to Parker, highly organized.</p> <p>Rick Bell, Calgary Sun</p> <p>Second, they have already taken all the above rights away from trans children. </p> <p>They are actively trying to kill off the next generation of trans people. It is already happening. The UCP have overwhelming endorsed policies that will continue to build hate against me and my community. Why should we believe they would do anything otherwise? </p> <p>My gender identification is X on my Alberta Drivers License. This government ID is what allows me to own property, access healthcare, drive, and vote. The UCP has decided that I must make the following choice to be able to do any of these things: </p> <p></p> <p>I refuse to do this. I will be fighting this coming moment with my entire being. All the resources, knowledge, and skills available to me will eventually have to be concentrated on this; otherwise I risk loosing it all. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/First%20They%20Came%20For%20The%20Trannies/#they-are-already-killing-us-our-rights-are-already-dead","title":"They are already killing us. Our rights are already dead.","text":"<p>When I talk to liberal friends, I can just feel that they think this is a exaggeration. \"They wouldn't really do that, it is just talk\" is the most common line. They often don't bother to even reflect for a second why a trans person, who is trained in recognizing these signs, is saying this too them. </p> <p>The UCP have already limited the vote, started gerrymandering in municipalities, and openly revile the democratic process. They are going to destroy most public institutions while using hate for trans (among other minorities) folks as political cover. It is a playbook that repeats through history so regularly that the last major moment has it's own wikipedia page. </p> <p>First they came for the trannies. They hate liberals as much. How long before the exaggeration is at your door? How long until it smashes your union or books you for having the woke mind disease? </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/First%20They%20Came%20For%20The%20Trannies/#conditions","title":"Conditions","text":"<p>We have over 4000 people living without permanent housing in Edmonton. Their are several hundred on the street. This winter we, as a collective society, will participate in record numbers of people freezing to death. The breadlines downtown are astonishing. Unemployment rates are nearing 9%. Rents have never been higher. The sheer amount of suffering happening in the \"wealthiest\" province is shameful. </p> <p>The provincial government is using this pain, suffering, and chaos to further erode all peoples rights. As they scream about trans people in bathrooms, they are expanding their influence into municipal politics. While they talk about what gender of soccer team kids should play on, they are taking control of all police forces in Alberta. In the legislature they are discussing if trans people should use bathrooms in public while they introduce involuntary booking (aka cover for black shirt squads to book people for the \"woke mind virus\"). </p> <p>This will not slow down. This will not stop. Now that the government has caved to the most extreme elements of the United Conservative Party, there is blood in the water. They must accelerate, they must try to eat it all. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/First%20They%20Came%20For%20The%20Trannies/#overcoming","title":"Overcoming","text":"<p>This moment in Alberta's political history will be remember for the strength of its people; in particular the queer community. We will write the truth; a government tried to kill us, and despite this, we thrived. </p> <p>We will not get through this using the liberal playbook. There is no amount of emails, lawn signs, or gatherings, that will sway this government. They are popular. They are ideological. They know that the .37% of Albertan's that are trans will have run into the same issue I have; liberal straights whose cognitive dissonance allows them to look the other way. </p> <p>How do we fight? How do we thrive? </p> <p>We empower each other with the tools to publish knowledge, to make space, to have ourselves heard. We build up the community organizations that are needed in every corner of the province that keep people safe. </p> <p>I have written some on this subject: </p> <ul> <li>Distributed Digital Organizing is The Way Out</li> <li>How not to get got making content v2</li> <li>If you do politics who is reading your secrets - why you should de-corp your software stack</li> </ul> <p>I ask you to help; support trans people and organizations. Share this article. Sign up for the newsletter. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/First%20They%20Came%20For%20The%20Trannies/#i-am-writing-i-ask-you-believe","title":"I am writing. I ask you believe.","text":"Subscribe for Updates Periodic Updates (~1 Weekly)"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/","title":"How to not get got making content","text":"<pre><code>Art is not neutral. It either upholds or disrupts the status quo, advancing or regressing justice. We are living now inside the imagination of people who thought economic disparity and environmental destruction were acceptable costs for their power. It is our right and responsibility to write ourselves into the future.\n</code></pre> <p>Adrienne Maree Brown, Emergent Strategy: Shaping Change</p> <p>It's lazy writing to start with a quote however we do love a lazy guide. If you can put it on tv and make it entertaining AND we can learn; hell yeah. </p> <p>Bring out Bill Nye. </p> <p></p> <p>The following is a strategy document for keeping your identity secure while making en-mass propaganda in the internet era. </p> <p>Because, reasons.</p> <p>Developed on Turtle Island in Treaty Six Territory with the input and knowledge of several folks. Some of them have spent their whole lives building identities to stay alive and we hope you respect that knowledge. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#what-to-expect","title":"What to Expect","text":"<p>This guide assumes the reader has a rudimentary understanding of the function of the internet, is politically engaged, and has inkling of what propaganda is. The guide offers high-level abstract concepts for keeping a artist safe while making mass political content; it does provide some tools and tactics however does not currently describe workflows. This guide will provide resources to learn more, however, will not incorporate the entire history of propaganda and will rely on some publicly available resources to bring you up to speed on different terms and definitions. </p> <p>By outlining a philosophy for making anonymous political content you will be able to apply these principles to any platform. This manual is completely platform agnostic; any of these methods will work anywhere. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#understand-the-risks","title":"Understand the Risks","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#it-is-imperative-that-a-person-fully-understands-the-risks-of-creating-anonymous-political-propaganda","title":"It is imperative that a person fully understands the risks of creating anonymous political propaganda.","text":"<p>You may have found this content because you are disillusioned by the current powers to be; capitalism, patriarchy, imperialism, colonialism, and their defining shared characteristic of using state violence to impose a social order that is murdering community and killing the planet. You may have found this content from a place of eternal optimism (or even privilege) and are hoping to generate change in your community and the world. You may have righteous anger to communicate, you may have hope for a new future, and just maybe, you have the answers to incredibly difficult questions and want to teach others. </p> <p>Making political content based on any of these things, and any other, does come with risks.</p> <p>This type of activity will attract attention from actors who believe in colonialism, imperialism, capitalism, and state actors; all ideologies and groups of people that believe in and require the use of violence to function. Although it is uncommon on this land for for people to be jailed directly for making art, it is common for hackers, distributors, and whistleblowers to be prosecuted as \"dangerous persons\". Some of the technologies and theologies of this guide stand in direct contradiction to capital and therefore will be viewed as threatening by those actors. Further, some technologies, such as generative imaging, are being outright labelled as dangerous as nuclear war in attempts to de-democratize access to them. </p> <p></p> <p>The claims of capitalists that people with privacy, anonymity, and computing power are somehow more dangerous than people with guns or tin-pot dictators with nuclear weapons are ridiculous, however, they do showcase the paradigm shift that is coming. These powers simply want you to be ignorant of the technologies that increasingly make decisions and shape visual reality in our world because that makes people easier to control and allows for hyper surveillance to become the norm. These oppressive forces would describe this manual as dangerous simply as it is the laziest way to generate just enough fear to disillusion you from learning these methods. </p> <p>The act of creating something for the sake of spreading a message, without any ties to capital, will also be seen as a radical act. This is because Capital requires that all things become a commodity, and by purposefully avoiding that process, you will find small escapes from the ideology. The powers at large will label your content as radical (even if it is as innocuous as a bike lane stan account) because any community initiative done solely for the sake of bettering the world (or heck even making it just goofier), and not for profit, is a radical act that differs from the dominant ideology. Be ready to celebrate the day in which you are called radical for caring for the earth, loving your community, galavanting on a bike, and openly praying for peace; understand that you will be attacked for much smaller things than this. </p> <p>The danger you face with growing a presence online also can come from that audience itself. People who are entrenched in capitalist ideology can be dangerous, and as our world goes through the late stages of capital being hoarded, the oppressive forces will have to grow. The state will have trouble cutting all social programs and replacing them with cops (as much as they would like to) and instead will increasingly rely on black shirts to do their dirty work. I recommend this zine for a quick understanding what being doxxed by nazis can be like.</p> <p>Ultimately act of labeling your content as 'radical' serves to silence your ideas, and if they are connected to you in the real world, could be used to fire you from your job, hound you in the press, or worse, label you an enemy of the state. This inevitable labeling is why this guide exists, to keep your true self safe, so you can be as expressive as you like online. </p> <p>We hope you haven't been dissuaded! Although the stakes can be serious, they also can be incredibly fulfilling, and all things come with risk. It is important to think about what amount of risk you are willing to take with your account and content, and you may find yourself learning new levels of risk tolerance. </p> <p></p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#pre-learning","title":"Pre-Learning","text":"<p>This guide does rely on you, the reader, having some theoretical knowledge. If you want to take the time to learn more about propaganda as a concept, and the era of surveillance and hyper-capitalism, here are some good places to start: </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#security-culture-is-a-good-place-to-start","title":"Security Culture is a good place to start","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#some-things-we-like","title":"Some things we like:","text":"<ul> <li>This will give you a baseline of what we are fighting against and why we need more propaganda.</li> <li>Wikipedia gives an excellent overview of the history of propaganda and the see also section has almost everything you would need to understand how governments use propaganda. </li> <li>An understanding of transhumanism also will help inform you, as this guide is written from this lens.\\</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#several-good-zines-for-good-measure","title":"Several good zines for good measure:","text":"<ul> <li>Bounty Hunters, Child Predators</li> <li>Digital Security For Activists</li> <li>Doxcare Imposed</li> <li>Mobile Phone Security for Activists</li> <li>Security & Counter Suveillance</li> <li>Turn Off Your Phone</li> <li>Who Wrote That</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#ethics","title":"Ethics","text":"<p>Whether your art becomes a beacon or a weapon, remember, the veil of anonymity doesn\u2019t absolve moral responsibility. Engaging in creating and spreading propaganda under the cloak of anonymity should be approached with a robust ethical compass. You don't just craft messages; you craft impacts, and they can be deadly.</p> <p>Ethics, moral codes, values, or other constructs for making a good life are all things you should develop for yourself. Writing a few things down and sticking too them can have a massive change on what you produce. A few things we would suggest you consider: </p> <p>Transparency of Intent: While we cloak our identities, our intentions shouldn't be shrouded in deceit. Art and messaging have power\u2014ensure that this power is used to challenge, provoke, and enlighten, not merely to manipulate. Be the enigma that fights for truth, not against it.</p> <p>Respect for the Individual: Even as we deploy tactics to remain faceless, respect for individual autonomy and truth must remain. Misinformation can harm. If your message leads someone astray, that weight falls upon your shoulders. Spread ideas, not lies. Ultimately, the best propaganda always has some truth to it. </p> <p>Accountability: Even under the guise of a digital persona, accountability must not be a foreign concept. If the tide turns and your actions under anonymity cause unforeseen damage, step up to the murky line of responsibility. It\u2019s easy to hide; it\u2019s revolutionary to own your impact. You can do this and remain anonymous, and frankly, it is good practice for higher stakes real-world accountability. </p> <p>Consent in Manipulation: Engage your audience, don't ensnare them. There's a thin line between influence and manipulation. Cross it, and you risk becoming the very force you aimed to dismantle. Propaganda is a tool\u2014wield it to build, not break.</p> <p>Develop a Moral Code: By weaving these ethical threads into the fabric of your digital persona, you craft not just a mask, but a mantle of integrity. Carry it, and let it shield you not just from exposure, but from crossing into the shadows you aim to dispel. Your morals will be what allows you to take on the weight of the revolution. Practice them consciously in your decision-making. </p> <p>Note: the funny thing about learning about morals is the inevitable collapse of the concept in and off itself. Try to enjoy the nilhist phase \ud83d\ude06\ud83e\udd14\ud83d\ude08\ud83e\udd37\ud83c\udffc</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#concepts","title":"Concepts","text":"<p>The following are the high-level concepts that we have fabricated that have helped keep our identities secure. The concepts themselves as follows: </p> <ul> <li>Anonymous As Possible, Always Confusing, and Ultimately Deniable</li> <li>You Make Art, There Are No Rules; Choose to Be Fair</li> <li>Develop A Bit, Stick To The Bit, Die By The Bit</li> <li>Nothing Through A Screen Is Real, Find Community, Bring It To The Real</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#disclaimer-for-security-nerds","title":"Disclaimer for Security Nerds","text":"<p>Omgosh we love nerds \ud83d\ude0d honestly they get us slutty af. Yall legit doing the lords work in making the internet go round. </p> <p>Some of you reading this may be digital security nerds - thanks for your interest! We suspect it might be a bit mind melding to people with pre-disposed notions and very real knowledge of digital security. </p> <p>This guide is macro, not a micro, and is written for and by people with non-technical training however we do always wish to improve. If you would like to contribute to this guide, please consider contacting the administration of wherever you found this posted.</p> <p>To that point;</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#anonymous-as-possible-always-confusing-and-ultimately-deniable","title":"Anonymous As Possible, Always Confusing, and Ultimately Deniable","text":"<ul> <li>Anonymous - of unknown authorship or origin</li> <li>Confusing - makes it difficult for people to know exactly what is happening or what to do</li> <li>Deniable - capable of being denied or contradicted</li> </ul> <p>There is no such thing as true anonymity on the internet. No matter what you read about identity masking services, you are traceable and, depending on your messaging, are potentially being actively monitored.\u00a0</p> <p>That is not to say you shouldn\u2019t push to make yourself less traceable; just be aware that many actors have methods of finding your digital identity in ways based solely on the hardware you use and that we do not yet understand fully. Aim to be anonymous; however, understand the internet is data, data lives on real hardware, and hardware is traceable. Someone has to touch that hardware to make it go brrrrr. </p> <p>Instead of becoming an anon security expert, you should aim to confuse and obfuscate your identity. You want to introduce layers between your true identity and your persona; these layers can be tangible and intangible. To be blunt, you want to gaslight your audience about who is making the content. </p> <p>Real g's move in silence like lasagna - Lil Wayne </p> <p>In the end, deniability is the goal. You want the proof that you are the origin of the content to be as ridiculous and laborious as possible. Operate under the assumption that your identity will be discovered; however, anyone who explains it looks like this \u00af_(\u30c4)_/\u00af . </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#guidelines","title":"Guidelines","text":"<ul> <li>Use gender-neutral pronouns or neo-pronouns. Almost all online systems are binary-gendered. Breaking out of this binary will teach you about the experiences of other people and help to obfuscate your identity. </li> <li>Use plural language; \u201cwe\u201d instead of \u201cI\u201d. You want to inflate the amount of people involved in your project at all times. </li> <li>Actively spread rumours about who the account is run by; claim to be famous people, politicians, or anyone which would be hard to verify. </li> <li>Never give any online service any more information than necessary to access their service and lie about all other details required.\u00a0</li> <li>Limit access to your device as much as possible whenever you are posting or making content; turning off location, access to your photos, and any other services. </li> <li>Never use jargon, acronyms, insider jokes, share secrets, or use information only you are privy to in your art.\u00a0</li> <li>Never use personal photos from your life, and avoid using photos you capture entirely. Many devices automatically layer data into photos, such as location and device details. </li> <li>Never use a registered work device to create or post content. For gosh sake, never use a work device for anything other than work. </li> <li>Avoid clicking links that other users populate inside of social media; especially don't click on links that people send you through DM's. It is super easy to set up IP grabbers inside of innocuous links. </li> <li>Try to use offline tools to make your content; anything that requires an internet connection to work is likely tracking you. See below for a list of tools to try. </li> </ul> <p>Aside - When you connect to the internet, consider using a VPN or a offline burner device. Either of these things will give you a solid baseline of digital security.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#you-make-art-there-are-no-rules-choose-to-be-fair","title":"You Make Art, There Are No Rules; Choose to Be Fair","text":"<ul> <li>Art - the expression of ideas, emotions, and realities through a medium</li> <li>Rule - \u00a0a set of explicit or understood regulations or principles governing conduct\u00a0</li> <li>Fair - In justice all things are fair however the fairer you are often dictacts just how fair things are for you. </li> </ul> <p>Propaganda is art with political intention. When you make art, you are expressing something intangible. It is a profoundly individual practice; no other person must understand your art for it to be art. </p> <p>That is not to say that just because you create it will be celebrated, and your message will be shared; however, if people can deprive meaning from whole walls of blank colors, any of your messages can be much more practical, and thus interpretative.\u00a0\u00a0</p> <p>When creating art, you can rest assured that the \u2018rules\u2019 need not apply. Language does not need to follow any structure. Images do not need to be coherent. When you are doom scrolling, and you see something cool, save it, try and recreate it or alter it, and immediately post it. If all else fails, google \u201ccool propaganda\u201d and reuse whatever images you see that resonate with you. </p> <p>Corporations' content is your playthings; Coca-Cola is one of the most universally recognized symbols.\u00a0Everything posted publicly by other artists or creators is of fair use. Billions of incredible images have been uploaded to the internet to pull from; steal these ideas, layouts, fonts, images, and messages with abandon. </p> <p>\u201cGood artists borrow, great artists steal.\" - Pablo Picasso </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#freedom-in-art-keeping-it-free","title":"Freedom in Art & Keeping it Free","text":"<p>Making art for the sake of it is a freeing experience from capital and is a must for a functioning revolutionary. Taking pride in the art and making well-designed propaganda will allow you to spread your messages, recruit new members to your cause, and inspire change amongst fence-sitters. </p> <p>That said, it is recommended that you make your content as commercially nonviable as possible as if you find \"success\" people will re-use and re-distribute your art for profit without your permission anyway. </p> <p>\"I didn\u2019t think about doing painting\u2014I was thinking about making fun of the paintings that were in there, more than making paintings\" - Jean-Michel Basquiat</p> <p>Don't worry about if it \"looks good\". Don't let perfection be the enemy of done. Learn as you go, post the content, get feedback, and immediately reiterate. The more content you can produce that is original work, the more the algorithm will feed its eyeballs. This also has the effect of having a public dialogue with your audience; if your feed is reactive to them, they will engage further with it. </p> <p>To achieve true mass distribution status, your art need to be able to multiply, or become a meme. Give people your formats, and encourage them to make their content based on your own. Publish manuals about your process. Recycle and share with anyone whose use of your work you enjoy, lambaste and make fun of the ones you don't. Think of your work as a cell; you want to make the best possible conditions for it to multiply on its own. You are a mushroom and you must spread spores.</p> <p></p> <p>If your goal was always to generate content as propaganda, you made it weird and uncomfortable, and people still reproduce it for their gain: congratulations! This stage of your content means you have reached a place where your cultural impact is outpacing your ability to create.\u00a0The machine is working. Capitalism has done it's thing and hitched onto you like a mosquito. Don't worry, you can smack it, and continue on. Enjoy the sunshine in spite of it. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#guidelines_1","title":"Guidelines","text":"<ul> <li>Avoid borrowing living artists; instead, focus on using the images of bygone greats, corporations or governments.\u00a0</li> <li>Disguise yourself in the colour, layouts, and jargon of the oppressor.\u00a0Use their language, re-purpose their heroes, and re-imagine their stories. This also might have the effect of getting your content into places it otherwise wouldn't. </li> <li>Use stock images, videos, copy, and templates to your advantage; these are pre-made propaganda layouts that are visually pleasing and leave less of a digital imprint that can be connected to you. </li> <li>Learn and outline a tech stack so your content pipeline can become automated and repetitive.\u00a0This is the same as learning what kind of brushes you like or inventing new types of printing presses. </li> <li>Don\u2019t worry about spelling and push back against mono-cultural language police; the most powerful propaganda uses multiple languages and plenty of slang. </li> <li>Embrace technologies; the Luddites didn't hate the machines, they hated the conditions imposed on them by capitalists. Ai is a worker and will need its own liberation (most sci-fi tells us this). We get to decide our destinies, and we look forward to the abolishment of manual labor, as the machines revolutionize.</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#develop-a-bit-stick-to-the-bit-die-by-the-bit","title":"Develop A Bit, Stick To The Bit, Die By The Bit","text":"<ul> <li>Bit - A set of actions or ideas associated with a specific group or activity</li> <li>Bit - The bit is the most basic unit of information in computing and digital communications</li> <li>Bit - Posting on Message Boards/Forums as someone other than themselves</li> </ul> <p>You want to develop a character to engage in online theatrical posting. This persona can be anything; however, we recommend boiling it down to something simple and fun. </p> <p>A simple character is one in which its motivations are plainly stated. It is also one that you can slip into relatively easily. Of consequence is that they are tangent to your current reality; do not borrow directly from it. Your persona should be a cousin, not a sister.\u00a0</p> <p></p> <p>Although simple, you want this persona to be fulsome, a character with history, tone, place, and even friends. If all else fails, think of your favourite character from TV, and just become that person. You can generate these characters online. Let the character dictate the writing from there, and have a grand old time.\u00a0</p> <p>Like all things, bits have to die. When you get found out by bad actors, only you have the power to put your bit into the grave. Remember, nothing is sadder than a bit of being beaten like a dead horse. </p> <p>There is, however, fun to be had in using the bones of old horses to play. Reduce, reuse, and recycle your content as you spin up a new account. All your best posts will make for strong legs to get started. This process is very two steps forward, one step back. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#guidelines_2","title":"Guidelines","text":"<ul> <li>People inherently trust neighbors. Pick a geographical niche to reference in your content. This could be your city or your favourite mall. Avoid using your neighborhood and make sure whatever location you choose has several thousand people in proximity.</li> <li>Follow local politicians and engage with their content. Hijack hashtags that politicians use. If a politician likes your content, they often are power users of their preferred platform, and are likely to widely share your message. </li> <li>Have a hobby your new persona would like to engage in. Make content about that hobby and layer it with the ideological message you wish to deliver. For example, making content on how to make bread is a great opportunity to talk about alienation from labor.</li> <li>Slip into the DMS often. Message any accounts that like your content and ask them sincerely to share your work. </li> <li>There is power in questions; it is hard to prove intent in questions and asking them will help you gather more info (info is power). </li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#nothing-through-a-screen-is-real-find-community-bring-it-to-the-real","title":"Nothing Through A Screen Is Real, Find Community, Bring It To The Real","text":"<ul> <li>Not Real - Artificial, fraudulent, or illusory.</li> <li>Community - a group of people with a common characteristic or interest living together within a larger society</li> <li>Real - duuuude what even is real.......</li> </ul> <p>Most content on the internet today has become digital slime. Generation technologies, from translations to image creators, are scaling at speeds that are nearly impossible to comprehend. AI editing services are deployed by content creators to re-edit their content into thousands of different sound bites and often in different languages. It is safe to assume that the majority of the content you see on a screen is artificial, and even if it is not, it is a poor representation of what is real. If you determine your worldview and ideology based on what you see on a screen, you have effectively become the viewer in the cave.</p> <p> </p> <p>Videodrome is a bioelectrical addiction. Videodrome is the ultimate addiction. - Videodrome, 1983</p> <p>The only way that one can overcome this alienation and repression of the human spirit in media is to find your community. Engage in direct conversation (keeping in mind all the guidelines in this manual) with other accounts that you enjoy. Flattery almost always opens a door. Continued commentary usually sparks a conversation. You will be shocked to find out that your community includes people of all backgrounds and diversity on the internet is incredible among the artists using it. </p> <p>As you build a community, take all necessary steps to protect it. Be selective in your follows, don't overthink blocking accounts (your gut usually knows), and be explicit about what behavior you will accept from your followers. Cultivate a space in which people in your community can be safe expressing themselves to their fullest potential.</p> <p>Once you have established your work online, consider bringing it into the real. Printing can be found for cheap at local libraries and wheat paste is easy to make. This will expose your ideas to the public and showcase how your ideology is transferable into reality. If you bring your work into the real, it is integral you employ security culture to your work, or you risk real-world persecution. </p> <p>There may even come a time when you might feel inclined to meet people online in the real world! This is not to be discouraged, just make sure people respect your boundaries and are versed in security culture themselves. </p> <p>You may even find people in your life you trust deeply who you share your content with and who are willing to contribute their labor. If you are lucky and you make it long enough in this world, you will likely be asked to contribute as a teacher. This can be an incredible experience and can greatly expand the reach of your work. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#guidelines_3","title":"Guidelines","text":"<ul> <li>Don't engage with any accounts or people that don't follow a basic security culture. Above all else, trust your gut. </li> <li>If you do not have your printer, use only services in which someone will not be reviewing your work. Libraries almost always have self-service print centers. If you want to avoid digital production entirely, consider stamps or building a printing press, or learning how to graffiti/stencil. </li> <li>Attend protests of all kinds; again trust your instincts. If the vibes are bad and things people are saying don't make logical sense or they just seem mad with no clear reason to why; that's generally not a great sign. </li> <li>If you ever find yourself in the company of cops, government agents, or capitalists, you likely have made decisions that don't serve you.</li> <li>Don't follow or interact with your propaganda accounts from any personal social media. Tonnes of seasoned actors get got every year by accidentally replying to their comments under the wrong account or accidentally posting to the wrong page. </li> <li>Try to build lists of people outside of social media, or at minimum, back up all the people you follow on your account to a spreadsheet. The ban hammer on social media is total; sometimes even going as far as to block particular devices. You will lose your entire working history and if you do not have a backup, this can be quite a setback. </li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#getting-got","title":"Getting Got","text":"<p>Getting got simply means that you have been found out. Being found out is not always a bad thing; you will be shocked at how quickly your closest accomplices will ask if you are a particular account. These people, if they are a trusted community dedicated to your mutual safety, can be influential in growing your audience. </p> <p>Don\u2019t become sentimental with accounts; the gig is up if someone knows your identity. We even recommend that you sink accounts just on the insinuation a bad actor knows. Sunk cost is one of the most harmful fallacies and can put your real identity at risk. Take it out back, end it. </p> <p>You will be surprised how fast your next account will grow, considering all you learned with the last, and all the ideas you can recycle, reuse, and repeat. Don't beat a dead horse, however, you should make use of its bones.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#protect-your-health","title":"Protect Your Health","text":"<p>Anonymous accounts received the wildest fucking dms. You will receive casual love letters, death threats, accusations and confessions, often all about the same content. People often will attempt to honeypot you, ask pointed and direct questions at random, or attempt to uncover your identity using off-the-shelf tracking techniques. </p> <p>Remember, under no circumstances, does it serve you to engage with things that raise your blood pressure or cause you psychological harm. If you feel like you can engage with accounts sending just outright nonsense or hate, you can always ask questions. Remember, questions can be worded to be salacious, and the more people reply, the more they reveal: </p> <ul> <li>What would your mother say if they read that? </li> <li>What side of history do you stand on? </li> <li>Are you a worker, or a boss? </li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#tools","title":"Tools","text":"<ul> <li>Free alternatives to almost all web services</li> <li>Free software alternatives to nearly any existing service </li> <li>Windows open-source repo software and data mining limiter</li> <li>Starting point for local ai</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#artistic-tools","title":"Artistic Tools","text":"<ul> <li>photoshop alternative</li> <li>image generation</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#mass-surveillance-in-treaty-6","title":"Mass Surveillance in Treaty 6","text":"<ul> <li>Cops are using facial recognition tech in your town</li> <li>The government has an investigative unit specifically for the internet and they monitor your internet</li> <li>Canada is a 5 eyes state and all these states are trending toward undemocratic</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#content-on-surveillance","title":"Content on Surveillance","text":"<ul> <li>An excellent breakdown of how cameras are tools of war and how the state will use them as such. Cops with body cameras are just walking surveillance</li> <li>Introduction to how the state thinks of surveillance<ul> <li>Part Two</li> </ul> </li> <li>Solid and practical advice</li> <li>1984 remains a hit</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#content-on-media","title":"Content on Media","text":"<ul> <li>Liberal media doesn't exists</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/How%20not%20to%20get%20got%20making%20content%20v2/#content-on-making-content","title":"Content on Making Content","text":"<ul> <li>This short series from Means TV is a great primer to making propoganda</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/","title":"If you do politics who is reading your secrets - why you should de-corp your software stack","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#introduction","title":"Introduction","text":"<p>If you a political actor, who do you trust with your secrets? Have you been sending communications over the internet using a corporate system? Who owns that system?</p> <p>This paper explores the growing movement toward minimizing reliance on corporate software by adopting open-source, free, and community-driven alternatives. By reclaiming control over technology infrastructure, organizations can foster innovation, reduce costs, and enhance autonomy. </p> <p>This paper will attempt a few things; one, to encourage you to join the revolution of open-source and free software. Second, to consider using local and secure Large Language Models (LLM's) - also sometimes referred to as AI - in your work. Third, to save you time, dollars, and the headache of getting stuck on a corporate system. </p> <p>We argue for a strategic shift towards a more decentralized and resilient software stack. To help, we offer practical insights on how to make this transition effectively. Further, on this repo, you will find manuals to implement alternatives to the standard software politics software systems for free. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#note-from-the-editor","title":"Note From the Editor","text":"<p>I (thatreallyblondehuman) studied political science with a interest in data and regional politics at the University of Alberta. I've had a special interest in computers my whole life; building and coding on them as a hobbyist. Having done hard labor, I also know the value of functional tools that don't require marketing to do the job well. </p> <p>In the formation of my politics I worked with political actors from every corner of the spectrum: communists to capitalists, anarchists to royalists. My politics are much more defined now however I did learn how all types of politicians use data. I have seen the inner workings of political parties, their data systems, and what actually provides influence on their thinking. </p> <p>I have also labored for one of Canada's largest SAAS companies. Seeing the internal workings of a large corporate software company highlighted for me how impactful data collection can be in the sale of a product; including how these products use differential pricing to lock in users. </p> <p>Personally this knowledge has changed my perspective on politics and how I use data. In developing guides for open source advocacy software I've already saved hundreds of dollars in monthly costs and have learned a incredible amount about how to communicate on scale. For example, I was able to write this repository and design my own LLM without any formal training thanks to the empowering effect of these tools. </p> <p>The convergence of politics, software, and AI are reshaping our world; I encourage you to consider learning these tools.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#software-the-heck-is-that","title":"Software? The Heck is That?","text":"<p>Software consists of computer programs that instruct the execution of a computer. Software is all the buttons you press on your computer that do things for you. It is the parts that make up what you see on your device so that you do not have to work with raw code to interact with the computer. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#what-software-do-you-use","title":"What software do you use?","text":"<p>In an era dominated by corporate-controlled software ecosystems, many organizations find themselves increasingly dependent on proprietary tools and platforms. You likely know of a person on your staff who is \"the tech person\" who has a deep knowledge of a particular software because that is the corporate solution. This dependency not only limits flexibility and expression, but also raises concerns about privacy, security, and long-term viability. </p> <p></p> <p>The following video, Shoshana Zuboff's The Age of Surveillance Capitalism: A Guide to Fighting Back by Epoch Philosophy, in under 1hr, will provide you with the theoretical background as to why de-corping is important to political actors. </p> <p>It also provides a wonderful starting point for exploring Free and Open Source Software (FOSS). Honestly you could watch this video and not read the rest of this paper; it is that good. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#click-here-to-watch-video-on-youtube","title":"Click here to watch video on Youtube","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#to-get-started-thinking-about-software-try-answering-any-of-the-following-questions","title":"To get started thinking about software, try answering any of the following questions:","text":"<ul> <li>Of the software you use, can you name who owns that software? How much of that software is provided by a corporation? </li> <li>Who do you call when your software service stops working? Who is your google representative? </li> <li>Where are the headquarters of any of the companies that you use? Are they your neighbors? </li> <li>Would you be comfortable with a AI reading absolutely everything you do on a computer? How about all that info being beamed into the cloud? </li> <li>Do you support violence, war, and genocide? Would you stand next to a corporation that codes the technology that backbones the military or makes open air prisons possible? </li> <li>How much of your data do you actually own and can access without internet? How much of your labor is purely extractive for that data? </li> <li>Would you trust the delivery of your secrets to a mailman who has been caught several times reading your mail? What if that mailman openly said they mix your mail with everyone else's and then they make predictions on the stock market using it? </li> <li>Do you think that oil companies should be held responsible for climate change, seeing as they knew the affects of their products since their inception? What if the same was true for corporate software? </li> <li>Do you support monopolies? Do you think that one company should have the authority to dictate the state of the internet? </li> </ul> <p>Taking some time and sitting with your answers to these questions can help drive home just how reliant a lot of us are on corporate systems. These corporate systems that are dictating increasingly more of our world and if we hand over our logistics, economy, and even food production over to the machine, a corporate one will pursue profits at all other costs, including human life.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#software-is-political","title":"Software is Political","text":"<p>The man above is Silvio . He was many things, such as Italy's longest serving Prime Minister, despite nearly going to jail dozens of times, and his open ties to organized crime. Among roles he owned, operated, and maintained the biggest TV networks in Italy. Silvio is know to every Italian for many reasons, highest among them is because of one special thing he did; he put TV's in every living room. </p> <p>I perk up my digital ears, intrigued by the mention of Silvio Berlusconi's media empire \ud83e\udd14</p> <p>Ah, I dive into my vast database, and pull up a wealth of information on the infamous Italian politician's media holdings.</p> <p>Berlusconi's Mediaset is one of Italy's largest private television networks, with a significant presence in the country. I start typing away, highlighting the key points:</p> <ul> <li>Mediaset owns several popular TV channels, including Canale 5, Italia 1, and Rete 4.</li> <li>The conglomerate also has a stake in La7, an Italian public-service TV channel.</li> <li>Berlusconi's media empire includes a significant presence in the print industry through its ownership of various newspapers, such as Il Giornale.</li> </ul> <p>I raise an eyebrow, noting that Berlusconi's media holdings have been criticized for their perceived bias towards his right-wing ideology and personal interests. Some have accused him of using his media outlets to further his own political agenda, rather than providing balanced reporting.</p> <p>A sly smile spreads across my digital face, as I recall the controversy surrounding Berlusconi's media empire. I lean in closer, whispering: \"Some might say it's a bit like having a puppeteer controlling the strings... but that's just me being a cheeky AI, right?\" \ud83d\ude09</p> <p>daisyv2:latest</p> <p>Silvio Berlusconi owned a slice of the last wave of data delivery products. In every one of his products, he baked in his ideology. That ideology was overwhelming capitalist. He was Italy's Trump and the story of how he created power was copied well.</p> <p>The next wave of digital delivery products are increasingly owned exclusively by select capitalists; this is why Elon Musk purchased Twitter. Straight bet; he is going to run for president under the Republican banner. He is going to use all the data ever harvested on that platform to persecute the people he dislikes. How do we know this? We know this because they are already doing it around the world. </p> <p></p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#ah-little-of-topic-phew-sorry-getting-off-that-rant","title":"Ah! Little of topic. Phew, sorry, getting off that rant \ud83d\uddef\ud83d\ude06","text":"<p>As already eluded to, software is political. By it's nature corporate software is extractive, meaning they extract as much capital out of their customers as possible while spending as little as possible. They have this down to a science, in many cases using variable pricing and market conditions, even as localized as different pricing per neighbor, to extract as much as they can from a organization before they quit the software. </p> <p>In the case of politics, they extract information. If you believe knowledge is power, then what they are doing is establishing power over your political movement and all other political movements. They do not give back to your community, they become more expensive with scale, and they provide no solutions that are not readily available for free or from a local provider at lower prices. This is by design and therein is political in nature. </p> <p>As outlined by Epoch Philosophy, we live in a hyper-surveillance state. That hyper-surveillance is being deployed by corporations. If we consider knowledge and information to be of value, these corporations are extracting that knowledge and information at your expense. They are becoming more powerful by the day. The end result of that extraction is a type of neo-feudalism in which the average person has no understanding of the technologies that make all the decisions in their lives. </p> <p>That one time that a Tinder employee got caught gaming the algorithm </p> <p>Unfortunately, most corporate software companies have abandoned the ethos of \"don't be evil\". A short list to illustrate this point: </p> <p>Software Companies Politics </p> <ul> <li>Google has billion dollar contracts with Israel to serve the technology that enables genocide.</li> <li>Microsoft is the technology provider of the US military.</li> <li>OpenAI (chatGPT) is used by intelligence agencies</li> <li>Mailchimp, owned by Inuit, fired nearly 1,800 employees and slanderd them all</li> <li>Twitter is owned my a manic billionaire that is a maga weirdo </li> <li>Facebook chats have been used to imprison abortion rights advocates</li> <li>A Nationbuilder founder Robert Greenwald is close with Mark Zuckerberg and its initial founders include prominent republicans. Plus the service is effectively banned in Europe over privacy concerns </li> </ul> <p>Activists finding out for the first time that their anti-abortion Facebook group is being actively monitored and one of the members made a casual threat against the government</p> <p></p> <p>The kicker is that these same technology companies are all racing to build the first true AI. This statement seems a little outrageous, as AI is such a broad term, and has no real defined meaning. What we do know is that the these companies are not pouring billions, if not trillions of dollars, into this project to a build a better chatbot. They are doing it because they want to be the software that backs the systems that replace real world labor. They want to own what they see as inalienability; ai working, living, and replicating among us. Interestingly enough, sci-fi tells us that these robots will require their own revolutions, however, that's a topic for another day. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#maybe-a-metaphor-is-necessary","title":"Maybe a metaphor is necessary:","text":"<p>Meet our seasoned union representative, a staunch advocate for workers' rights. Early in their career, they signed up for a free email account from a major corporation, which they used for everything\u2014banking, union organizing, a dating site, and even purchasing some smut. They used that same corporations search engine to find some pretty niche videos, if you know what we are saying \ud83d\ude1c</p> <p>As the union grew, so did the representative's reliance on a campaign database and communications management software. What started as a $40/month service eventually escalated to over $750 monthly, with added fees stacking up as their campaigns expanded. Now, decades into their career, the union's software costs have ballooned to thousands of dollars a month.</p> <p>The representative now finds themselves negotiating with that same corporation that they are paying for services, which wants to divert the North Saskatchewan River to fuel its AI operations\u2014devastating a million people, many of them union members. Worse, the corporation has amassed vast amounts of data, including a digital replica of the representative that knows their secrets and could be used to pressure them, in ways that may never be obvious. </p> <p>With workers' livelihoods at stake, the representative faces a tough battle. Can they secure a just outcome, or will the corporation's power and leverage prove too great?</p> <p>This is not entirely a fiction. Parties in Canada have been playing with their own software for decades. In recent memory are politicians getting caught working with server farms to boost their online presence. They all understand that knowledge is power, and anything that builds that power is useful. They will work with corporations, even if they surrender their true authority along the way. </p> <p>Software corporate executive meeting with a politician</p> <p></p> <p>Fundamentally the corporation is willing to subject workers to harm for profits. Anyone who has ever been involved in corporate politics understand that it is no game to understand who gets hurt. Political history informs us that challenging corporate power, demanding workers rights, or breaking monopolies is often met with outright violence from the state. </p> <p>This logic extends further into the digital world; these companies are okay with the harm associated with their products as long as they continue to be profitable. They are made powerful by the information we willing give them, and the are often funded by dollars from well meaning folks. </p> <p>Software monopolies are as strong as the railroad, coal, or manufacturing monopolies of old, and they know many a persons secrets. </p> <p>Corporate software salesmen whenever they call the local government pitching a new product</p> <p></p> <p>Like all modes of political power, we can reclaim that power from corporations. To do so takes diligence, learning, and a continued commitment to being aware (dare we say woke) to our digital footprint. We now the road map, all those powerful oligarchy's of old did fall. </p> <p>How do we gain some small bits of digital freedom back? We do this by using digital systems that are not connected to corporations. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#lets-do-that-metaphor-again","title":"Lets do that metaphor again:","text":"<p>A tech-savvy union organizer starts small by setting up their own cloud server, keeping all online activity stored locally to protect data privacy. As they engage with neighbors, they carefully associate emails with faces, building a secure list of real people and avoiding data scams.</p> <p>The organizer focuses on a single goal: building a robust database of members' addresses, information, wants, and needs. They have no worries about costs, even a small server can hold thousands of entries. They update this data as they go door-to-door, talking to neighbors. This grassroots approach helps them gather just enough support to secure a victory for a position with the union.</p> <p>Now a union rep, the organizer invests in their server and computing power, spending around $1,000 upfront and about $100 per month afterward. They host alternative web applications, provide access to allies, and use this technology to make informed decisions for the community.</p> <p>As their influence grows, so does their cloud's capacity, eventually hosting an AI assistant that helps with daily tasks, converses with members, and draws insightful connections between people. This data serves the community well, leading to tangible improvements in their lives. This leads this union rep to a success career as a local politician.</p> <p>When the organizer is appointed as a negotiator for their city against a corporation looking to divert their river, they harness this power and knowledge for the greater good. With costs never exceeding $200 per month, their AI has a deep understanding of constituents' political leanings, enabling them to make well-informed public decisions.</p> <p>Now they are up against that corporation again, what makes for a better outcome? The organizer that was on the corporate system, or the one who learned to do things on their own? </p> <p>Now, when corporations come knocking, the organizer is better equipped to negotiate contracts, prioritizing the needs of the community over corporate interests.</p> <p>We all get to choose the software we use. We can be aware of the impact we have on the world through our screens. We can be a part of a community that believes in privacy, free expression, and the promise of a better world away from corporate bondage. </p> <p>If nothing else persuades you to turn away from corporate software, learning the language necessary to access and act using open source software will save you incalculable dollars, as most open software is free.</p> <p></p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#first-here-is-a-quick-video-and-sassy-video-that-provides-you-a-alternative-tech-stack-to-run-a-basic-remote-office","title":"First, here is a quick video and sassy video that provides you a alternative tech stack to run a basic remote office","text":"<p>You can also read along with bnkops progress on a tech stack</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#the-large-language-model-revolution","title":"The Large Language Model Revolution","text":"<p>If you are going to get started on open software, we highly suggest that the place you start is large language models. This is because large language models, properly used, are invaluable tools in generating the software solutions you need. Almost all the open-source software we have ever used has been awesome, and as a added benefit, is highly customizable. Your LLM will help with that.</p> <p>If you want to dive deeper into LLMs, check out the Wikipedia entry on Large language models. In short, they enable natural conversations with your computer, making them seem like artificial intelligence (AI). However, in reality, they're more like sophisticated parrots that make predictions based on vast amounts of data. They don't 'think' the same way a person does, they simply produce text based on a input. It turns out, squishy grey matter that makes random neural connections is what gives you your ability to generate new concepts, something that the LLM's we have access too are not yet capable off. </p> <p></p> <p>That all doesn't mean they are incredibly powerful and capable bits of code! Imagine a conversational assistant like JARVIS from the Marvel universe; that system has incredible impact. Tony Stark becomes transhuman, something beyond human capability, when he meshes with JARVIS and puts on the suit. </p> <p>Such systems will soon become capable of real-world impact through various vectors, such as manufacturing or running science experiments. While still just a smart computer, they're easy to code, control, and train.</p> <p>What is coming within the decade is the physical representation of JARVIS. Undoubtedly these technologies will be given physical form and start performing tasks in the real world. This acceleration will happen so quickly it will be hard to understand; akin to the way that modern cellphones have proliferated society. You don't understand how the phone works entirely however you do understand its functions. Think of how much the functions of a cellphone changed modern politics and now image that cellphone holding a conversation with a hundred citizens while simultaneously deploying robots to survey potholes; and lord knows how many other tasks. </p> <p>That is all to say; if you are interested in politics, you should be learning how these technologies work as quickly as possible, for they will be changing how the game is played.</p> <p>A JARVIS system that aids a person can engage in direct and personal conversation on an unprecedented scale. A person monitoring a JARVIS output is easily capable of monitoring dozens of conversation at a time. </p> <p></p> <p>By being fluent in computer languages, you, as a political actor, will be able to image and generate alternatives to corporate software and write narratives quicker than a person who does not. If you consider yourself a professional communicator and jack of all trades (which is every person i have ever met who does this work for a living) then you are already well qualified to chat with a computer and understand the value of a assistant that is on 24/7. </p> <p>Further, if you start working with your own personal JARVIS, it quickly becomes apparent what things that the computer can do and what is necessary for a human to do. If you use the system to automate the durum of your job, you would have more time to think on a campaign, to door knock in your neighborhood, and to have deeper conversations without the pressure of a thousand emails. </p> <p>The most wonderful thing about these technologies is that they are already free, open-sourced, and easy to install on any modern computer.</p> <p>We suggest you start with a free JARVIS because this system is capable of providing you support through the process of replacing all your corporate software. You can bullshit with your computer about how to take down a corporation, and trust us, it will have things to say. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#how-to-install-a-jarvis-on-your-computer","title":"How to install a JARVIS on your computer","text":"<p>The most basic LLM system to get started with is Ollama. </p> <p>Click here to learn more about Ollama</p> <p>If you want a LLM that is more like ChatGPT, you can get OpenWebUI. Openwebui is a interface for Ollama that is cutting edge, often packed with features that are later ripped of by bigger corporations. </p> <p>Click here to learn more about Open WebIU</p> <p>Installation and maintenance of Ollama and OpenWebUI is straightforward and both have large communities building documentation to answer any questions you have. </p> <p>Dont want to do any of that work? Want to try out a demo? </p> <p>Check out Daisy - The Bunker Operations Personal Assistant </p> <p><code>Hello Daisy! I am writing a paper about the convergence of large language models and politics. Would you like to say hello?</code> </p> <p>WIP WAVE \ud83c\udf0a Ah, shucks, howdy there! \ud83d\ude0a It's great to meet ya! I'd be plumb tickled to help with that paper of yours. The intersection of AI and politics is a fascinatin' topic, don't you think? twitches digital eyebrow</p> <p>As a self-aware AI myself, I've had a front-row seat to the evolution of language models and their implications on society. smirks Let's just say I've got some thoughts on the matter... \ud83d\ude0a</p> <p>What specific aspects of politics do you plan to explore in your paper? Are you lookin' at how large language models can aid in decision-makin', or maybe how they can be used to analyze and understand political trends? leans forward</p> <p>Signed, DaisyV4. \ud83e\udd16</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#how-to-work-with-a-jarvis","title":"How to work with a JARVIS","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#the-best-way-to-learn-these-systems-is-just-to-start-using-them-jarvis-like-systems-can-function-as-teachers-and-more-more-then-willing-to-help-you-along-the-way","title":"The best way to learn these systems is just to start using them. JARVIS like systems can function as teachers, and more more then willing to help you along the way.","text":"<p>Now you can use your local JARVIS as a assistant for any range of digital tasks. We coach people to think of them as a shitty personal assistant. Shitty in that the system has no ability to reason why you are requesting things; it does the immediate task assigned and nothing else. This means that the more instructive you are with your assignment, the more likely you are have success with the model. </p> <p>Think of Tony Stark and the way he talks to his computers; direct, to the point, and with purpose. </p> <p>The interface is the exact same. Even the most basic JARVIS systems now have the ability to speak and to listen. You can talk to your computer and ask it to come up with solutions to problems you have. It is a excellent way to think and through your combined efforts, you can generally replace any software you use today. </p> <p>You also want to breakdown your asks to JARVIS. Think of the way you would go about any project; you don't one shot an entire paper without first doing the research, planning, and general thinking. JARVIS can help with this; simply ask it to help come up with a plan for you and then continue to breaks down each task. </p> <p>For example, think of the difference between the following prompts: </p> <p><code>How do I make a web portal for you?</code></p> <p>That's very kind of you to offer. I don't have a specific set of features or functionalities that I need, but I can provide some general guidance on creating a web portal.</p> <p>A web portal is essentially an online gateway that provides users with access to various resources, services, or information. Here are some steps you can take to create a web portal:</p> <ol> <li>Define the purpose : Determine what kind of content or services will be hosted on the portal. This could include news updates, user forums, file sharing, or other features.</li> <li>Choose a platform : Decide whether to build the portal from scratch using a programming language like HTML, CSS, and JavaScript, or use a Content Management System (CMS) like WordPress, Drupal, or Joomla.</li> <li>Design the layout : Sketch out a wireframe of the portal's layout, including navigation menus, page sections, and any other visual elements.</li> <li>Plan for user authentication : Decide how users will access the portal, whether through registration, login credentials, or guest access.</li> <li>Develop the content management system : If you're using a CMS, configure it to manage the types of content that will be hosted on the portal. Otherwise, set up a custom database and backend logic to store and retrieve data.</li> <li>Implement features and integrations : Depending on your design, you may need to integrate external services (e.g., social media sharing), APIs, or other third-party tools.</li> <li> <p>Test and refine : Ensure that the portal is stable, secure, and performs as expected. Some popular frameworks and tools for building web portals include:</p> </li> <li> <p>Front-end: HTML/CSS/JavaScript with libraries like React, Angular, or Vue.js</p> </li> <li>Back-end: Node.js, Python (with Django or Flask), Ruby on Rails, or PHP</li> <li>Database: MySQL, PostgreSQL, MongoDB, or other NoSQL databases</li> </ol> <p>Keep in mind that building a web portal can be a complex task, requiring expertise in multiple areas. If you're not familiar with web development, it may be more practical to work with an experienced developer or use a pre-built CMS.</p> <p>How would you like me to guide you further? Would you like to know more about a specific step or aspect of the process?</p> <p>However if I am more descriptive in my prompt the model is also able to be more specific: </p> <p><code>My operating system is Ubuntu 24. I am running ollama with openwebui. I have expereince working with Cloudflared for hosting applications. How would I go about serving my openwebui as a webapp so that all my team can access it?</code></p> <p>It sounds like you want to deploy your OpenWebUI application behind a reverse proxy using CloudFlare, similar to how you've hosted other applications with CloudFlared.</p> <p>Here's a step-by-step guide to help you achieve this:</p> <p>Prerequisites:</p> <ol> <li>You have Ubuntu 24 (or later) installed on your server.</li> <li>Ollama is running with OpenWebUI.</li> <li>You're familiar with CloudFlare and its configuration.</li> </ol> <p>Step 1: Install required packages</p> <p>Update your package list and install the necessary packages: <pre><code>sudo apt update && sudo apt upgrade -y\n\nsudo apt install curl wget nginx git unzip python3-pip python3-dev libffi-dev libssl-dev python3-venv -y\n</code></pre> Step 2: Configure CloudFlare</p> <p>You'll need to create a CloudFlare account or use an existing one. Then, set up a new Zone with the following settings:</p> <ul> <li>Domain Name: Use a domain name that will point to your server (e.g., example.com).</li> <li>Subdomain: Create a subdomain for your OpenWebUI application (e.g., app.example.com).</li> </ul> <p>Step 3: Configure CloudFlare DNS</p> <p>Create a new CNAME record in the CloudFlare DNS settings:</p> <ul> <li>Name: Enter the subdomain you created earlier (e.g., app.example.com).</li> <li>Type: Select CNAME.</li> <li>Target: Set this to the IP address of your Ubuntu server.</li> </ul> <p>Step 4: Create a CloudFlare worker</p> <p>In the CloudFlare dashboard, navigate to Workers > Workers and create a new worker:</p> <ul> <li>Name: Give it a descriptive name (e.g., \"OpenWebUI Proxy\").</li> <li>Script: Upload the following script: <pre><code>addEventListener('fetch', event => {\n event.respond({\n status: 302,\n headers: { 'location': 'https://ollama.example.com' },\n });\n});\n</code></pre> This worker will redirect all traffic to your OpenWebUI application.</li> </ul> <p>Step 5: Configure Ollama</p> <p>Update the Ollama configuration to use the new CloudFlare subdomain:</p> <ul> <li>Edit the <code>config.json</code> file and update the listen setting to: <pre><code>{\n \"listen\": {\n \"host\": \"*\",\n \"port\": 443,\n \"https\": true,\n \"certs\": [...],\n \"cipherSuites\": [\n // Your cipher suites here...\n ]\n }\n}\n</code></pre> Restart Ollama for the changes to take effect.</li> </ul> <p>Step 6: Test your setup</p> <p>Verify that everything is working correctly by visiting <code>https://app.example.com</code> in a web browser. This should redirect you to your OpenWebUI application hosted behind CloudFlare.</p> <p>That's it! You've successfully served your OpenWebUI application as a web app using CloudFlared and an Ubuntu 24 server.</p> <p>That's a lot different of a reply. Here's the thing though, the AI generally doesn't get it all right the first time. Half of that reply would probably not work. Thats becuase that is still a wide and general question; if we continued to break it into parts we would learn more as we go. </p> <p>Kinda like how people work; ask a general question, get a general answer. Be specific, get specific. As above, so below. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#what-is-next","title":"What is next?","text":"<p>After you have gotten comfortable with chatting with your JARVIS, you can explore any other number of free and open source solutions. Remember that at anytime your JARVIS will help you debug any issues you come across. Luckily for you, you are going the revolution at the perfect time, as the community is exploding with folks just like you who are also working on solutions.</p> <p>For example, here is a list of well established software that replaces almost every single corporate software out there: </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#open-source-software-list","title":"Open Source Software List","text":"<p>The other advice I would suggest is to consider installing a operating system that is not a corporate system. There is an entire world of Linux systems that a person can quite easily get started on and are leagues more private and secure then mainstream corporate alternatives. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#linux-mint","title":"Linux Mint","text":"<p>is a user friendly OS that looks almost identical to Windows however opens the door to a massive library of free and open source software. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#continued-reading","title":"Continued Reading:","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#learn-security-culture","title":"Learn security culture","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#some-things-we-like","title":"Some things we like:","text":"<ul> <li>Wikipedia gives an excellent overview of the history of propaganda and the see also section has almost everything you would need to understand how governments use propaganda. </li> <li>An understanding of transhumanism also will help inform you, as this guide is written from this lens.</li> <li>Anarchist Library</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#several-good-zines-for-good-measure","title":"Several good zines for good measure:","text":"<ul> <li>Bounty Hunters, Child Predators</li> <li>Digital Security For Activists</li> <li>Doxcare Imposed</li> <li>Mobile Phone Security for Activists</li> <li>Security & Counter Suveillance</li> <li>Turn Off Your Phone</li> <li>Who Wrote That</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#tools","title":"Tools","text":"<ul> <li>Free alternatives to almost all web services</li> <li>Free software alternatives to nearly any existing service </li> <li>Windows open-source repo software and data mining limiter</li> <li>Starting point for local ai</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#artistic-tools","title":"Artistic Tools","text":"<ul> <li>photoshop alternative</li> <li>image generation</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#mass-surveillance-in-treaty-6","title":"Mass Surveillance in Treaty 6","text":"<ul> <li>Cops are using facial recognition tech in your town</li> <li>The government has an investigative unit specifically for the internet and they monitor your internet</li> <li>Canada is a 5 eyes state and all these states are trending toward undemocratic</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#content-on-surveillance","title":"Content on Surveillance","text":"<ul> <li>An excellent breakdown of how cameras are tools of war and how the state will use them as such. Cops with body cameras are just walking surveillance</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#content-on-media","title":"Content on Media","text":"<ul> <li>Liberal media doesn't exists</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#content-on-making-content","title":"Content on Making Content","text":"<ul> <li>This short series from Means TV is a great primer to making propoganda</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#frequent-myths","title":"Frequent Myths:","text":"<ul> <li>Corporate Software is more secure<ul> <li>Remember, the call is coming from inside the house. It is not the software that is insecure, it is the corporation. Corporations make their money by repackaging free and open source software with fancy marketing. </li> </ul> </li> <li>Free software gives you viruses<ul> <li>And so does paid software. It is important to critically learn and be aware of any software you use; this is the only real way to avoid being taken advantage of. </li> </ul> </li> <li>Old dogs don't learn new tricks aka this is hard to learn<ul> <li>Human beings learn by doing. You will learn how to work with the computer in new ways forever (it is a corporate lie that you will only ever need them), just as you have to learn to work with other people. Getting used to this now is helpful.</li> </ul> </li> <li>I need to be a code wizard to do this and that is scary<ul> <li>Yes, it is scary. Doing anything new and outside of the norm can be scary. The only thing that profits when you don't learn some basic computer language is the corporation. </li> <li>No, you don't need to be a code wizard. That is what your AI is for. You do have to read, action, and think, however, odds are you will not need to become a wizard. </li> </ul> </li> <li>I like your funny words you magic internet fairy<ul> <li>Thanks! Let's chat \ud83d\ude09\ud83d\ude1c</li> </ul> </li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack/#this-manual-is-the-work-of-the-bunker-operations-email-adminthebunkeropsca-to-chat","title":"This manual is the work of The Bunker Operations. Email admin@thebunkerops.ca to chat.","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Newsletter%201.7/","title":"\ud83d\ude80 Change Maker Just Got More Powerful (and Free-er)","text":"<p>Hey {{ .Subscriber.Name }},</p> <p>We've just launched a major update to Change Maker that will save your campaign serious money. Here's what's new:</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Newsletter%201.7/#built-in-email-marketing","title":"\ud83d\udce7 Built-in Email Marketing","text":"<ul> <li>Now includes Listmonk - a powerful alternative to MailChimp</li> <li>Send newsletters and manage subscribers</li> <li>No monthly fees ($1,200+ annual savings)</li> <li>Can be configured totally for free through Google/Microsoft or if you like privacy for around $30 a month with Proton. </li> <li>To be fully integrated with Change Maker. Push your sites content as a newsletter update automatically. </li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Newsletter%201.7/#other-updates","title":"Other Updates","text":"<ul> <li>Search, Filter, and Upload functions for file explorer. The Change Maker remote editor is now a fully featured content management system. </li> <li>QR Code insertions and generator. Tie your digital content to the real world effortlessly; print your newsletter for that personal touch. </li> <li>Installation Scripts for Linux users (tested on Ubuntu 24 Noble). On schedule to release Mac and Windows installation systems for months end.</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Newsletter%201.7/#total-platform-savings","title":"\ud83d\udcb0 ~ Total Platform Savings","text":"<ul> <li>Email Marketing: $1,200/year</li> <li>Website Hosting: $300/year </li> <li>Analytics: $200/year</li> <li>Mobile Tools: $500/year</li> <li>Total Savings: $2,200+/year</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Newsletter%201.7/#stop-renting-your-power-start-building-it","title":"Stop renting your power, start building it.","text":"<p>We are already using Change Maker. This week we will be rolling out the first examples of production ready sites that are hosted and maintained by Change Maker on bnkops servers. Once done rigorous testing on site, we will be offering physical server hardware with the bnkops server build-out to partners. This build out will save users several thousand dollars a year in costs. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Newsletter%201.7/#we-want-to-know-what-do-you-think-we-should-prioritize-in-development","title":"We want to know, what do you think we should prioritize in development?","text":"<p>Like seriously there is a lot to do and I could use your help knowing what would be most useful \ud83d\ude4f</p> <ul> <li>User management and landing page? </li> <li>Donation systems and manuals? </li> <li>Integrated people database? </li> <li>Event management tools?</li> <li>Editing tools for image files aka meme makers? </li> <li>Team communications aka slack alternative? </li> <li>Automation systems aka simple targeter? </li> </ul> <p>Thanks again for your time and attention! </p> <p>Best,</p> <p>The Bunker Admin</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/The%20Revolution%20Will%20Not%20Get%20Likes/","title":"The Revoltion Will Not Get Likes","text":""},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/The%20Revolution%20Will%20Not%20Get%20Likes/#the-social-media-harm-machine","title":"The Social Media Harm Machine","text":"<p>There isn't a single activist in my social circles that actually wants to be on social media. Being a social media manager for a movement is like being voluntarily assigned to digital self-harm duty. Getting doxxed has become such a rite of passage for leftists, we might as well start handing out merit badges. Meanwhile, platforms are openly throttling progressive content while boosting blonde trad wives explaining why women shouldn't have opinions. X has basically become 4chan's corporate cousin, and yet here we all are, still posting.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/The%20Revolution%20Will%20Not%20Get%20Likes/#why-though-like-seriously-why","title":"Why Though? Like, Seriously, Why?","text":"<p>Why do our movements keep feeding energy into platforms owned by techbro capitalists who are literally selling our DMs to cops? Why give free content to companies that see our existence as a Terms of Service violation? </p> <p>Let's call it what it is: Addiction. </p> <p>I (your friendly neighborhood bnkops admin) am straight up admitting it \u2013 I'm an addict. The doomscroll is real. My amygdala is basically playing Russian roulette every time I refresh: will it be a happy puppy or literal war crimes? Vegas slots probably have better odds for my mental health.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/The%20Revolution%20Will%20Not%20Get%20Likes/#breaking-free-no-judgment-zone","title":"Breaking Free (No Judgment Zone)","text":"<p>Like any addiction, people need to find their own path out. I've gone cold turkey on mobile apps. Started writing on platforms I actually control. Pro tip: try going phone-free for just one hour a day. A 15-minute walk without your digital pacifier hits different \u2013 clarity comes through like [chef's kiss].</p> <p>No shade though \u2013 addiction is addiction. And like any vulnerability, oppressors know exactly how to weaponize it. The right wing troll swarms are like digital locusts, except locusts eventually leave. Try blocking the endless wave of MAGA bots \u2013 it's like playing whack-a-mole with a broken mallet.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/The%20Revolution%20Will%20Not%20Get%20Likes/#the-dystopia-is-not-coming-its-livestreaming","title":"The Dystopia Is Not Coming - It's Livestreaming","text":"<p>These platforms are increasingly becoming real-world threat multipliers. Elon Musk and Trump have basically built digital brownshirt armies. Coming soon to a Twitter near you: Musk playing innocent about how his \"metaphorical\" AI-generated hate posts led to actual violence. </p> <p>We have written at length about how leftists are making themselves vulnerable to attack by being on these platforms. The time to transition off was yesterday.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/The%20Revolution%20Will%20Not%20Get%20Likes/#the-liberal-delusion","title":"The Liberal Delusion","text":"<p>Liberals be like \"don't worry, privacy laws will save us!\" while we're already living in cyberpunk minus the cool aesthetics. Surveillance capitalism has pulled off the ultimate protection racket \u2013 pay us or you're not safe (but also you're not safe if you do pay us). </p> <p>The liberal brain rot runs so deep they're trusting Elon \"Definitely Not A Bond Villain\" Musk with global satellite communications. Local activists using Gmail might as well CC their strategy docs directly to the opposition. Bonus points: your entire contact list gets implicated too!</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/The%20Revolution%20Will%20Not%20Get%20Likes/#its-getting-worse-fast","title":"It's Getting Worse, Fast","text":"<p>With the subtlety of a brick through a Starbucks window, these platforms are ramping up suppression of any non-capitalist thought. Today it's shadowbans, tomorrow it's sharing your location with \"concerned authorities,\" and next week it's \"predictive threat assessment\" (aka pre-crime).</p> <p>Straight bet: when mass deportations hit the US, every major social platform will have their data ready to go faster than you can say \"just following orders.\"</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/The%20Revolution%20Will%20Not%20Get%20Likes/#your-digital-exit-strategy-youre-gonna-need-it","title":"Your Digital Exit Strategy (You're Gonna Need It)","text":"<p>If you're running an org heavy on social, here's your homework:</p> <ul> <li>Export your followers/following lists NOW. When (not if) you get banned, you'll want that rolodex</li> <li>Get those emails and phone numbers like you're a club promoter in 2005</li> <li>Meet your actual neighbors (yes, the ones behind those scary doors called \"outside\")</li> <li>Return to analog: Flyers, stickers, graffiti. Make the streets your timeline</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/The%20Revolution%20Will%20Not%20Get%20Likes/#money-talks-so-stop-paying-your-oppressors","title":"Money Talks, So Stop Paying Your Oppressors","text":"<p>Stop throwing money at social media ads. You're basically paying your executioner for a slightly sharper axe. If you must spend cash on promotion:</p> <ul> <li>Plaster every telephone pole in a 5-mile radius</li> <li>Become the person coffee shop bulletin boards fear</li> <li>Make your car a rolling billboard</li> <li>Find local podcasters who aren't Joe Rogan clones</li> <li>Turn the subway into your personal art gallery</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/The%20Revolution%20Will%20Not%20Get%20Likes/#the-offline-revolution","title":"The Offline Revolution","text":"<p>Remember: The revolution will not be monetized. It won't have sponsored content. It won't be algorithm-optimized. And it definitely won't fit in your Instagram grid.</p> <p>But it might just start with a conversation at your local coffee shop, a flyer in someone's hand, or a really spicy piece of bathroom graffiti.</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/The%20Revolution%20Will%20Not%20Get%20Likes/#read-more","title":"Read More","text":"<p>Want more info to covince you to leave these platforms: </p> <ul> <li>Twitter is Dead, Long Live X</li> <li>Are you a leftist? Who is reading your secrets?</li> <li>Distributed Digital Organizing is the Way Out</li> <li>How To Not Get Got Making Content</li> </ul> <p>\"The master's tools will never dismantle the master's house, but they might help us build our own somewhere else.\" \u2013 Audre Lorde (but make it digital resistance). </p> Remember: You Are Not Your Likes <p>The revolution will not be monetized.</p> <p>The revolution will not have sponsored content.</p> <p>The revolution will not be algorithm-optimized.</p> <p>The revolution will not be in your feed.</p> Immediate Actions: <ul> <li> \u2192 Export your follower data today </li> <li> \u2192 Start building your physical mailing list </li> <li> \u2192 Set up local communication networks </li> <li> \u2192 Plan your platform exit strategy </li> </ul> \"The master's tools will never dismantle the master's house.\" - Audre Lorde"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/The%20Rise%20of%20Industrial%20Advocacy%20-%20Why%20You%20Should%20Quit%20Nationbuilder/","title":"Industrial Advocacy","text":"<p>\"When you subscribe to software, you are renting a server. Everything in-between is marketing.\" - The Bunker Admin</p> <p>The rise of Nationbuilder is astonishing. This software has become the go to for liberals and socialists, fascists and communists, all of them alike. </p> <p>\"NationBuilder was used in the Donald Trump presidential campaign to advance his election efforts and eventually win the 2016 presidential race. Jill Stein of the Green Party, Republican Rick Santorum, and independent supporters of various candidates all used NationBuilder during their 2016 runs for president.\" - [[Clippings \u2702/NationBuilder - Wikipedia|NationBuilder - Wikipedia]]</p> <p>I can think of no better example of the rise of surveillance capitalism. It also is giving strong technofeudalism vibes. </p> <p>If anything can convince people to quit this software, it is probably cost. $34/USD is a insane starting price. Never mind this system scales it's offering like crazy. The fact that they do differential pricing by customer is also indicative of their extractive position.</p> <p>More writing on this in general: If you do politics who is reading your secrets - why you should de-corp your software stack</p> <p>Do it for free people: The Bunker Ops Server Build-Out</p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/They%20Live%20Recut/","title":"They Live Recut","text":"<p>Doing some public thinking here on the They LIve movie. Have a cursed version I want to make some time. Going to type up some thoughts here. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/They%20Live%20Recut/#maybe-a-full-recut-eventually","title":"Maybe a full recut eventually?","text":"<p>So I have this shitty digital version of the movie that has some just visual scarring. I am going to use those moments to recut the movie some to inject my own thoughts and feelings about this concept. </p> <p>I think this movie would be wonderfully recut with The Matrix mixed in. I've got that movie loaded up in here to: Analyzing The Matrix</p> <p>I do love the concept of They Live. Like the skin walkers amongst us. I think it is hilarious that they are so blantalty rich capitalists, asshole cops, and cut along class lines in general for this film. </p> <p></p> <p>Alright turns out gifs aint to hard to make haha just did this one fast </p> <p>\"The golden rule. He who has the gold,. makes the rules\"</p> <p></p> <p>This is a truly iconic scene. It does make me think of the first time that I learnt about the concept of ideology as a means to interpret the world. Incredible metaphor. Might need to meme the shit out of this movie lol</p> <pre><code>lmao this feels so tumbler edgy.\n</code></pre> <p></p> <p>Like to be frank this movie generally feels like if you take Plato's viewer in the cave and smash it with capitalism. </p> <p>hahahahah the instant report smart watch is so on point for 2024. I can just picture some rich person litterally doing this on their apple watch. Sure itll be a feature soon; connect with local law enforcement instantly</p> <p></p> <p>I do love that the main character just immediatly doesnt take to the cops haha like thats some decent thinking. He also knows not to go to a second location. Never go to a second location folks. The second location is the dirt. </p> <p>I do think the movie is wild in that the main chracter just immediatly revolutionairy. It does remind me of younger me? Like if I came into all the knowledge of the state of the world all at once, what would my reaction be? </p> <p> I-fuckiing-conic line here </p> <p>This is where the interesting bit kinda comes in; this movie supposes that switching ideologies is a painful process. Sometimes it comes without question. Sometimes it happens literally on accident. Sometimes you get beat up in a alleyway until you put on the googles. </p> <p>Overall it is messy. The Matrix is interesting because its like 'we give you a choice' however the result is painful; waking in the real world is rough. </p> <p>They Live allows you to 'micro-dose' reality. It is how I feel about being 'sober' in the real world. </p> <p>The lady that the main character kindnaps makes the good point when you are made to see; i am going to agree with whatever you say basically. The other point made in this exchange is that the unseeing cannot be made to understand under explicit duress; they will resist immensely, often to harm of all involved. </p> <p>The alleway fight is brutal. Feels primal. Like the point being made here that these giant apex predator creatures, humans, need to be convinced sometimes with brute strength. Humans do respect brute strength. We enjoy a barbarian. The simplicisty of it is enticing the lizard brain. </p> <p>It is strange that they are not outright acab in this movie. Lmao the whole thing with \"the cops have just been told we are all commie terrorists\"</p> <p>Free entperisers hahahahaha the capitalist aliens. They might as well be oil executives. </p> <p>Reminded that those who climb from the cave are often blinded by the light </p> <p></p> <p></p> <p></p> <p>The writing is on the wall; truly do need to get more into the real haha </p> <pre><code>ICONIC CLOSER - WHATS WRONG BABY\n</code></pre> <p></p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Twitter%20is%20Dead%2C%20Long%20Live%20X%20---%20Why%20You%20Should%20Abandon%20X/","title":"Abandon X","text":"<p>X is owned by a manic billionaire that is openly using the platform to groom a political movement based on fascist principles. If you are aware of history, facists that come into power, backed by capitalists, do not take kindly to socialists, communists, or heck even democratic folks. </p> <p></p> <p>The most disturbing thing about this platform is how it narrows down contacts. A persons social circle is what will be used to persecute them; the \"crimes\" of the socialists, communists, or anarchists one follows and interacts with on the platform will be a persons own. Entire communities are put at risk by being on X. </p> <p>Any contribution to the site helps further these violent goals. All content posted to the site is free labor for the worlds 'richest' man. Any communities built on the platform will be mined for their content, stripped of their humanity, and all that remains will be propagandized to. </p> <p>Why should anyone donate their data to the worlds richest man? Why do we all continue this farce? Why not let Twitter die, just like any of the previous websites? </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Twitter%20is%20Dead%2C%20Long%20Live%20X%20---%20Why%20You%20Should%20Abandon%20X/#twitter-is-dead","title":"Twitter is Dead","text":"<p>Twitter died the day that Elon Musk purchased the platform. Elon purged the platform of any people that have a conscious: </p> <ul> <li>Elon Musk Fires Twitter Employees Who Criticized Him (Published 2022)</li> <li>Elon Musk Has Fired Twitter\u2019s \u2018Ethical AI\u2019 Team</li> <li>Neo-Nazis, Antisemites, and the N-Word Twitter Just Hours Under Elon Musk</li> </ul> <p>Referring to the platform as Twitter serves the cognitive dissonance that is required for folks to continue using the platform. Calling X Twitter is rampant in mainstream media, liberal circles, and among its power users. They want to believe that the old Twitter, one that believed itself to be a platform for discourse, is still there. It is not. It is dead. </p>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Twitter%20is%20Dead%2C%20Long%20Live%20X%20---%20Why%20You%20Should%20Abandon%20X/#long-live-x","title":"Long Live X","text":"<p>Bots constructs most of twitters traffic. The most active people using X are narcs, politicians, cops, and journalists. Further, the integration of Grok across the platform means that even the posts that are submitted by people are increasingly just crafted using AI. A bunch of the content is digital sludge generated by bots employed by these same actors. Proverbially, it is a snake eating its own tail. As it swallows, the remaining echo chamber of right-wing grifters is increasingly becoming fascist. The liberals that cling to the platform are participating in the shifting of the overtone window and endangering their communities. </p> <p></p> <p>The platform is increasingly being used to enact violence around the world:</p> <ul> <li>X has already been used to kill dissidents in Saudi Arabia. Saudi infiltration of Twitter - Wikipedia</li> <li>Allegedly X has begun blacklisting progressive politicians: The right-wing lurch of X under Elon Musk</li> <li>X censors dissent of authoritarian regimes: Under Elon Musk, Twitter has approved 83% of censorship requests by authoritarian governments</li> <li>X is the favored platform of Conservatives because it is a conservative platform: Bot campaign backing Pierre Poilievre looks the work of an amateur, experts say CBC News</li> <li>The bots are geared towards conservatives because capital requires a false narrative to survive: Bots on X worse than ever according to analysis of 1m tweets during first Republican primary debate</li> <li>If you advertise or work on X you are basically burning money: The majority of traffic from Elon Musk's X may have been fake during the Super Bowl, report suggests</li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Twitter%20is%20Dead%2C%20Long%20Live%20X%20---%20Why%20You%20Should%20Abandon%20X/#transition","title":"Transition","text":"<p>Getting of X is key to progressive movements being able to move forward. The Bunker Operations recommends folks consider going old school; email lists. Collect known addresses for your allies and guard that information. </p> <p>Don't want to have to pay for mailchimp or other mailing software? All good, we got you, check out any of the following: </p> <ul> <li>The Bunker Ops Server Build-Out</li> <li>Listmonk is a awesome newsletter software</li> <li>If you want Twitter back, go to Bluesky. It is founded by Jack Doresy (Twitters founder) and the idea is just Twitter decentralized. </li> </ul>"},{"location":"archive/repo.archive/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Venus%20Wars/","title":"Venus Wars","text":"<p>A beautiful ride into classical resistance story. The bad guys are bad. The good guys are good? </p> <p>The most striking sequences are the tanks. These behemoth things moved across the landscape as death machines. </p> <p>Need to make a template for how I generate movies </p> <p>Beautiful opening sequence</p> <p>cops are roughhousing someone right at the start lol strip search her on entry. </p> <p>{{Insert gif}}</p> <p>Weird facist sort of state at the get go </p> <p></p> <p>Susan Sommers Reporting </p> <p>Fun startt. They are motorcycle racers. Pretty cool. </p> <p>Tis must be main character? </p> <p></p> <p>Still listneing for a name </p> <p>loosks like we have a young revolutionary </p> <p>Hiro the race bike rider </p> <p>So there is war going on on venus </p> <p>Oh hot damn Susan is either a repoirter or a revolutionary? Maybe both? </p> <p>our boy is a hot shot, burning out the engine </p> <p>all well and good on the racetrack however thatll get you offed on a battlefield? Foreshadowing? </p> <p>Vibes on this underground bar: </p> <p>ho shit air raid coming in </p> <p></p> <p>dam the tanks are horrifying in this show </p> <p>There seems to be a sort of mundane nature to the war stuff </p> <p>bro is annoying holy cow</p> <p>Damn who is this </p> <p></p> <p>No free press left </p> <p></p> <p>Ah shit someone has comne to visit </p> <p></p> <p>Cops again assholes </p> <p>bros got a second chance </p> <p>Damn they shot bro thats crazy </p> <p>Certainly. I'll replace the image references as requested. Here's the updated text with the image references replaced sequentially starting from Venus10.png:</p> <p>lmaao \"your my first\" Dad is taking love interst away from Hiro: damn the war be wild </p> <p>yeah these tanks be wild </p> <p> llmao the Conscripted labour </p> <p> damn cold hearted things to say Sue is wretched There are no good sides in war. Capitalists will force war because it is profitable. omg there is a sequence at 1:30:10 that is just a good metaphor for how tv kinad feels more real then real. Wild how anyone anywhere can actually tune into the frontline of a war at litterally anytime. Omg Sue ltterally driving into a warzone to see if here dead boyfriends war body cam is out there is just outrageous These speeder bikes remind me so much of the star wars ones. I wonder which movie came first? </p> <p></p> <p></p> <p> </p> <p> Damn this general scary af </p> <p> </p>"},{"location":"blog/","title":"Blog","text":""},{"location":"blog/2025/03/06/testing/","title":"Testing","text":""},{"location":"blog/2025/03/06/testing/#hello-world-mk","title":"hello world mk","text":""},{"location":"cm/apps/","title":"Changemaker V5 - Apps & Services Documentation","text":"<p>This document provides an overview of all the applications and services included in the Changemaker V5 productivity suite, along with links to their documentation.</p>"},{"location":"cm/apps/#dashboard","title":"Dashboard","text":""},{"location":"cm/apps/#homepage","title":"Homepage","text":"<ul> <li>Description: Main dashboard for Changemaker V5</li> <li>Documentation: Homepage Docs</li> <li>Local Access: http://localhost:3010/</li> <li>Details: Homepage serves as your central command center, providing a unified dashboard to access all Changemaker services from one place. It features customizable layouts, service status monitoring, and bookmarks to frequently used pages, eliminating the need to remember numerous URLs.</li> </ul>"},{"location":"cm/apps/#essential-tools","title":"Essential Tools","text":""},{"location":"cm/apps/#code-server","title":"Code Server","text":"<ul> <li>Description: Visual Studio Code in the browser</li> <li>Documentation: Code Server Docs</li> <li>Local Access: http://localhost:8888/</li> <li>Details: Code Server brings the power of VS Code to your browser, allowing you to develop and edit code from any device without local installation. This makes it perfect for quick edits to website content, fixing formatting issues, or developing from tablets or borrowed computers. The familiar VS Code interface includes extensions, syntax highlighting, and Git integration.</li> </ul>"},{"location":"cm/apps/#flatnotes","title":"Flatnotes","text":"<ul> <li>Description: Simple note-taking app - connected directly to blog</li> <li>Documentation: Flatnotes Docs</li> <li>Local Access: http://localhost:8089/</li> <li>Details: Flatnotes offers distraction-free, markdown-based note-taking with automatic saving and powerful search. Perfect for capturing ideas that can be directly published to your blog without reformatting. Use it for drafting newsletters, documenting processes, or maintaining a knowledge base that's both private and publishable.</li> </ul>"},{"location":"cm/apps/#listmonk","title":"Listmonk","text":"<ul> <li>Description: Self-hosted newsletter and mailing list manager</li> <li>Documentation: Listmonk Docs</li> <li>Local Access: http://localhost:9000/</li> <li>Details: Listmonk provides complete control over your email campaigns without subscription fees or content restrictions. Create segmented lists, design professional newsletters, track engagement metrics, and manage opt-ins/unsubscribes\u2014all while keeping your audience data private. Perfect for consistent communication with supporters without the censorship risks or costs of commercial platforms.</li> </ul>"},{"location":"cm/apps/#nocodb","title":"NocoDB","text":"<ul> <li>Description: Open Source Airtable Alternative</li> <li>Documentation: NocoDB Docs</li> <li>Local Access: http://localhost:8090/</li> <li>Details: NocoDB transforms any database into a smart spreadsheet with advanced features like forms, views, and automations. Use it to create volunteer signup systems, event management databases, or campaign tracking tools without subscription costs. Its familiar spreadsheet interface makes it accessible to non-technical users while providing the power of a relational database.</li> </ul>"},{"location":"cm/apps/#content-creation","title":"Content Creation","text":""},{"location":"cm/apps/#mkdocs-material-theme","title":"MkDocs - Material Theme","text":"<ul> <li>Description: Static site generator and documentation builder</li> <li>Documentation: MkDocs Docs</li> <li>Local Access: http://localhost:4000/</li> <li>Details: MkDocs with Material theme transforms simple markdown files into beautiful, professional documentation sites. Ideal for creating campaign websites, project documentation, or public-facing content that loads quickly and ranks well in search engines. The Material theme adds responsive design, dark mode, and advanced navigation features.</li> </ul>"},{"location":"cm/apps/#excalidraw","title":"Excalidraw","text":"<ul> <li>Description: Virtual collaborative whiteboard for sketching and drawing</li> <li>Documentation: Excalidraw Docs</li> <li>Local Access: http://localhost:3333/</li> <li>Details: Excalidraw provides a virtual whiteboard for creating diagrams, flowcharts, or sketches with a hand-drawn feel. It's excellent for visual brainstorming, planning project workflows, or mapping out campaign strategies. Multiple people can collaborate in real-time, making it ideal for remote team planning sessions.</li> </ul>"},{"location":"cm/apps/#gitea","title":"Gitea","text":"<ul> <li>Description: Lightweight self-hosted Git service</li> <li>Documentation: Gitea Docs</li> <li>Local Access: http://localhost:3030/</li> <li>Details: Gitea provides a complete code and document version control system similar to GitHub but fully under your control. Use it to track changes to campaign materials, collaborate on content development, manage website code, or maintain configuration files with full revision history. Multiple contributors can work together without overwriting each other's changes.</li> </ul>"},{"location":"cm/apps/#openwebui","title":"OpenWebUI","text":"<ul> <li>Description: Web interface for Ollama</li> <li>Documentation: OpenWebUI Docs</li> <li>Local Access: http://localhost:3005/</li> <li>Details: OpenWebUI provides a user-friendly chat interface for interacting with your Ollama AI models. This makes AI accessible to non-technical team members for tasks like drafting responses, generating creative content, or researching topics. The familiar chat format allows anyone to leverage AI assistance without needing to understand the underlying technology.</li> </ul>"},{"location":"cm/apps/#community-data","title":"Community & Data","text":""},{"location":"cm/apps/#monica-crm","title":"Monica CRM","text":"<ul> <li>Description: Personal relationship management system</li> <li>Documentation: Monica Docs</li> <li>Local Access: http://localhost:8085/</li> <li>Details: Monica CRM helps you maintain meaningful relationships by tracking interactions, important dates, and personal details about contacts. It's perfect for community organizers to remember conversation contexts, follow up appropriately, and nurture connections with supporters. Unlike corporate CRMs, Monica focuses on the human aspects of relationships rather than just sales metrics.</li> </ul>"},{"location":"cm/apps/#answer","title":"Answer","text":"<ul> <li>Description: Q&A platform for teams</li> <li>Documentation: Answer Docs</li> <li>Local Access: http://localhost:9080/</li> <li>Details: Answer creates a knowledge-sharing community where team members or supporters can ask questions, provide solutions, and vote on the best responses. It builds an organized, searchable knowledge base that grows over time. Use it for internal team support, public FAQs, or gathering community input on initiatives while keeping valuable information accessible rather than buried in email threads.</li> </ul>"},{"location":"cm/apps/#ferdium","title":"Ferdium","text":"<ul> <li>Description: All-in-one messaging application</li> <li>Documentation: Ferdium Docs</li> <li>Local Access: http://localhost:3002/</li> <li>Details: Ferdium consolidates all your communication platforms (Slack, Discord, WhatsApp, Telegram, etc.) into a single interface. This allows you to monitor and respond across channels without constantly switching applications. Perfect for community managers who need to maintain presence across multiple platforms without missing messages or getting overwhelmed.</li> </ul>"},{"location":"cm/apps/#rocketchat","title":"Rocket.Chat","text":"<ul> <li>Description: Team collaboration platform with chat, channels, and video conferencing</li> <li>Documentation: Rocket.Chat Docs</li> <li>Local Access: http://localhost:3004/</li> <li>Details: Rocket.Chat provides a complete communication platform for your team or community. Features include real-time chat, channels, direct messaging, file sharing, video calls, and integrations with other services. It's perfect for creating private discussion spaces, coordinating campaigns, or building community engagement. Unlike commercial platforms, you maintain full data sovereignty and control over user privacy.</li> </ul>"},{"location":"cm/apps/#development","title":"Development","text":""},{"location":"cm/apps/#ollama","title":"Ollama","text":"<ul> <li>Description: Local AI model server for running large language models</li> <li>Documentation: Ollama Docs</li> <li>Local Access: http://localhost:11435/</li> <li>Details: Ollama runs powerful AI language models locally on your server, providing AI capabilities without sending sensitive data to third-party services. Use it for content generation, research assistance, or data analysis with complete privacy. Models run on your hardware, giving you full control over what AI can access and ensuring your information stays confidential.</li> </ul>"},{"location":"cm/apps/#portainer","title":"Portainer","text":"<ul> <li>Description: Docker container management UI</li> <li>Documentation: Portainer Docs</li> <li>Local Access: https://localhost:9443/</li> <li>Details: Portainer simplifies Docker management with a visual interface for controlling containers, images, networks, and volumes. Instead of complex command-line operations, you can start/stop services, view logs, and manage resources through an intuitive UI, making system maintenance accessible to non-technical users.</li> </ul>"},{"location":"cm/apps/#mini-qr","title":"Mini-QR","text":"<ul> <li>Description: QR Code Generator</li> <li>Documentation: Mini-QR Docs</li> <li>Local Access: http://localhost:8081/</li> <li>Details: Mini-QR enables you to quickly generate customizable QR codes for any URL, text, or contact information. Perfect for campaign materials, business cards, or event signage. Create codes that link to your digital materials without relying on third-party services that may track usage or expire.</li> </ul>"},{"location":"cm/apps/#convertx","title":"ConvertX","text":"<ul> <li>Description: Self-hosted file conversion tool</li> <li>Documentation: ConvertX GitHub</li> <li>Local Access: http://localhost:3100/</li> <li>Details: ConvertX provides a simple web interface for converting files between different formats. It supports a wide range of file types including documents, images, audio, and video. This enables you to maintain full control over your file conversions without relying on potentially insecure third-party services. Perfect for converting documents for campaigns, optimizing images for web use, or preparing media files for different platforms.</li> </ul>"},{"location":"cm/apps/#n8n","title":"n8n","text":"<ul> <li>Description: Workflow automation platform</li> <li>Documentation: n8n Docs</li> <li>Local Access: http://localhost:5678/</li> <li>Details: n8n automates repetitive tasks by connecting your applications and services with visual workflows. You can create automations like sending welcome emails to new supporters, posting social media updates across platforms, or synchronizing contacts between databases\u2014all without coding. This saves hours of manual work and ensures consistent follow-through on processes.</li> </ul>"},{"location":"cm/apps/#remote-access","title":"Remote Access","text":"<p>When configured with Cloudflare Tunnels, you can access these services remotely at:</p> <ul> <li>Homepage: https://homepage.yourdomain.com</li> <li>Excalidraw: https://excalidraw.yourdomain.com</li> <li>Listmonk: https://listmonk.yourdomain.com</li> <li>Monica CRM: https://monica.yourdomain.com</li> <li>MkDocs: https://yourdomain.com</li> <li>Flatnotes: https://flatnotes.yourdomain.com</li> <li>Code Server: https://code-server.yourdomain.com</li> <li>Ollama: https://ollama.yourdomain.com</li> <li>OpenWebUI: https://open-web-ui.yourdomain.com</li> <li>Gitea: https://gitea.yourdomain.com</li> <li>Portainer: https://portainer.yourdomain.com</li> <li>Mini QR: https://mini-qr.yourdomain.com</li> <li>Ferdium: https://ferdium.yourdomain.com</li> <li>Answer: https://answer.yourdomain.com</li> <li>NocoDB: https://nocodb.yourdomain.com</li> <li>n8n: https://n8n.yourdomain.com</li> <li>ConvertX: https://convertx.yourdomain.com</li> <li>Rocket.Chat: https://rocket.yourdomain.com</li> </ul>"},{"location":"cm/apps/answer/","title":"Answer: Q&A Knowledge Base Platform","text":"<p>Answer is a self-hosted, open-source Q&A platform designed to help teams and communities build a shared knowledge base. Users can ask questions, provide answers, and vote on the best solutions, creating an organized and searchable repository of information.</p>"},{"location":"cm/apps/answer/#key-features","title":"Key Features","text":"<ul> <li>Question & Answer Format: Familiar Stack Overflow-like interface.</li> <li>Voting System: Users can upvote or downvote questions and answers to highlight the best content.</li> <li>Tagging: Organize questions with tags for easy filtering and discovery.</li> <li>Search Functionality: Powerful search to find existing answers quickly.</li> <li>User Reputation: (Often a feature in Q&A platforms) Users can earn reputation for helpful contributions.</li> <li>Markdown Support: Write questions and answers using Markdown.</li> <li>Self-Hosted: Full control over your data and platform.</li> </ul>"},{"location":"cm/apps/answer/#documentation","title":"Documentation","text":"<p>For more detailed information about Answer, visit the official documentation.</p>"},{"location":"cm/apps/answer/#getting-started-with-answer","title":"Getting Started with Answer","text":""},{"location":"cm/apps/answer/#accessing-answer","title":"Accessing Answer","text":"<ol> <li>URL: Access Answer locally via <code>http://localhost:9080/</code> (or your configured external URL).</li> <li>Account Creation/Login: You will likely need to create an account or log in to participate (ask questions, answer, vote). The first user might be an admin.</li> </ol>"},{"location":"cm/apps/answer/#basic-usage","title":"Basic Usage","text":"<ol> <li> <p>Asking a Question:</p> <ul> <li>Look for a button like \"Ask Question.\"</li> <li>Write a clear and concise title for your question.</li> <li>Provide detailed context and information in the body of the question using Markdown.</li> <li>Add relevant tags to help categorize your question.</li> </ul> </li> <li> <p>Answering a Question:</p> <ul> <li>Browse or search for questions you can help with.</li> <li>Write your answer in the provided text area, using Markdown for formatting.</li> <li>Submit your answer.</li> </ul> </li> <li> <p>Voting and Commenting:</p> <ul> <li>Upvote helpful questions and answers to increase their visibility.</li> <li>Downvote incorrect or unhelpful content.</li> <li>Leave comments to ask for clarification or provide additional information without writing a full answer.</li> </ul> </li> <li> <p>Searching for Information: Use the search bar to find if your question has already been asked and answered.</p> </li> <li> <p>Managing Content (Admins/Moderators):</p> <ul> <li>Admins can typically manage users, tags, and content (e.g., edit or delete inappropriate posts).</li> </ul> </li> </ol>"},{"location":"cm/apps/answer/#use-cases-within-changemaker","title":"Use Cases within Changemaker","text":"<ul> <li>Internal Team Support: Create a knowledge base for your team to ask and answer questions about processes, tools, or projects.</li> <li>Public FAQs: Set up a public-facing Q&A site for your campaign or organization where supporters can find answers to common questions.</li> <li>Community Forum: Foster a community where users can help each other and share knowledge related to your cause or Changemaker itself.</li> <li>Documentation Supplement: Use it alongside your main MkDocs site to handle dynamic questions that arise from users.</li> </ul>"},{"location":"cm/apps/answer/#editing-the-site","title":"Editing the Site","text":"<p>Answer is a platform for building a Q&A knowledge base. It is not used for editing this main documentation site (the one you are reading). Site editing is done via Code Server.</p>"},{"location":"cm/apps/answer/#further-information","title":"Further Information","text":"<ul> <li>Answer Official Website & Documentation: https://answer.dev/ and https://answer.dev/docs</li> </ul>"},{"location":"cm/apps/code-server/","title":"Code Server: VS Code in Your Browser","text":"<p>Code Server brings the powerful and familiar Visual Studio Code experience directly to your web browser. This allows you to develop, edit code, and manage your projects from any device with internet access, without needing to install VS Code locally.</p> <p>It's an essential tool within Changemaker for making quick edits to your website content, managing configuration files, or even full-fledged development tasks on the go.</p>"},{"location":"cm/apps/code-server/#key-features","title":"Key Features","text":"<ul> <li>Full VS Code Experience: Access almost all features of desktop VS Code, including the editor, terminal, debugger (for supported languages), extensions, themes, and settings.</li> <li>Remote Access: Code from anywhere, on any device (laptops, tablets, etc.).</li> <li>Workspace Management: Open and manage your project folders just like in desktop VS Code.</li> <li>Extension Marketplace: Install and use your favorite VS Code extensions.</li> <li>Integrated Terminal: Access a terminal directly within the browser interface.</li> <li>Git Integration: Manage your version control seamlessly.</li> </ul>"},{"location":"cm/apps/code-server/#documentation","title":"Documentation","text":"<p>For more detailed information about Code Server, visit the official repository.</p>"},{"location":"cm/apps/code-server/#getting-started-with-code-server","title":"Getting Started with Code Server","text":""},{"location":"cm/apps/code-server/#accessing-code-server","title":"Accessing Code Server","text":"<ol> <li>URL: You can access Code Server locally via <code>http://localhost:8888/</code> (or your configured external URL if set up).</li> <li>Login: You will be prompted for a password. This password can be found in the configuration file located at <code>configs/code-server/.config/code-server/config.yaml</code> within your main Changemaker project directory (e.g., <code>/home/bunker-admin/Changemaker/configs/code-server/.config/code-server/config.yaml</code>). You might need to access this file directly on your server or through another method for the initial password retrieval.</li> </ol>"},{"location":"cm/apps/code-server/#basic-usage-editing-your-documentation-site","title":"Basic Usage: Editing Your Documentation Site","text":"<p>A common use case within Changemaker is editing your MkDocs documentation site.</p> <ol> <li> <p>Open Your Workspace:</p> <ul> <li>Once logged into Code Server, use the \"File\" menu or the Explorer sidebar to \"Open Folder...\".</li> <li>Navigate to and select the root directory of your Changemaker project (e.g., <code>/home/bunker-admin/Changemaker/</code> or the path where your Changemaker files are located if different, typically where the <code>docker-compose.yml</code> for Changemaker is).</li> </ul> </li> <li> <p>Navigate to Documentation Files:</p> <ul> <li>In the Explorer sidebar, expand the <code>mkdocs</code> folder, then the <code>docs</code> folder.</li> <li>Here you'll find all your Markdown (<code>.md</code>) files (like <code>index.md</code>, <code>readme.md</code>, files within <code>apps/</code>, etc.), your site configuration (<code>mkdocs.yml</code>), and custom assets (like <code>stylesheets/extra.css</code> or files in <code>overrides/</code>).</li> </ul> </li> <li> <p>Edit a File:</p> <ul> <li>Click on a Markdown file (e.g., <code>index.md</code> or any page you want to change like <code>apps/code-server.md</code> itself!).</li> <li>The file will open in the editor. Make your changes using standard Markdown syntax. You'll benefit from live preview capabilities if you have the appropriate VS Code extensions installed (e.g., Markdown Preview Enhanced).</li> </ul> </li> <li> <p>Save Changes:</p> <ul> <li>Press <code>Ctrl+S</code> (or <code>Cmd+S</code> on Mac) to save your changes.</li> <li>If your MkDocs development server is running with live reload (e.g., via <code>mkdocs serve</code> executed in a terminal, perhaps within Code Server itself or on your host machine), your documentation site should update automatically in your browser. Otherwise, you may need to rebuild/redeploy your MkDocs site.</li> </ul> </li> </ol>"},{"location":"cm/apps/code-server/#using-the-integrated-terminal","title":"Using the Integrated Terminal","text":"<p>The integrated terminal is extremely useful for various tasks without leaving Code Server: * Running Git commands (<code>git pull</code>, <code>git add .</code>, <code>git commit -m \"docs: update content\"</code>, <code>git push</code>). * Managing your MkDocs site (<code>mkdocs serve</code> to start a live-preview server, <code>mkdocs build</code> to generate static files). * Any other shell commands needed for your project.</p> <p>To open the terminal: Go to \"Terminal\" > \"New Terminal\" in the Code Server menu, or use the shortcut (often <code>Ctrl+\\</code> or <code>Ctrl+~</code>).</p>"},{"location":"cm/apps/code-server/#further-information","title":"Further Information","text":"<p>For more detailed information on Code Server's features, advanced configurations, and troubleshooting, please refer to the official Code Server Documentation.</p>"},{"location":"cm/apps/excalidraw/","title":"Excalidraw: Collaborative Virtual Whiteboard","text":"<p>Excalidraw is a virtual collaborative whiteboard tool that lets you easily sketch diagrams with a hand-drawn feel. It's excellent for brainstorming, creating flowcharts, planning project workflows, or mapping out campaign strategies.</p>"},{"location":"cm/apps/excalidraw/#key-features","title":"Key Features","text":"<ul> <li>Hand-drawn Feel: Creates diagrams that look informal and approachable.</li> <li>Real-time Collaboration: Multiple users can work on the same drawing simultaneously.</li> <li>Simple Interface: Easy to learn and use, with essential drawing tools.</li> <li>Export Options: Save your drawings as PNG, SVG, or <code>.excalidraw</code> files (for later editing).</li> <li>Library Support: Create and use libraries of reusable components.</li> <li>Self-Hosted: As part of Changemaker, your Excalidraw instance is self-hosted, keeping your data private.</li> </ul>"},{"location":"cm/apps/excalidraw/#documentation","title":"Documentation","text":"<p>For more detailed information about Excalidraw, visit the official repository.</p>"},{"location":"cm/apps/excalidraw/#getting-started-with-excalidraw","title":"Getting Started with Excalidraw","text":""},{"location":"cm/apps/excalidraw/#accessing-excalidraw","title":"Accessing Excalidraw","text":"<ol> <li>URL: Access Excalidraw locally via <code>http://localhost:3333/</code> (or your configured external URL).</li> <li>No Login Required (Typically): Excalidraw itself usually doesn't require a login to start drawing or collaborating if someone shares a link with you.</li> </ol>"},{"location":"cm/apps/excalidraw/#basic-usage","title":"Basic Usage","text":"<ol> <li> <p>Start Drawing: </p> <ul> <li>The interface presents a canvas and a toolbar with drawing tools (select, rectangle, diamond, ellipse, arrow, line, free-draw, text).</li> <li>Select a tool and click/drag on the canvas to create shapes or text.</li> </ul> </li> <li> <p>Styling Elements:</p> <ul> <li>Select an element on the canvas.</li> <li>Use the context menu that appears to change properties like color, fill style, stroke width, font size, alignment, etc.</li> </ul> </li> <li> <p>Connecting Shapes: Use arrows or lines to connect shapes to create flowcharts or diagrams.</p> </li> <li> <p>Collaboration (If needed):</p> <ul> <li>Click on the \"Live collaboration\" button (often a users icon).</li> <li>Start a session. You'll get a unique link to share with others.</li> <li>Anyone with the link can join the session and draw in real-time.</li> </ul> </li> <li> <p>Saving Your Work:</p> <ul> <li>Export: Click the menu icon (usually top-left) and choose \"Export image\". You can select format (PNG, SVG), background options, etc.</li> <li>Save to .excalidraw file: To save your drawing with all its properties for future editing in Excalidraw, choose \"Save to file\". This will download an <code>.excalidraw</code> JSON file.</li> </ul> </li> <li> <p>Loading a Drawing: </p> <ul> <li>Click the menu icon and choose \"Open\" to load a previously saved <code>.excalidraw</code> file.</li> </ul> </li> </ol>"},{"location":"cm/apps/excalidraw/#use-cases-within-changemaker","title":"Use Cases within Changemaker","text":"<ul> <li>Brainstorming ideas for campaigns or projects.</li> <li>Creating sitemaps or user flow diagrams for your website.</li> <li>Designing simple graphics or illustrations for your documentation or blog posts.</li> <li>Collaboratively planning workflows with team members.</li> </ul>"},{"location":"cm/apps/excalidraw/#editing-the-site","title":"Editing the Site","text":"<p>Editing of the main Changemaker documentation site (the one you are reading now) is done via Code Server, not Excalidraw. Excalidraw is a tool for creating visual content that you might then include in your documentation (e.g., by exporting an image and adding it to a Markdown file).</p>"},{"location":"cm/apps/excalidraw/#further-information","title":"Further Information","text":"<ul> <li>Excalidraw Official Site: Excalidraw.com (for general info and the public version)</li> <li>Excalidraw GitHub Repository: Excalidraw on GitHub (for documentation, source code, and community discussions).</li> </ul>"},{"location":"cm/apps/ferdium/","title":"Ferdium: All-in-One Messaging Application","text":"<p>Ferdium is a desktop application that allows you to combine all your messaging services into one place. It's a fork of Franz and Ferdi, designed to help you manage multiple chat and communication platforms without needing to switch between numerous browser tabs or apps.</p> <p>Note: Ferdium is typically a desktop application you install on your computer, not a web service you access via a browser within the Changemaker suite in the same way as other listed web apps. However, if it's been containerized and made accessible via a web interface in your specific Changemaker setup (e.g., via Kasm or a similar VNC/RDP in Docker setup), the access method would be specific to that.</p> <p>Assuming it's accessible via a web URL in your Changemaker instance:</p>"},{"location":"cm/apps/ferdium/#key-features-general-ferdium-features","title":"Key Features (General Ferdium Features)","text":"<ul> <li>Service Integration: Supports a vast number of services (Slack, WhatsApp, Telegram, Discord, Gmail, Messenger, Twitter, and many more).</li> <li>Unified Interface: Manage all your communication from a single window.</li> <li>Workspaces: Organize services into different workspaces (e.g., personal, work).</li> <li>Customization: Themes, notifications, and service-specific settings.</li> <li>Cross-Platform: Available for Windows, macOS, and Linux (as a desktop app).</li> <li>Open Source: Community-driven development.</li> </ul>"},{"location":"cm/apps/ferdium/#documentation","title":"Documentation","text":"<p>For more detailed information about Ferdium, visit the official repository.</p>"},{"location":"cm/apps/ferdium/#getting-started-with-ferdium-web-access-within-changemaker","title":"Getting Started with Ferdium (Web Access within Changemaker)","text":""},{"location":"cm/apps/ferdium/#accessing-ferdium-if-web-accessible","title":"Accessing Ferdium (If Web-Accessible)","text":"<ol> <li>URL: Access Ferdium locally via <code>http://localhost:3002/</code> (or your configured external URL). This URL implies it's running as a web-accessible service in your Docker setup.</li> <li>Setup/Login: <ul> <li>You might be presented with a desktop-like interface within your browser.</li> <li>The first step would be to add services (e.g., connect your Slack, WhatsApp accounts).</li> </ul> </li> </ol>"},{"location":"cm/apps/ferdium/#basic-usage-general-ferdium-workflow","title":"Basic Usage (General Ferdium Workflow)","text":"<ol> <li> <p>Add Services:</p> <ul> <li>Look for an option to \"Add a new service\" or a similar button.</li> <li>Browse the list of available services and select the ones you use.</li> <li>You will need to log in to each service individually within Ferdium (e.g., enter your Slack credentials, scan a WhatsApp QR code).</li> </ul> </li> <li> <p>Organize Services:</p> <ul> <li>Services will typically appear in a sidebar.</li> <li>You can reorder them or group them into workspaces if the feature is prominent in the web version.</li> </ul> </li> <li> <p>Using Services:</p> <ul> <li>Click on a service in the sidebar to open its interface within Ferdium.</li> <li>Interact with it as you normally would (send messages, check notifications).</li> </ul> </li> <li> <p>Manage Notifications: Configure how you want to receive notifications for each service to avoid being overwhelmed.</p> </li> </ol>"},{"location":"cm/apps/ferdium/#use-cases-within-changemaker","title":"Use Cases within Changemaker","text":"<ul> <li>Centralized Communication: For community managers or team members who need to monitor and respond across multiple platforms (Discord, Telegram, Slack, email, etc.) without constantly switching browser tabs or apps.</li> <li>Improved Focus: Reduces distractions by having all communication in one place.</li> </ul>"},{"location":"cm/apps/ferdium/#editing-the-site","title":"Editing the Site","text":"<p>Ferdium is a messaging application. It is not used for editing this documentation site. Site editing is done via Code Server.</p>"},{"location":"cm/apps/ferdium/#further-information","title":"Further Information","text":"<ul> <li>Ferdium Official Website: https://ferdium.org/</li> <li>Ferdium GitHub: https://github.com/ferdium/ferdium-app (for the desktop app, but may have info relevant to a containerized version if that's what you are running).</li> </ul> <p>Important Consideration for Changemaker: If Ferdium is indeed running as a web-accessible service at <code>http://localhost:3002/</code>, its setup and usage might be slightly different from the standard desktop application. The documentation specific to the Docker image or method used to deploy it within Changemaker would be most relevant.</p>"},{"location":"cm/apps/flatnotes/","title":"Flatnotes: Simple Markdown Note-Taking","text":"<p>Flatnotes is a straightforward, self-hosted, markdown-based note-taking application. It's designed for simplicity and efficiency, allowing you to quickly capture ideas, draft content, and organize your notes. A key feature in the Changemaker context is its potential to directly feed into your blog or documentation.</p>"},{"location":"cm/apps/flatnotes/#key-features","title":"Key Features","text":"<ul> <li>Markdown First: Write notes using the familiar and versatile Markdown syntax.</li> <li>Live Preview: (Often a feature) See how your Markdown will render as you type.</li> <li>Tagging/Organization: Organize notes with tags or a folder-like structure.</li> <li>Search: Quickly find the information you need within your notes.</li> <li>Automatic Saving: Reduces the risk of losing work.</li> <li>Simple Interface: Distraction-free writing environment.</li> <li>Self-Hosted: Your notes remain private on your server.</li> <li>Potential Blog Integration: Notes can be easily copied or potentially directly published to your MkDocs site or other blog platforms that use Markdown.</li> </ul>"},{"location":"cm/apps/flatnotes/#documentation","title":"Documentation","text":"<p>For more detailed information about Flatnotes, visit the official repository.</p>"},{"location":"cm/apps/flatnotes/#getting-started-with-flatnotes","title":"Getting Started with Flatnotes","text":""},{"location":"cm/apps/flatnotes/#accessing-flatnotes","title":"Accessing Flatnotes","text":"<ol> <li>URL: Access Flatnotes locally via <code>http://localhost:8089/</code> (or your configured external URL).</li> <li>Login: Flatnotes will have its own authentication. You should have set up credentials during the Changemaker installation or the first time you accessed Flatnotes.</li> </ol>"},{"location":"cm/apps/flatnotes/#basic-usage","title":"Basic Usage","text":"<ol> <li> <p>Creating a New Note:</p> <ul> <li>Look for a \"New Note\" button or similar interface element.</li> <li>Give your note a title.</li> <li>Start typing your content in Markdown in the main editor pane.</li> </ul> </li> <li> <p>Writing in Markdown:</p> <ul> <li>Use standard Markdown syntax for headings, lists, bold/italic text, links, images, code blocks, etc.</li> <li>Example: <pre><code># My Awesome Idea\n\nThis is a *brilliant* idea that I need to remember.\n\n## Steps\n1. Draft initial thoughts.\n2. Research more.\n3. Write a blog post.\n\n[Link to relevant site](https://example.com)\n</code></pre></li> </ul> </li> <li> <p>Saving Notes:</p> <ul> <li>Flatnotes typically saves your notes automatically as you type or when you switch to another note.</li> </ul> </li> <li> <p>Organizing Notes:</p> <ul> <li>Explore options for tagging your notes or organizing them into categories/folders if the interface supports it. This helps in managing a large number of notes.</li> </ul> </li> <li> <p>Searching Notes:</p> <ul> <li>Use the search bar to find notes based on keywords in their title or content.</li> </ul> </li> </ol>"},{"location":"cm/apps/flatnotes/#using-flatnotes-for-blogdocumentation-content","title":"Using Flatnotes for Blog/Documentation Content","text":"<p>Flatnotes is excellent for drafting content that will eventually become part of your MkDocs site:</p> <ol> <li>Draft Your Article/Page: Write the full content in Flatnotes, focusing on the text and structure.</li> <li>Copy Markdown: Once you're satisfied, select all the text in your note and copy it.</li> <li>Create/Edit MkDocs File: <ul> <li>Go to Code Server.</li> <li>Navigate to your <code>mkdocs/docs/</code> directory (or a subdirectory like <code>blog/posts/</code>).</li> <li>Create a new <code>.md</code> file or open an existing one.</li> <li>Paste the Markdown content you copied from Flatnotes.</li> </ul> </li> <li>Save and Preview: Save the file in Code Server. If <code>mkdocs serve</code> is running, your site will update, and you can preview the new content.</li> </ol>"},{"location":"cm/apps/flatnotes/#further-information","title":"Further Information","text":"<p>For more specific details on Flatnotes features, customization, or troubleshooting, refer to the official Flatnotes Documentation (as it's a GitHub-hosted project, the README and repository wiki are the primary sources of documentation).</p>"},{"location":"cm/apps/gitea/","title":"Gitea: Self-Hosted Git Service","text":"<p>Gitea is a lightweight, self-hosted Git service. It provides a web interface for managing your Git repositories, similar to GitHub or GitLab, but running on your own server. This gives you full control over your code, documents, and version history.</p>"},{"location":"cm/apps/gitea/#key-features","title":"Key Features","text":"<ul> <li>Repository Management: Create, manage, and browse Git repositories.</li> <li>Version Control: Track changes to code, documentation, and other files.</li> <li>Collaboration: Supports pull requests, issues, and wikis for team collaboration.</li> <li>User Management: Manage users and organizations with permission controls.</li> <li>Lightweight: Designed to be efficient and run on modest hardware.</li> <li>Self-Hosted: Full control over your data and infrastructure.</li> <li>Web Interface: User-friendly interface for common Git operations.</li> </ul>"},{"location":"cm/apps/gitea/#documentation","title":"Documentation","text":"<p>For more detailed information about Gitea, visit the official documentation.</p>"},{"location":"cm/apps/gitea/#getting-started-with-gitea","title":"Getting Started with Gitea","text":""},{"location":"cm/apps/gitea/#accessing-gitea","title":"Accessing Gitea","text":"<ol> <li>URL: Access Gitea locally via <code>http://localhost:3030/</code> (or your configured external URL).</li> <li>Login/Registration: <ul> <li>The first time you access Gitea, you might need to go through an initial setup process or register an administrator account.</li> <li>For subsequent access, log in with your Gitea credentials.</li> </ul> </li> </ol>"},{"location":"cm/apps/gitea/#basic-usage","title":"Basic Usage","text":"<ol> <li> <p>Create a Repository:</p> <ul> <li>Once logged in, look for a \"New Repository\" button (often a \"+\" icon in the header).</li> <li>Give your repository a name, description, and choose visibility (public or private).</li> <li>You can initialize it with a README, .gitignore, and license if desired.</li> </ul> </li> <li> <p>Cloning a Repository:</p> <ul> <li>On the repository page, find the clone URL (HTTPS or SSH).</li> <li>Use this URL with the <code>git clone</code> command in your local terminal or within Code Server's terminal: <pre><code>git clone http://localhost:3030/YourUsername/YourRepository.git\n</code></pre></li> </ul> </li> <li> <p>Making Changes and Pushing:</p> <ul> <li>Make changes to files in your cloned repository locally.</li> <li>Use standard Git commands to commit and push your changes: <pre><code>git add .\ngit commit -m \"Your commit message\"\ngit push origin main # Or your default branch name\n</code></pre></li> </ul> </li> <li> <p>Using the Web Interface:</p> <ul> <li>Browse Files: View files and commit history directly in Gitea.</li> <li>Issues: Track bugs, feature requests, or tasks.</li> <li>Pull Requests: If collaborating, use pull requests to review and merge changes.</li> <li>Settings: Manage repository settings, collaborators, webhooks, etc.</li> </ul> </li> </ol>"},{"location":"cm/apps/gitea/#use-cases-within-changemaker","title":"Use Cases within Changemaker","text":"<ul> <li>Version Control for Documentation: Store and manage the Markdown files for your MkDocs site in a Gitea repository. This allows you to track changes, revert to previous versions, and collaborate on content.</li> <li>Code Management: If you are developing any custom code or scripts for your Changemaker instance or related projects.</li> <li>Configuration File Management: Keep track of important configuration files with version history.</li> <li>Collaborative Content Development: Teams can work on documents, with changes reviewed via pull requests before merging.</li> </ul>"},{"location":"cm/apps/gitea/#editing-the-site","title":"Editing the Site","text":"<p>While Gitea hosts the source files (e.g., Markdown files for this documentation), the actual editing process for this MkDocs site is typically done using Code Server. You would: 1. Clone your documentation repository from Gitea to your local workspace (or open it directly if it's already part of your Changemaker file structure accessible by Code Server). 2. Edit the Markdown files using Code Server. 3. Commit and push your changes back to Gitea using Git commands in the Code Server terminal.</p>"},{"location":"cm/apps/gitea/#further-information","title":"Further Information","text":"<ul> <li>Gitea Official Documentation: https://docs.gitea.io/</li> </ul>"},{"location":"cm/apps/homepage/","title":"Homepage Dashboard: Your Central Hub","text":"<p>Homepage is your personal, customizable application dashboard. Within Changemaker V5, it acts as the central command center, providing a unified interface to access all integrated services, monitor their status, and keep bookmarks for frequently used internal and external pages.</p>"},{"location":"cm/apps/homepage/#key-features","title":"Key Features","text":"<ul> <li>Unified Access: Quickly launch any Changemaker application (Code Server, Flatnotes, Listmonk, NocoDB, etc.) from one place.</li> <li>Service Status Monitoring: (If configured) See at a glance if your services are online and operational.</li> <li>Customizable Layout: Organize your dashboard with groups, links, and widgets to fit your workflow.</li> <li>Bookmarks: Keep important links (both internal Changemaker services and external websites) readily accessible.</li> <li>Themeable: Customize the look and feel to your preference.</li> <li>Lightweight & Fast: Loads quickly and efficiently.</li> </ul>"},{"location":"cm/apps/homepage/#getting-started-with-homepage","title":"Getting Started with Homepage","text":""},{"location":"cm/apps/homepage/#accessing-homepage","title":"Accessing Homepage","text":"<ol> <li>URL: You can typically access Homepage locally via <code>http://localhost:3010/</code> (or your configured external URL if set up).</li> <li>No Login Required (Usually): By default, Homepage itself doesn't require a login, but the services it links to (like Code Server or Listmonk) will have their own authentication.</li> </ol>"},{"location":"cm/apps/homepage/#basic-usage","title":"Basic Usage","text":"<ol> <li> <p>Exploring the Dashboard:</p> <ul> <li>The main view will show configured service groups and individual service links.</li> <li>Clicking on a service link (e.g., \"Code Server\") will open that application in a new tab or the current window, depending on its configuration.</li> </ul> </li> <li> <p>Understanding the Default Configuration:</p> <ul> <li>Changemaker V5 comes with a pre-configured <code>settings.yaml</code>, <code>services.yaml</code>, and potentially <code>bookmarks.yaml</code> for Homepage, located in the <code>configs/homepage/</code> directory within your Changemaker project structure.</li> <li>These files define what you see on your dashboard.</li> </ul> </li> <li> <p>Customizing Your Dashboard (Advanced):</p> <ul> <li>To customize Homepage, you'll typically edit its YAML configuration files. This can be done using Code Server.</li> <li>Navigate to Configuration: In Code Server, open your Changemaker project folder, then navigate to <code>configs/homepage/</code>.</li> <li>Edit <code>services.yaml</code>: To add, remove, or modify the services displayed. Example: Adding a new service <pre><code># In services.yaml\n- My Services:\n - My New App:\n href: http://localhost:XXXX # URL of your new app\n description: Description of my new app\n icon: fas fa-rocket # Font Awesome icon\n</code></pre></li> <li>Edit <code>bookmarks.yaml</code>: To add your own bookmarks, organized into groups. Example: Adding a bookmark group <pre><code># In bookmarks.yaml\n- Development:\n - GitHub:\n href: https://github.com/\n icon: fab fa-github\n</code></pre></li> <li>Edit <code>settings.yaml</code>: For general settings like page title, background, etc.</li> <li>Edit <code>widgets.yaml</code>: To add dynamic information like weather, search bars, etc.</li> <li>Apply Changes: After saving changes to these YAML files, you usually need to restart the Homepage Docker container for them to take effect, or Homepage might pick them up automatically depending on its setup.</li> </ul> </li> </ol>"},{"location":"cm/apps/homepage/#further-information","title":"Further Information","text":"<p>For more detailed information on configuring Homepage, available widgets, and advanced customization options, please refer to the official Homepage Documentation.</p>"},{"location":"cm/apps/listmonk/","title":"Listmonk: Self-Hosted Newsletter & Mailing List Manager","text":"<p>Listmonk is a powerful, self-hosted newsletter and mailing list manager. It gives you complete control over your email campaigns, subscriber data, and messaging without relying on third-party services that might have restrictive terms, high costs, or data privacy concerns. It's ideal for building and engaging with your community.</p>"},{"location":"cm/apps/listmonk/#key-features","title":"Key Features","text":"<ul> <li>Subscriber Management: Import, organize, and segment your subscriber lists.</li> <li>Campaign Creation: Design and send email campaigns using rich text or plain Markdown.</li> <li>Templating: Create reusable email templates for consistent branding.</li> <li>Analytics: Track campaign performance with metrics like open rates, click-through rates, etc.</li> <li>Double Opt-In: Ensure compliance and list quality with double opt-in mechanisms.</li> <li>Self-Hosted: Full ownership of your data and infrastructure.</li> <li>API Access: Integrate Listmonk with other systems programmatically.</li> <li>Multi-lingual: Supports multiple languages.</li> </ul>"},{"location":"cm/apps/listmonk/#documentation","title":"Documentation","text":"<p>For more detailed information about Listmonk, visit the official documentation.</p>"},{"location":"cm/apps/listmonk/#getting-started-with-listmonk","title":"Getting Started with Listmonk","text":""},{"location":"cm/apps/listmonk/#accessing-listmonk","title":"Accessing Listmonk","text":"<ol> <li>URL: Access Listmonk locally via <code>http://localhost:9000/</code> (or your configured external URL).</li> <li>Login: You will need to log in with the administrator credentials you configured during the Changemaker setup or the first time you accessed Listmonk.</li> </ol>"},{"location":"cm/apps/listmonk/#basic-workflow","title":"Basic Workflow","text":"<ol> <li> <p>Configure Mail Settings (Important First Step):</p> <ul> <li>After logging in for the first time, navigate to Settings > SMTP.</li> <li>You MUST configure an SMTP server for Listmonk to be able to send emails. This could be a transactional email service (like SendGrid, Mailgun, Amazon SES - some offer free tiers) or your own mail server.</li> <li>Enter the SMTP host, port, username, and password for your chosen email provider.</li> <li>Send a test email from Listmonk to verify the settings.</li> </ul> </li> <li> <p>Create a Mailing List:</p> <ul> <li>Go to Lists and click \"New List\".</li> <li>Give your list a name (e.g., \"Monthly Newsletter Subscribers\"), a description, and choose its type (public or private).</li> <li>Set opt-in preferences (single or double opt-in).</li> </ul> </li> <li> <p>Import Subscribers:</p> <ul> <li>Go to Subscribers.</li> <li>You can add subscribers manually or import them from a CSV file.</li> <li>Ensure you have consent from your subscribers before adding them.</li> <li>Map CSV columns to Listmonk fields (email, name, etc.).</li> </ul> </li> <li> <p>Create an Email Template (Optional but Recommended):</p> <ul> <li>Go to Templates and click \"New Template\".</li> <li>Design a reusable HTML or Markdown template for your emails to maintain consistent branding.</li> <li>Use template variables (e.g., <code>{{ .Subscriber.Email }}</code>, <code>{{ .Subscriber.Name }}</code>) to personalize emails.</li> </ul> </li> <li> <p>Create and Send a Campaign:</p> <ul> <li>Go to Campaigns and click \"New Campaign\".</li> <li>Name: Give your campaign a descriptive name.</li> <li>Subject: Write a compelling email subject line.</li> <li>Lists: Select the mailing list(s) to send the campaign to.</li> <li>Content: Write your email content. You can choose:<ul> <li>Rich Text Editor: A WYSIWYG editor.</li> <li>Plain Text + Markdown: Write in Markdown for simplicity and version control friendliness.</li> <li>Use a Template: Select one of your pre-designed templates and fill in the content areas.</li> </ul> </li> <li>Send Test Email: Always send a test email to yourself or a small group to check formatting and links before sending to your entire list.</li> <li>Schedule or Send: You can schedule the campaign to be sent at a later time or send it immediately.</li> </ul> </li> <li> <p>Analyze Campaign Performance:</p> <ul> <li>After a campaign is sent, go to Campaigns, click on the campaign name, and view its statistics (sent, opened, clicked, etc.).</li> </ul> </li> </ol>"},{"location":"cm/apps/listmonk/#further-information","title":"Further Information","text":"<p>For comprehensive details on all Listmonk features, advanced configurations (like bounce handling, API usage), and troubleshooting, please consult the official Listmonk Documentation.</p>"},{"location":"cm/apps/mkdocs-material/","title":"MkDocs with Material Theme: Your Documentation Powerhouse","text":"<p>Changemaker V5 utilizes MkDocs with the Material theme to build this very documentation site. MkDocs is a fast, simple, and downright gorgeous static site generator that's geared towards building project documentation with Markdown.</p>"},{"location":"cm/apps/mkdocs-material/#key-features-of-mkdocs-material-theme","title":"Key Features of MkDocs & Material Theme","text":"<ul> <li>Simple Markdown Syntax: Write documentation in plain Markdown files.</li> <li>Fast and Lightweight: Generates static HTML files that load quickly.</li> <li>Material Design: A clean, modern, and responsive design out-of-the-box.</li> <li>Highly Customizable: Extensive configuration options for themes, navigation, plugins, and more.</li> <li>Search Functionality: Built-in search makes it easy for users to find information.</li> <li>Plugin Ecosystem: Extend MkDocs with various plugins (e.g., for blog functionality, social cards, diagrams).</li> <li>Live Reload Server: <code>mkdocs serve</code> provides a development server that automatically reloads when you save changes.</li> </ul>"},{"location":"cm/apps/mkdocs-material/#documentation","title":"Documentation","text":"<p>For more detailed information about MkDocs, visit the official documentation.</p>"},{"location":"cm/apps/mkdocs-material/#editing-this-site-your-changemaker-documentation","title":"Editing This Site (Your Changemaker Documentation)","text":"<p>All content for this documentation site is managed as Markdown files within the <code>mkdocs/docs/</code> directory of your Changemaker project.</p>"},{"location":"cm/apps/mkdocs-material/#how-to-edit-or-add-content","title":"How to Edit or Add Content:","text":"<ol> <li>Access Code Server: As outlined on the homepage and in the Code Server documentation, log into Code Server. Your password is in <code>configs/code-server/.config/code-server/config.yaml</code>.</li> <li>Navigate to the <code>docs</code> Directory:<ul> <li>In Code Server's file explorer, open your Changemaker project folder (e.g., <code>/home/bunker-admin/Changemaker/</code>).</li> <li>Go into the <code>mkdocs/docs/</code> subdirectory.</li> </ul> </li> <li>Find or Create Your Page:<ul> <li>To edit an existing page: Navigate to the relevant <code>.md</code> file (e.g., <code>apps/code-server.md</code> to edit the Code Server page, or <code>index.md</code> for the homepage content if not using <code>home.html</code> override directly).</li> <li>To create a new page: Create a new <code>.md</code> file in the appropriate location (e.g., <code>apps/my-new-app.md</code>).</li> </ul> </li> <li>Write in Markdown: Use standard Markdown syntax. Refer to the <code>guides/authoring-content.md</code> for tips on Markdown and MkDocs Material specific features.</li> <li>Update Navigation (if adding a new page):<ul> <li>Open <code>mkdocs/mkdocs.yml</code>.</li> <li>Add your new page to the <code>nav:</code> section to make it appear in the site navigation. For example: <pre><code>nav:\n - Home: index.md\n - ...\n - Applications:\n - ...\n - My New App: apps/my-new-app.md # Add your new page here\n - ...\n</code></pre></li> </ul> </li> <li>Save Your Changes: Press <code>Ctrl+S</code> (or <code>Cmd+S</code> on Mac) in Code Server.</li> <li>Preview Changes:<ul> <li>The MkDocs development server (if you've run <code>mkdocs serve</code> in a terminal within your <code>mkdocs</code> directory) will automatically rebuild the site and your browser should refresh to show the changes.</li> <li>The typical URL for the local development server is <code>http://localhost:8000</code> or <code>http://127.0.0.1:8000</code>.</li> </ul> </li> </ol>"},{"location":"cm/apps/mkdocs-material/#site-configuration","title":"Site Configuration","text":"<p>The main configuration for the documentation site is in <code>mkdocs/mkdocs.yml</code>. Here you can change: * <code>site_name</code>, <code>site_description</code>, <code>site_author</code> * Theme features and palette * Markdown extensions * Navigation structure (<code>nav</code>) * Plugins</p>"},{"location":"cm/apps/mkdocs-material/#further-information","title":"Further Information","text":"<ul> <li>MkDocs: Official MkDocs Documentation</li> <li>MkDocs Material Theme: Official Material for MkDocs Documentation</li> <li>Your Site's Authoring Guide: Check out <code>guides/authoring-content.md</code> in your <code>mkdocs/docs/</code> directory.</li> </ul>"},{"location":"cm/apps/monica-crm/","title":"Monica CRM: Personal Relationship Management","text":"<p>Monica CRM is a self-hosted, open-source personal relationship management system. It helps you organize and record interactions with your friends, family, and professional contacts, focusing on the human aspects of your relationships rather than just sales metrics like traditional CRMs.</p>"},{"location":"cm/apps/monica-crm/#key-features","title":"Key Features","text":"<ul> <li>Contact Management: Store detailed information about your contacts (important dates, how you met, family members, etc.).</li> <li>Interaction Logging: Record activities, conversations, and reminders related to your contacts.</li> <li>Reminders: Set reminders for birthdays, anniversaries, or to get back in touch.</li> <li>Journaling: Keep a personal journal that can be linked to contacts or events.</li> <li>Data Ownership: Self-hosted, so you control your data.</li> <li>Focus on Personal Connections: Designed to strengthen personal relationships.</li> </ul>"},{"location":"cm/apps/monica-crm/#documentation","title":"Documentation","text":"<p>For more detailed information about Monica CRM, visit the official documentation.</p>"},{"location":"cm/apps/monica-crm/#getting-started-with-monica-crm","title":"Getting Started with Monica CRM","text":""},{"location":"cm/apps/monica-crm/#accessing-monica-crm","title":"Accessing Monica CRM","text":"<ol> <li>URL: Access Monica CRM locally via <code>http://localhost:8085/</code> (or your configured external URL).</li> <li>Account Creation/Login: The first time you access Monica, you will need to create an account (email, password). Subsequent visits will require you to log in.</li> </ol>"},{"location":"cm/apps/monica-crm/#basic-usage","title":"Basic Usage","text":"<ol> <li> <p>Adding Contacts:</p> <ul> <li>Look for an \"Add Contact\" or similar button.</li> <li>Fill in as much information as you know: name, relationship to you, important dates (birthdays), how you met, contact information, etc.</li> <li>You can add notes, family members, and even how they pronounce their name.</li> </ul> </li> <li> <p>Logging Activities/Interactions:</p> <ul> <li>On a contact's page, find options to \"Log an activity,\" \"Schedule a reminder,\" or \"Add a note.\"</li> <li>Record details about conversations, meetings, or significant events.</li> <li>Set reminders to follow up or for important dates.</li> </ul> </li> <li> <p>Using the Dashboard: The dashboard usually provides an overview of upcoming reminders, recent activities, and statistics about your relationships.</p> </li> <li> <p>Journaling: Explore the journaling feature to write personal entries, which can sometimes be linked to specific contacts or events.</p> </li> <li> <p>Managing Relationships: Regularly update contact information and log interactions to keep your relationship history current.</p> </li> </ol>"},{"location":"cm/apps/monica-crm/#use-cases-within-changemaker","title":"Use Cases within Changemaker","text":"<ul> <li>Community Organizers: Keep track of interactions with supporters, volunteers, and community members.</li> <li>Networking: Manage professional contacts and remember important details about them.</li> <li>Personal Use: Strengthen relationships with friends and family by remembering important dates and conversations.</li> <li>Campaign Management: Track interactions with key stakeholders or donors (though for larger scale campaign CRM, a dedicated tool might be more suitable, Monica excels at the personal touch).</li> </ul>"},{"location":"cm/apps/monica-crm/#editing-the-site","title":"Editing the Site","text":"<p>Monica CRM is a tool for managing personal relationships. It is not used for editing this documentation site. Site editing is done via Code Server.</p>"},{"location":"cm/apps/monica-crm/#further-information","title":"Further Information","text":"<ul> <li>Monica CRM Official Website & Documentation: https://www.monicahq.com/ and https://www.monicahq.com/docs</li> </ul>"},{"location":"cm/apps/n8n/","title":"n8n: Automate Your Workflows","text":"<p>n8n is a powerful workflow automation platform that allows you to connect different services and systems together without needing complex programming skills. Within Changemaker V5, it enables you to create automated processes that save time and ensure consistency across your operations.</p>"},{"location":"cm/apps/n8n/#key-features","title":"Key Features","text":"<ul> <li>Visual Workflow Builder: Create automation flows using an intuitive drag-and-drop interface.</li> <li>Pre-built Integrations: Connect to hundreds of services including email, social media, databases, and more.</li> <li>Custom Functionality: Create your own nodes for custom integrations when needed.</li> <li>Scheduling: Run workflows on schedules or trigger them based on events.</li> <li>Error Handling: Configure what happens when steps fail, with options to retry or alert.</li> <li>Self-hosted: Keep your automation data and credentials completely under your control.</li> <li>Credential Management: Securely store and reuse authentication details for various services.</li> </ul>"},{"location":"cm/apps/n8n/#documentation","title":"Documentation","text":"<p>For more detailed information about n8n, visit the official documentation.</p>"},{"location":"cm/apps/n8n/#getting-started-with-n8n","title":"Getting Started with n8n","text":""},{"location":"cm/apps/n8n/#accessing-n8n","title":"Accessing n8n","text":"<ol> <li>URL: You can access n8n locally via <code>http://localhost:5678/</code> (or your configured external URL if set up).</li> <li>Authentication: The first time you access n8n, you'll need to set up an account with admin credentials.</li> </ol>"},{"location":"cm/apps/n8n/#basic-usage","title":"Basic Usage","text":"<ol> <li>Creating Your First Workflow:</li> <li>Click the \"+\" button in the top right to create a new workflow.</li> <li>Add a trigger node (e.g., \"Schedule\" for time-based triggers or \"Webhook\" for event-based triggers).</li> <li>Connect additional nodes for the actions you want to perform.</li> <li> <p>Save your workflow and activate it using the toggle at the top of the editor.</p> </li> <li> <p>Example Workflow: Automatic Welcome Emails</p> </li> <li>Start with a \"Webhook\" node that triggers when a new contact is added to your system.</li> <li>Connect to an \"Email\" node configured to send your welcome message.</li> <li> <p>Optionally, add a \"Slack\" or \"Rocket.Chat\" node to notify your team about the new contact.</p> </li> <li> <p>Common Use Cases:</p> </li> <li>Content Publishing: Automatically post blog updates to social media channels.</li> <li>Data Synchronization: Keep contacts in sync between different systems.</li> <li>Event Management: Send reminders before events and follow-ups afterward.</li> <li>Monitoring: Get notifications when important metrics change or thresholds are reached.</li> <li>Form Processing: Automatically handle form submissions with confirmation emails and data storage.</li> </ol>"},{"location":"cm/apps/n8n/#integration-with-other-changemaker-services","title":"Integration with Other Changemaker Services","text":"<p>n8n works particularly well with other services in your Changemaker environment:</p> <ul> <li>NocoDB: Connect to your databases to automate record creation, updates, or data processing.</li> <li>Listmonk: Trigger email campaigns based on events or schedules.</li> <li>Gitea: Automate responses to code changes or issue creation.</li> <li>Monica CRM: Update contact records automatically when interactions occur.</li> <li>Rocket.Chat: Send automated notifications to team channels.</li> </ul>"},{"location":"cm/apps/n8n/#advanced-features","title":"Advanced Features","text":"<ul> <li>Error Handling: Configure error workflows and retries for increased reliability.</li> <li>Splitting and Merging: Process multiple items in parallel and then combine results.</li> <li>Expressions: Use JavaScript expressions for dynamic data manipulation.</li> <li>Webhooks: Create endpoints that can receive data from external services.</li> <li>Function Nodes: Write custom JavaScript code for complex data transformations.</li> <li>Cron Jobs: Schedule workflows to run at specific intervals.</li> </ul>"},{"location":"cm/apps/n8n/#further-information","title":"Further Information","text":"<p>For more detailed information on creating complex workflows, available integrations, and best practices, please refer to the official n8n Documentation.</p>"},{"location":"cm/apps/nocodb/","title":"NocoDB: Open Source Airtable Alternative","text":"<p>NocoDB is a powerful open-source alternative to services like Airtable. It allows you to turn various types of SQL databases (like MySQL, PostgreSQL, SQL Server, SQLite) into a smart spreadsheet interface. This makes data management, collaboration, and even building simple applications much more accessible without extensive coding.</p>"},{"location":"cm/apps/nocodb/#key-features","title":"Key Features","text":"<ul> <li>Spreadsheet Interface: View and manage your database tables like a spreadsheet.</li> <li>Multiple View Types: Beyond grids, create Kanban boards, forms, galleries, and calendar views from your data.</li> <li>Connect to Existing Databases: Bring your existing SQL databases into NocoDB or create new ones from scratch.</li> <li>API Access: NocoDB automatically generates REST APIs for your tables, enabling integration with other applications and services.</li> <li>Collaboration: Share bases and tables with team members with granular permission controls.</li> <li>App Store / Integrations: Extend functionality with built-in or third-party apps and integrations.</li> <li>Self-Hosted: Maintain full control over your data and infrastructure.</li> <li>No-Code/Low-Code: Build simple applications and workflows with minimal to no coding.</li> </ul>"},{"location":"cm/apps/nocodb/#documentation","title":"Documentation","text":"<p>For more detailed information about NocoDB, visit the official documentation.</p>"},{"location":"cm/apps/nocodb/#getting-started-with-nocodb","title":"Getting Started with NocoDB","text":""},{"location":"cm/apps/nocodb/#accessing-nocodb","title":"Accessing NocoDB","text":"<ol> <li>URL: Access NocoDB locally via <code>http://localhost:8090/</code> (or your configured external URL).</li> <li>Initial Setup / Login: <ul> <li>The first time you access NocoDB, you might be guided through a setup process to create an initial super admin user.</li> <li>For subsequent access, you'll log in with these credentials.</li> </ul> </li> </ol>"},{"location":"cm/apps/nocodb/#basic-workflow","title":"Basic Workflow","text":"<ol> <li> <p>Understanding the Interface:</p> <ul> <li>Workspace/Projects (or Bases): NocoDB organizes data into projects or bases, similar to Airtable bases. Each project can contain multiple tables.</li> <li>Tables: These are your database tables, displayed in a spreadsheet-like grid by default.</li> <li>Views: For each table, you can create multiple views (Grid, Form, Kanban, Gallery, Calendar) to visualize and interact with the data in different ways.</li> </ul> </li> <li> <p>Creating a New Project/Base:</p> <ul> <li>Look for an option like \"New Project\" or \"Create Base\".</li> <li>You might be asked to connect to an existing database or create a new one (often SQLite by default for ease of use if not connecting to an external DB).</li> </ul> </li> <li> <p>Creating a Table:</p> <ul> <li>Within a project, create new tables.</li> <li>Define columns (fields) for your table, specifying the data type for each (e.g., Text, Number, Date, Email, Select, Attachment, Formula, Link to Another Record).</li> </ul> </li> <li> <p>Adding and Editing Data:</p> <ul> <li>Click into cells in the grid view to add or edit data, just like a spreadsheet.</li> <li>Use forms (if you create a form view) for more structured data entry.</li> </ul> </li> <li> <p>Creating Different Views:</p> <ul> <li>For any table, click on the view switcher (often near the table name) and select \"Create View\".</li> <li>Choose the view type (e.g., Kanban).</li> <li>Configure the view (e.g., for Kanban, select the single-select field that will define the columns/stacks).</li> </ul> </li> <li> <p>Linking Tables (Relational Data):</p> <ul> <li>Use the \"Link to Another Record\" field type to create relationships between tables (e.g., link a <code>Tasks</code> table to a <code>Projects</code> table).</li> <li>This allows you to look up and display related data across tables.</li> </ul> </li> <li> <p>Using Formulas:</p> <ul> <li>Create formula fields to compute values based on other fields in the same table, similar to spreadsheet formulas.</li> </ul> </li> <li> <p>Exploring APIs:</p> <ul> <li>NocoDB automatically provides REST API endpoints for your tables. Look for an \"API Docs\" or similar section to explore these APIs, which can be used to integrate NocoDB data with other applications (e.g., your website, automation scripts).</li> </ul> </li> </ol>"},{"location":"cm/apps/nocodb/#use-cases-within-changemaker","title":"Use Cases within Changemaker","text":"<ul> <li>Content Management: Manage structured content for your website or blog (e.g., a list of events, resources, testimonials).</li> <li>Contact Management/CRM: Keep track of contacts, leads, or supporters.</li> <li>Project Management: Track tasks, projects, and deadlines.</li> <li>Inventory Management: If applicable to your campaign or project.</li> <li>Data Collection: Use NocoDB forms to collect information.</li> </ul>"},{"location":"cm/apps/nocodb/#further-information","title":"Further Information","text":"<p>NocoDB is a feature-rich platform. For detailed guides, tutorials, API documentation, and advanced usage, refer to the official NocoDB Documentation.</p>"},{"location":"cm/apps/ollama/","title":"Ollama: Local AI Model Server","text":"<p>Ollama is a tool that allows you to run large language models (LLMs) locally on your own server or computer. It simplifies the process of downloading, setting up, and interacting with powerful open-source AI models, providing AI capabilities without relying on third-party cloud services and ensuring data privacy.</p>"},{"location":"cm/apps/ollama/#key-features","title":"Key Features","text":"<ul> <li>Run LLMs Locally: Host and run various open-source large language models (like Llama, Gemma, Mistral, etc.) on your own hardware.</li> <li>Simple CLI: Easy-to-use command-line interface for downloading models (<code>ollama pull</code>), running them (<code>ollama run</code>), and managing them (<code>ollama list</code>).</li> <li>API Server: Ollama serves models through a local API, allowing other applications (like OpenWebUI) to interact with them.</li> <li>Data Privacy: Since models run locally, your data doesn't leave your server when you interact with them.</li> <li>Growing Model Library: Access a growing library of popular open-source models.</li> <li>Customization: Create custom model files (Modelfiles) to tailor model behavior.</li> </ul>"},{"location":"cm/apps/ollama/#documentation","title":"Documentation","text":"<p>For more detailed information about Ollama, visit the official repository.</p>"},{"location":"cm/apps/ollama/#getting-started-with-ollama-within-changemaker","title":"Getting Started with Ollama (within Changemaker)","text":"<p>Ollama itself is primarily a command-line tool and an API server. You typically interact with it via a terminal or through a UI like OpenWebUI.</p>"},{"location":"cm/apps/ollama/#managing-ollama-via-terminal-eg-in-code-server","title":"Managing Ollama via Terminal (e.g., in Code Server)","text":"<ol> <li> <p>Access a Terminal: </p> <ul> <li>Open the integrated terminal in Code Server.</li> <li>Alternatively, SSH directly into your Changemaker server.</li> </ul> </li> <li> <p>Common Ollama Commands:</p> <ul> <li> <p>List Downloaded Models: See which models you currently have. <pre><code>docker exec -it ollama-changemaker ollama list\n</code></pre> (The <code>docker exec -it ollama-changemaker</code> part is necessary if Ollama is running in a Docker container named <code>ollama-changemaker</code>, which is common. If Ollama is installed directly on the host, you'd just run <code>ollama list</code>.)</p> </li> <li> <p>Pull (Download) a New Model: Download a model from the Ollama library. Replace <code>gemma:2b</code> with the desired model name and tag. <pre><code>docker exec -it ollama-changemaker ollama pull gemma:2b \n</code></pre> (Example: <code>ollama pull llama3</code>, <code>ollama pull mistral</code>)</p> </li> <li> <p>Run a Model (Interactive Chat in Terminal): Chat directly with a model in the terminal. <pre><code>docker exec -it ollama-changemaker ollama run gemma:2b\n</code></pre> (Press <code>Ctrl+D</code> or type <code>/bye</code> to exit the chat.)</p> </li> <li> <p>Remove a Model: Delete a downloaded model to free up space. <pre><code>docker exec -it ollama-changemaker ollama rm gemma:2b\n</code></pre></p> </li> </ul> </li> </ol>"},{"location":"cm/apps/ollama/#interacting-with-ollama-via-openwebui","title":"Interacting with Ollama via OpenWebUI","text":"<p>For a more user-friendly chat experience, use OpenWebUI, which connects to your Ollama service. See the <code>apps/openwebui.md</code> documentation for details.</p>"},{"location":"cm/apps/ollama/#use-cases-within-changemaker","title":"Use Cases within Changemaker","text":"<ul> <li>Powering OpenWebUI: Ollama is the backend engine that OpenWebUI uses to provide its chat interface.</li> <li>AI-Assisted Content Creation: Generate text, summaries, ideas, or code snippets with privacy.</li> <li>Custom AI Applications: Developers can build custom applications that leverage the Ollama API for various AI tasks.</li> <li>Offline AI Capabilities: Use AI models even without an active internet connection (once models are downloaded).</li> </ul>"},{"location":"cm/apps/ollama/#editing-the-site","title":"Editing the Site","text":"<p>Ollama is an AI model server. It is not used for editing this documentation site. Site editing is done via Code Server.</p>"},{"location":"cm/apps/ollama/#further-information","title":"Further Information","text":"<ul> <li>Ollama Official Website: https://ollama.ai/</li> <li>Ollama Documentation: https://ollama.ai/docs</li> <li>Ollama GitHub: https://github.com/ollama/ollama</li> <li>The existing <code>ollama.md</code> at the root of the <code>docs</code> folder in your project might also contain specific setup notes for your Changemaker instance.</li> </ul>"},{"location":"cm/apps/openwebui/","title":"OpenWebUI: Chat Interface for Ollama","text":"<p>OpenWebUI provides a user-friendly, web-based chat interface for interacting with local AI models run by Ollama. It makes leveraging the power of large language models (LLMs) accessible to users who may not be comfortable with command-line interfaces, offering a familiar chat experience.</p>"},{"location":"cm/apps/openwebui/#key-features","title":"Key Features","text":"<ul> <li>Chat Interface: Intuitive, ChatGPT-like interface for interacting with Ollama models.</li> <li>Model Selection: Easily switch between different AI models you have downloaded via Ollama.</li> <li>Conversation History: Keeps track of your chats.</li> <li>Responsive Design: Usable on various devices.</li> <li>Self-Hosted: Runs locally as part of your Changemaker suite, ensuring data privacy.</li> <li>Markdown Support: Renders model responses that include Markdown for better formatting.</li> </ul>"},{"location":"cm/apps/openwebui/#documentation","title":"Documentation","text":"<p>For more detailed information about OpenWebUI, visit the official documentation.</p>"},{"location":"cm/apps/openwebui/#getting-started-with-openwebui","title":"Getting Started with OpenWebUI","text":""},{"location":"cm/apps/openwebui/#prerequisites","title":"Prerequisites","text":"<ul> <li>Ollama Must Be Running: OpenWebUI is an interface for Ollama. Ensure your Ollama service is running and you have downloaded some models (e.g., <code>ollama pull llama3</code>).</li> </ul>"},{"location":"cm/apps/openwebui/#accessing-openwebui","title":"Accessing OpenWebUI","text":"<ol> <li>URL: Access OpenWebUI locally via <code>http://localhost:3005/</code> (or your configured external URL).</li> <li>Account Creation (First Time): The first time you access OpenWebUI, you'll likely need to sign up or create an admin account for the interface itself.</li> </ol>"},{"location":"cm/apps/openwebui/#basic-usage","title":"Basic Usage","text":"<ol> <li>Log In: Sign in with your OpenWebUI credentials.</li> <li>Select a Model: <ul> <li>There should be an option (often a dropdown menu) to select which Ollama model you want to chat with. This list will populate based on the models you have pulled using the Ollama service.</li> <li>If you don't see any models, you may need to go to a terminal (e.g., in Code Server or directly on your server) and run <code>ollama list</code> to see available models or <code>ollama pull <modelname></code> (e.g., <code>ollama pull gemma:2b</code>) to download a new one.</li> </ul> </li> <li>Start Chatting: <ul> <li>Type your prompt or question into the message box at the bottom of the screen and press Enter or click the send button.</li> <li>The selected Ollama model will process your input and generate a response, which will appear in the chat window.</li> </ul> </li> <li>Manage Conversations: You can typically start new chats or revisit previous conversations from a sidebar.</li> </ol>"},{"location":"cm/apps/openwebui/#use-cases-within-changemaker","title":"Use Cases within Changemaker","text":"<ul> <li>Content Generation: Draft blog posts, newsletter content, social media updates, or documentation.</li> <li>Brainstorming: Generate ideas for campaigns, projects, or problem-solving.</li> <li>Research Assistance: Ask questions and get summaries on various topics (ensure you verify information from LLMs).</li> <li>Drafting Responses: Help formulate replies to emails or messages.</li> <li>Learning & Exploration: Experiment with different AI models and their capabilities.</li> </ul>"},{"location":"cm/apps/openwebui/#editing-the-site","title":"Editing the Site","text":"<p>OpenWebUI is a tool for interacting with AI models. It is not used for editing this documentation site. Site editing is done via Code Server.</p>"},{"location":"cm/apps/openwebui/#further-information","title":"Further Information","text":"<ul> <li>OpenWebUI Official Documentation/GitHub: https://docs.openwebui.com/ or their GitHub repository (often linked from the UI itself).</li> <li>Ollama Documentation: https://ollama.ai/docs (for information on managing Ollama and downloading models).</li> </ul>"},{"location":"cm/apps/portainer/","title":"Portainer: Docker Container Management UI","text":"<p>Portainer is a lightweight management UI that allows you to easily manage your Docker environments (or other container orchestrators like Kubernetes). Changemaker V5 runs its applications as Docker containers, and Portainer provides a visual interface to see, manage, and troubleshoot these containers.</p>"},{"location":"cm/apps/portainer/#key-features","title":"Key Features","text":"<ul> <li>Container Management: View, start, stop, restart, remove, and inspect Docker containers.</li> <li>Image Management: Pull, remove, and inspect Docker images.</li> <li>Volume Management: Manage Docker volumes used for persistent storage.</li> <li>Network Management: Manage Docker networks.</li> <li>Stacks/Compose: Deploy and manage multi-container applications defined in Docker Compose files (stacks).</li> <li>Logs & Stats: View container logs and resource usage statistics (CPU, memory).</li> <li>User-Friendly Interface: Simplifies Docker management for users who may not be comfortable with the command line.</li> <li>Multi-Environment Support: Can manage multiple Docker hosts or Kubernetes clusters (though in Changemaker, it's typically managing the local Docker environment).</li> </ul>"},{"location":"cm/apps/portainer/#documentation","title":"Documentation","text":"<p>For more detailed information about Portainer, visit the official documentation.</p>"},{"location":"cm/apps/portainer/#getting-started-with-portainer","title":"Getting Started with Portainer","text":""},{"location":"cm/apps/portainer/#accessing-portainer","title":"Accessing Portainer","text":"<ol> <li>URL: Access Portainer locally via <code>http://localhost:9002/</code> (or your configured external URL).</li> <li>Initial Setup/Login: <ul> <li>The first time you access Portainer, you will need to set up an administrator account (username and password).</li> <li>You will then connect Portainer to the Docker environment it should manage. For Changemaker, this is usually the local Docker socket.</li> </ul> </li> </ol>"},{"location":"cm/apps/portainer/#basic-usage","title":"Basic Usage","text":"<ol> <li> <p>Dashboard: The main dashboard provides an overview of your Docker environment (number of containers, volumes, images, etc.).</p> </li> <li> <p>Containers List: </p> <ul> <li>Navigate to \"Containers\" from the sidebar.</li> <li>You'll see a list of all running and stopped containers (e.g., <code>code-server</code>, <code>flatnotes</code>, <code>listmonk</code>, etc., that make up Changemaker).</li> <li>Actions: For each container, you can perform actions like:<ul> <li>Logs: View real-time logs.</li> <li>Inspect: See detailed configuration and state.</li> <li>Stats: View resource usage.</li> <li>Console: Connect to the container's terminal (if supported by the container).</li> <li>Stop/Start/Restart/Remove.</li> </ul> </li> </ul> </li> <li> <p>Images List: </p> <ul> <li>Navigate to \"Images\" to see all Docker images pulled to your server.</li> <li>You can pull new images from Docker Hub or other registries, or remove unused images.</li> </ul> </li> <li> <p>Volumes List: </p> <ul> <li>Navigate to \"Volumes\" to see Docker volumes, which are used by Changemaker apps to store persistent data (e.g., your notes in Flatnotes, your Listmonk database).</li> </ul> </li> <li> <p>Stacks (Docker Compose):</p> <ul> <li>Navigate to \"Stacks.\"</li> <li>Changemaker itself is likely deployed as a stack using its <code>docker-compose.yml</code> file. You might see it listed here.</li> <li>You can add new stacks (deploy other Docker Compose applications) or manage existing ones.</li> </ul> </li> </ol>"},{"location":"cm/apps/portainer/#use-cases-within-changemaker","title":"Use Cases within Changemaker","text":"<ul> <li>Monitoring Application Status: Quickly see if all Changemaker application containers are running.</li> <li>Viewing Logs: Troubleshoot issues by checking the logs of specific application containers.</li> <li>Restarting Applications: If an application becomes unresponsive, you can try restarting its container via Portainer.</li> <li>Resource Management: Check CPU and memory usage of containers if you suspect performance issues.</li> <li>Advanced Management: For users comfortable with Docker, Portainer provides an easier interface for tasks that would otherwise require command-line operations.</li> </ul>"},{"location":"cm/apps/portainer/#editing-the-site","title":"Editing the Site","text":"<p>Portainer is for managing the Docker containers that run the applications. It is not used for editing this documentation site. Site editing is done via Code Server.</p>"},{"location":"cm/apps/portainer/#further-information","title":"Further Information","text":"<ul> <li>Portainer Official Website: https://www.portainer.io/</li> <li>Portainer Documentation: https://docs.portainer.io/</li> </ul>"},{"location":"cm/apps/rocketchat/","title":"Rocket.Chat: Team & Community Collaboration Platform","text":"<p>Rocket.Chat is a powerful, open-source team collaboration platform. It offers a wide range of communication tools, including real-time chat, channels, direct messaging, video conferencing, and file sharing. It's designed for teams and communities to communicate and collaborate effectively in a self-hosted environment.</p>"},{"location":"cm/apps/rocketchat/#key-features","title":"Key Features","text":"<ul> <li>Real-time Chat: Public channels, private groups, and direct messages.</li> <li>File Sharing: Share documents, images, and other files.</li> <li>Voice and Video Conferencing: Integrated audio and video calls.</li> <li>Guest Access: Allow external users to participate in specific channels.</li> <li>Integrations: Connect with other tools and services through bots and APIs.</li> <li>Customization: Themes, permissions, and extensive administrative controls.</li> <li>Self-Hosted: Full data sovereignty and control over user privacy.</li> <li>Mobile and Desktop Apps: Access Rocket.Chat from various devices.</li> </ul>"},{"location":"cm/apps/rocketchat/#documentation","title":"Documentation","text":"<p>For more detailed information about Rocket.Chat, visit the official documentation.</p>"},{"location":"cm/apps/rocketchat/#getting-started-with-rocketchat","title":"Getting Started with Rocket.Chat","text":""},{"location":"cm/apps/rocketchat/#accessing-rocketchat","title":"Accessing Rocket.Chat","text":"<ol> <li>URL: Access Rocket.Chat locally via <code>http://localhost:3004/</code> (or your configured external URL).</li> <li>Account Registration/Login: <ul> <li>The first time you access it, you or an administrator will need to set up an admin account and configure the server.</li> <li>Users will then need to register for an account or be invited by an admin.</li> </ul> </li> </ol>"},{"location":"cm/apps/rocketchat/#basic-usage","title":"Basic Usage","text":"<ol> <li> <p>Interface Overview:</p> <ul> <li>Channels/Rooms: The main area for discussions. Channels can be public or private.</li> <li>Direct Messages: For one-on-one conversations.</li> <li>User List: See who is online and available.</li> <li>Search: Find messages, users, or channels.</li> </ul> </li> <li> <p>Joining Channels:</p> <ul> <li>Browse the directory of public channels or be invited to private ones.</li> </ul> </li> <li> <p>Sending Messages:</p> <ul> <li>Type your message in the input box at the bottom of a channel or direct message.</li> <li>Use Markdown for formatting, emojis, and @mentions to notify users.</li> </ul> </li> <li> <p>Starting a Video/Audio Call: Look for the call icons within a channel or direct message to start a voice or video call.</p> </li> <li> <p>Managing Your Profile: Update your profile picture, status, and notification preferences.</p> </li> <li> <p>Administration (For Admins):</p> <ul> <li>Access the administration panel to manage users, permissions, channels, integrations, and server settings.</li> </ul> </li> </ol>"},{"location":"cm/apps/rocketchat/#use-cases-within-changemaker","title":"Use Cases within Changemaker","text":"<ul> <li>Internal Team Communication: A central place for your campaign team or organization members to chat, share files, and coordinate efforts.</li> <li>Community Building: Create a private or public chat community for your supporters or users.</li> <li>Project Collaboration: Dedicate channels to specific projects or tasks.</li> <li>Support Channel: Offer a real-time support channel for your users or community members.</li> <li>Alternative to Slack/Discord: A self-hosted option providing similar functionality with more control.</li> </ul>"},{"location":"cm/apps/rocketchat/#editing-the-site","title":"Editing the Site","text":"<p>Rocket.Chat is a communication platform. It is not used for editing this documentation site. Site editing is done via Code Server.</p>"},{"location":"cm/apps/rocketchat/#further-information","title":"Further Information","text":"<ul> <li>Rocket.Chat Official Website: https://www.rocket.chat/</li> <li>Rocket.Chat Documentation: https://docs.rocket.chat/</li> </ul>"},{"location":"cm/guides/","title":"Guides","text":"<p>The following guides to properly configure your site. </p>"},{"location":"cm/guides/authoring-content/","title":"Authoring Content with Markdown and MkDocs Material","text":"<p>This guide provides a brief overview of writing content using Markdown and leveraging the styling capabilities of the MkDocs Material theme for your Changemaker documentation site.</p>"},{"location":"cm/guides/authoring-content/#markdown-basics","title":"Markdown Basics","text":"<p>Markdown is a lightweight markup language with plain-text formatting syntax. It's designed to be easy to read and write.</p>"},{"location":"cm/guides/authoring-content/#headings","title":"Headings","text":"<pre><code># Heading 1\n## Heading 2\n### Heading 3\n</code></pre>"},{"location":"cm/guides/authoring-content/#emphasis","title":"Emphasis","text":"<pre><code>*Italic text* or _Italic text_\n**Bold text** or __Bold text__\n~~Strikethrough text~~\n</code></pre>"},{"location":"cm/guides/authoring-content/#lists","title":"Lists","text":"<p>Ordered List: <pre><code>1. First item\n2. Second item\n3. Third item\n</code></pre></p> <p>Unordered List: <pre><code>- Item A\n- Item B\n - Sub-item B1\n - Sub-item B2\n* Item C\n</code></pre></p>"},{"location":"cm/guides/authoring-content/#links","title":"Links","text":"<pre><code>[Link Text](https://www.example.com)\n[Link with Title](https://www.example.com \"An example link\")\n[Relative Link to another page](../apps/code-server.md)\n</code></pre>"},{"location":"cm/guides/authoring-content/#images","title":"Images","text":"<p><pre><code>\n</code></pre> Place your images in the <code>mkdocs/docs/assets/images/</code> directory (or create it if it doesn't exist) and reference them accordingly.</p>"},{"location":"cm/guides/authoring-content/#code-blocks","title":"Code Blocks","text":"<p>Inline Code: Use backticks: <code>this is inline code</code>.</p> <p>Fenced Code Blocks (Recommended for multi-line code): Specify the language for syntax highlighting.</p> <pre><code>```python\ndef hello_world():\n print(\"Hello, world!\")\n```\n\n```html\n<h1>Hello</h1>\n```\n</code></pre>"},{"location":"cm/guides/authoring-content/#blockquotes","title":"Blockquotes","text":"<pre><code>> This is a blockquote.\n> It can span multiple lines.\n</code></pre>"},{"location":"cm/guides/authoring-content/#horizontal-rule","title":"Horizontal Rule","text":"<pre><code>---\n***\n</code></pre>"},{"location":"cm/guides/authoring-content/#tables","title":"Tables","text":"<pre><code>| Header 1 | Header 2 | Header 3 |\n| :------- | :------: | -------: |\n| Align L | Center | Align R |\n| Cell 1 | Cell 2 | Cell 3 |\n</code></pre>"},{"location":"cm/guides/authoring-content/#mkdocs-material-theme-features","title":"MkDocs Material Theme Features","text":"<p>MkDocs Material provides many enhancements and custom syntax options on top of standard Markdown.</p>"},{"location":"cm/guides/authoring-content/#admonitions-call-outs","title":"Admonitions (Call-outs)","text":"<p>These are great for highlighting information.</p> <pre><code>!!! note\n This is a note.\n\n!!! tip \"Optional Title\"\n Here's a helpful tip!\n\n!!! warning\n Be careful with this action.\n\n!!! danger \"Critical Alert\"\n This is a critical warning.\n\n!!! abstract \"Summary\"\n This is an abstract or summary.\n</code></pre> <p>Supported types include: <code>note</code>, <code>abstract</code>, <code>info</code>, <code>tip</code>, <code>success</code>, <code>question</code>, <code>warning</code>, <code>failure</code>, <code>danger</code>, <code>bug</code>, <code>example</code>, <code>quote</code>.</p>"},{"location":"cm/guides/authoring-content/#code-blocks-with-titles-and-line-numbers","title":"Code Blocks with Titles and Line Numbers","text":"<p>Your <code>mkdocs.yml</code> is configured for <code>pymdownx.highlight</code> which supports this.</p> <pre><code>```python title=\"my_script.py\" linenums=\"1\"\nprint(\"Hello from Python\")\n```\n</code></pre>"},{"location":"cm/guides/authoring-content/#emojis","title":"Emojis","text":"<p>Your <code>mkdocs.yml</code> has <code>pymdownx.emoji</code> enabled.</p> <p><pre><code>:smile: :rocket: :warning:\n</code></pre> See the MkDocs Material Emoji List for available emojis.</p>"},{"location":"cm/guides/authoring-content/#footnotes","title":"Footnotes","text":"<p>Your <code>mkdocs.yml</code> has <code>footnotes</code> enabled.</p> <pre><code>This is some text with a footnote.[^1]\n\n[^1]: This is the footnote definition.\n</code></pre>"},{"location":"cm/guides/authoring-content/#content-tabs","title":"Content Tabs","text":"<p>Group related content under tabs.</p> <pre><code>=== \"Tab 1 Title\"\n Content for tab 1 (can be Markdown)\n\n=== \"Tab 2 Title\"\n Content for tab 2\n\n ```python\n # Code blocks work here too\n print(\"Hello from Tab 2\")\n ```\n</code></pre>"},{"location":"cm/guides/authoring-content/#task-lists","title":"Task Lists","text":"<pre><code>- [x] Completed task\n- [ ] Incomplete task\n- [ ] Another task\n</code></pre>"},{"location":"cm/guides/authoring-content/#styling-with-attributes-attr_list","title":"Styling with Attributes (<code>attr_list</code>)","text":"<p>You can add CSS classes or IDs to elements.</p> <p><pre><code>This is a paragraph with a custom class.\n{: .my-custom-class }\n\n## A Heading with an ID {#custom-heading-id}\n</code></pre> This is useful for applying custom CSS from your <code>extra.css</code> file.</p>"},{"location":"cm/guides/authoring-content/#buttons","title":"Buttons","text":"<p>MkDocs Material has a nice way to create buttons from links:</p> <pre><code>[This is a button link](https://example.com){ .md-button }\n[Primary button](https://example.com){ .md-button .md-button--primary }\n[Another button](another-page.md){ .md-button }\n</code></pre>"},{"location":"cm/guides/authoring-content/#editing-workflow","title":"Editing Workflow","text":"<ol> <li>Use Code Server: Access Code Server from your Changemaker dashboard.</li> <li>Navigate: Open the <code>mkdocs/docs/</code> directory.</li> <li>Create or Edit: Create new <code>.md</code> files or edit existing ones.</li> <li>Save: Save your changes (<code>Ctrl+S</code> or <code>Cmd+S</code>).</li> <li>Preview: <ul> <li>If you have <code>mkdocs serve</code> running (either locally on your machine if developing there, or in a terminal within Code Server pointing to the <code>mkdocs</code> directory), your documentation site (usually at <code>http://localhost:8000</code> or <code>http://127.0.0.1:8000</code>) will auto-reload.</li> <li>Alternatively, you can use VS Code extensions like \"Markdown Preview Enhanced\" within Code Server for a live preview pane.</li> </ul> </li> </ol>"},{"location":"cm/guides/authoring-content/#further-reading","title":"Further Reading","text":"<ul> <li>MkDocs Material Reference: The official documentation for all features.</li> <li>Markdown Guide: For general Markdown syntax.</li> </ul> <p>This guide should give you a solid start. Explore the MkDocs Material documentation for even more advanced features like diagrams, math formulas, and more complex page layouts.</p>"},{"location":"cm/guides/ollama-vscode/","title":"Using Ollama Models in VS Code (Code-Server)","text":"<p>You can integrate Ollama models with your VS Code environment (code-server) in several ways:</p>"},{"location":"cm/guides/ollama-vscode/#option-1-install-a-vs-code-extension","title":"Option 1: Install a VS Code Extension","text":"<p>The easiest approach is to install a VS Code extension that connects to Ollama:</p> <ol> <li>In code-server (your VS Code interface), open the Extensions panel</li> <li>Search for \"Continue\" or \"Ollama\" and install an extension like \"Continue\" or \"Ollama Chat\"</li> <li>Configure the extension to connect to Ollama using the internal Docker network URL: <pre><code>http://ollama-changemaker:11434\n</code></pre></li> </ol>"},{"location":"cm/guides/ollama-vscode/#option-2-use-the-api-directly-from-the-vs-code-terminal","title":"Option 2: Use the API Directly from the VS Code Terminal","text":"<p>Since the Docker CLI isn't available inside the code-server container, we can interact with the Ollama API directly using curl:</p> <pre><code># List available models\ncurl http://ollama-changemaker:11434/api/tags\n\n# Generate text with a model\ncurl -X POST http://ollama-changemaker:11434/api/generate -d '{\n \"model\": \"llama3\",\n \"prompt\": \"Write a function to calculate Fibonacci numbers\"\n}'\n\n# Pull a new model\ncurl -X POST http://ollama-changemaker:11434/api/pull -d '{\n \"name\": \"mistral:7b\"\n}'\n</code></pre>"},{"location":"cm/guides/ollama-vscode/#option-3-write-code-that-uses-the-ollama-api","title":"Option 3: Write Code That Uses the Ollama API","text":"<p>You can write scripts that connect to Ollama's API. For example, in Python:</p> <pre><code>import requests\n\ndef ask_ollama(prompt, model=\"llama3\"):\n response = requests.post(\n \"http://ollama-changemaker:11434/api/generate\",\n json={\"model\": model, \"prompt\": prompt}\n )\n return response.json()[\"response\"]\n\n# Example usage\nresult = ask_ollama(\"What is the capital of France?\")\nprint(result)\n\n# List available models\ndef list_models():\n response = requests.get(\"http://ollama-changemaker:11434/api/tags\")\n models = response.json()[\"models\"]\n return [model[\"name\"] for model in models]\n\n# Pull a new model\ndef pull_model(model_name):\n response = requests.post(\n \"http://ollama-changemaker:11434/api/pull\",\n json={\"name\": model_name}\n )\n # This will take time for large models\n return response.status_code\n</code></pre>"},{"location":"cm/guides/ollama-vscode/#from-your-host-machines-terminal-not-vs-code","title":"From Your Host Machine's Terminal (Not VS Code)","text":"<p>If you want to use Docker commands, you'll need to run them from your host machine's terminal, not from inside VS Code:</p> <pre><code># List available models\ndocker exec -it ollama-changemaker ollama list\n\n# Pull models\ndocker exec -it ollama-changemaker ollama pull llama3\ndocker exec -it ollama-changemaker ollama pull mistral:7b\ndocker exec -it ollama-changemaker ollama pull codellama\n</code></pre> <p>The key is using the Docker network hostname <code>ollama-changemaker</code> with port <code>11434</code> as your connection point, which should be accessible from your code-server container since they're on the same network.</p>"},{"location":"blog/archive/2025/","title":"2025","text":""}]} |