another pack
0
mkdocs/docs/about.md
Normal file
@ -1,61 +0,0 @@
|
||||
# Answer: Q&A Knowledge Base Platform
|
||||
|
||||
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.
|
||||
|
||||
## Key Features
|
||||
|
||||
* **Question & Answer Format**: Familiar Stack Overflow-like interface.
|
||||
* **Voting System**: Users can upvote or downvote questions and answers to highlight the best content.
|
||||
* **Tagging**: Organize questions with tags for easy filtering and discovery.
|
||||
* **Search Functionality**: Powerful search to find existing answers quickly.
|
||||
* **User Reputation**: (Often a feature in Q&A platforms) Users can earn reputation for helpful contributions.
|
||||
* **Markdown Support**: Write questions and answers using Markdown.
|
||||
* **Self-Hosted**: Full control over your data and platform.
|
||||
|
||||
## Documentation
|
||||
|
||||
For more detailed information about Answer, visit the [official documentation](https://answer.apache.org/docs/).
|
||||
|
||||
## Getting Started with Answer
|
||||
|
||||
### Accessing Answer
|
||||
1. **URL**: Access Answer locally via `http://localhost:9080/` (or your configured external URL).
|
||||
2. **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.
|
||||
|
||||
### Basic Usage
|
||||
|
||||
1. **Asking a Question**:
|
||||
* Look for a button like "Ask Question."
|
||||
* Write a clear and concise title for your question.
|
||||
* Provide detailed context and information in the body of the question using Markdown.
|
||||
* Add relevant tags to help categorize your question.
|
||||
|
||||
2. **Answering a Question**:
|
||||
* Browse or search for questions you can help with.
|
||||
* Write your answer in the provided text area, using Markdown for formatting.
|
||||
* Submit your answer.
|
||||
|
||||
3. **Voting and Commenting**:
|
||||
* Upvote helpful questions and answers to increase their visibility.
|
||||
* Downvote incorrect or unhelpful content.
|
||||
* Leave comments to ask for clarification or provide additional information without writing a full answer.
|
||||
|
||||
4. **Searching for Information**: Use the search bar to find if your question has already been asked and answered.
|
||||
|
||||
5. **Managing Content (Admins/Moderators)**:
|
||||
* Admins can typically manage users, tags, and content (e.g., edit or delete inappropriate posts).
|
||||
|
||||
## Use Cases within Changemaker
|
||||
|
||||
* **Internal Team Support**: Create a knowledge base for your team to ask and answer questions about processes, tools, or projects.
|
||||
* **Public FAQs**: Set up a public-facing Q&A site for your campaign or organization where supporters can find answers to common questions.
|
||||
* **Community Forum**: Foster a community where users can help each other and share knowledge related to your cause or Changemaker itself.
|
||||
* **Documentation Supplement**: Use it alongside your main MkDocs site to handle dynamic questions that arise from users.
|
||||
|
||||
## Editing the Site
|
||||
|
||||
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**.
|
||||
|
||||
## Further Information
|
||||
|
||||
* **Answer Official Website & Documentation**: [https://answer.dev/](https://answer.dev/) and [https://answer.dev/docs](https://answer.dev/docs)
|
@ -1,58 +0,0 @@
|
||||
# Code Server: VS Code in Your Browser
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
## Key Features
|
||||
|
||||
* **Full VS Code Experience**: Access almost all features of desktop VS Code, including the editor, terminal, debugger (for supported languages), extensions, themes, and settings.
|
||||
* **Remote Access**: Code from anywhere, on any device (laptops, tablets, etc.).
|
||||
* **Workspace Management**: Open and manage your project folders just like in desktop VS Code.
|
||||
* **Extension Marketplace**: Install and use your favorite VS Code extensions.
|
||||
* **Integrated Terminal**: Access a terminal directly within the browser interface.
|
||||
* **Git Integration**: Manage your version control seamlessly.
|
||||
|
||||
## Documentation
|
||||
|
||||
For more detailed information about Code Server, visit the [official repository](https://github.com/coder/code-server).
|
||||
|
||||
## Getting Started with Code Server
|
||||
|
||||
### Accessing Code Server
|
||||
|
||||
1. **URL**: You can access Code Server locally via `http://localhost:8888/` (or your configured external URL if set up).
|
||||
2. **Login**: You will be prompted for a password. This password can be found in the configuration file located at `configs/code-server/.config/code-server/config.yaml` within your main Changemaker project directory (e.g., `/home/bunker-admin/Changemaker/configs/code-server/.config/code-server/config.yaml`). You might need to access this file directly on your server or through another method for the initial password retrieval.
|
||||
|
||||
### Basic Usage: Editing Your Documentation Site
|
||||
|
||||
A common use case within Changemaker is editing your MkDocs documentation site.
|
||||
|
||||
1. **Open Your Workspace**:
|
||||
* Once logged into Code Server, use the "File" menu or the Explorer sidebar to "Open Folder...".
|
||||
* Navigate to and select the root directory of your Changemaker project (e.g., `/home/bunker-admin/Changemaker/` or the path where your Changemaker files are located if different, typically where the `docker-compose.yml` for Changemaker is).
|
||||
|
||||
2. **Navigate to Documentation Files**:
|
||||
* In the Explorer sidebar, expand the `mkdocs` folder, then the `docs` folder.
|
||||
* Here you'll find all your Markdown (`.md`) files (like `index.md`, `readme.md`, files within `apps/`, etc.), your site configuration (`mkdocs.yml`), and custom assets (like `stylesheets/extra.css` or files in `overrides/`).
|
||||
|
||||
3. **Edit a File**:
|
||||
* Click on a Markdown file (e.g., `index.md` or any page you want to change like `apps/code-server.md` itself!).
|
||||
* 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).
|
||||
|
||||
4. **Save Changes**:
|
||||
* Press `Ctrl+S` (or `Cmd+S` on Mac) to save your changes.
|
||||
* If your MkDocs development server is running with live reload (e.g., via `mkdocs serve` 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.
|
||||
|
||||
### Using the Integrated Terminal
|
||||
|
||||
The integrated terminal is extremely useful for various tasks without leaving Code Server:
|
||||
* Running Git commands (`git pull`, `git add .`, `git commit -m "docs: update content"`, `git push`).
|
||||
* Managing your MkDocs site (`mkdocs serve` to start a live-preview server, `mkdocs build` to generate static files).
|
||||
* Any other shell commands needed for your project.
|
||||
|
||||
To open the terminal: Go to "Terminal" > "New Terminal" in the Code Server menu, or use the shortcut (often `Ctrl+\` or `Ctrl+~`).
|
||||
|
||||
## Further Information
|
||||
|
||||
For more detailed information on Code Server's features, advanced configurations, and troubleshooting, please refer to the [official Code Server Documentation](https://coder.com/docs/code-server).
|
@ -1,62 +0,0 @@
|
||||
# Excalidraw: Collaborative Virtual Whiteboard
|
||||
|
||||
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.
|
||||
|
||||
## Key Features
|
||||
|
||||
* **Hand-drawn Feel**: Creates diagrams that look informal and approachable.
|
||||
* **Real-time Collaboration**: Multiple users can work on the same drawing simultaneously.
|
||||
* **Simple Interface**: Easy to learn and use, with essential drawing tools.
|
||||
* **Export Options**: Save your drawings as PNG, SVG, or `.excalidraw` files (for later editing).
|
||||
* **Library Support**: Create and use libraries of reusable components.
|
||||
* **Self-Hosted**: As part of Changemaker, your Excalidraw instance is self-hosted, keeping your data private.
|
||||
|
||||
## Documentation
|
||||
|
||||
For more detailed information about Excalidraw, visit the [official repository](https://github.com/excalidraw/excalidraw).
|
||||
|
||||
## Getting Started with Excalidraw
|
||||
|
||||
### Accessing Excalidraw
|
||||
1. **URL**: Access Excalidraw locally via `http://localhost:3333/` (or your configured external URL).
|
||||
2. **No Login Required (Typically)**: Excalidraw itself usually doesn't require a login to start drawing or collaborating if someone shares a link with you.
|
||||
|
||||
### Basic Usage
|
||||
|
||||
1. **Start Drawing**:
|
||||
* The interface presents a canvas and a toolbar with drawing tools (select, rectangle, diamond, ellipse, arrow, line, free-draw, text).
|
||||
* Select a tool and click/drag on the canvas to create shapes or text.
|
||||
|
||||
2. **Styling Elements**:
|
||||
* Select an element on the canvas.
|
||||
* Use the context menu that appears to change properties like color, fill style, stroke width, font size, alignment, etc.
|
||||
|
||||
3. **Connecting Shapes**: Use arrows or lines to connect shapes to create flowcharts or diagrams.
|
||||
|
||||
4. **Collaboration (If needed)**:
|
||||
* Click on the "Live collaboration" button (often a users icon).
|
||||
* Start a session. You'll get a unique link to share with others.
|
||||
* Anyone with the link can join the session and draw in real-time.
|
||||
|
||||
5. **Saving Your Work**:
|
||||
* **Export**: Click the menu icon (usually top-left) and choose "Export image". You can select format (PNG, SVG), background options, etc.
|
||||
* **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 `.excalidraw` JSON file.
|
||||
|
||||
6. **Loading a Drawing**:
|
||||
* Click the menu icon and choose "Open" to load a previously saved `.excalidraw` file.
|
||||
|
||||
## Use Cases within Changemaker
|
||||
|
||||
* **Brainstorming ideas** for campaigns or projects.
|
||||
* **Creating sitemaps or user flow diagrams** for your website.
|
||||
* **Designing simple graphics or illustrations** for your documentation or blog posts.
|
||||
* **Collaboratively planning workflows** with team members.
|
||||
|
||||
## Editing the Site
|
||||
|
||||
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).
|
||||
|
||||
## Further Information
|
||||
|
||||
* **Excalidraw Official Site**: [Excalidraw.com](https://excalidraw.com/) (for general info and the public version)
|
||||
* **Excalidraw GitHub Repository**: [Excalidraw on GitHub](https://github.com/excalidraw/excalidraw) (for documentation, source code, and community discussions).
|
@ -1,61 +0,0 @@
|
||||
# Ferdium: All-in-One Messaging Application
|
||||
|
||||
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.
|
||||
|
||||
**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.
|
||||
|
||||
Assuming it's accessible via a web URL in your Changemaker instance:
|
||||
|
||||
## Key Features (General Ferdium Features)
|
||||
|
||||
* **Service Integration**: Supports a vast number of services (Slack, WhatsApp, Telegram, Discord, Gmail, Messenger, Twitter, and many more).
|
||||
* **Unified Interface**: Manage all your communication from a single window.
|
||||
* **Workspaces**: Organize services into different workspaces (e.g., personal, work).
|
||||
* **Customization**: Themes, notifications, and service-specific settings.
|
||||
* **Cross-Platform**: Available for Windows, macOS, and Linux (as a desktop app).
|
||||
* **Open Source**: Community-driven development.
|
||||
|
||||
## Documentation
|
||||
|
||||
For more detailed information about Ferdium, visit the [official repository](https://github.com/ferdium/ferdium-app).
|
||||
|
||||
## Getting Started with Ferdium (Web Access within Changemaker)
|
||||
|
||||
### Accessing Ferdium (If Web-Accessible)
|
||||
1. **URL**: Access Ferdium locally via `http://localhost:3002/` (or your configured external URL). This URL implies it's running as a web-accessible service in your Docker setup.
|
||||
2. **Setup/Login**:
|
||||
* You might be presented with a desktop-like interface within your browser.
|
||||
* The first step would be to add services (e.g., connect your Slack, WhatsApp accounts).
|
||||
|
||||
### Basic Usage (General Ferdium Workflow)
|
||||
|
||||
1. **Add Services**:
|
||||
* Look for an option to "Add a new service" or a similar button.
|
||||
* Browse the list of available services and select the ones you use.
|
||||
* You will need to log in to each service individually within Ferdium (e.g., enter your Slack credentials, scan a WhatsApp QR code).
|
||||
|
||||
2. **Organize Services**:
|
||||
* Services will typically appear in a sidebar.
|
||||
* You can reorder them or group them into workspaces if the feature is prominent in the web version.
|
||||
|
||||
3. **Using Services**:
|
||||
* Click on a service in the sidebar to open its interface within Ferdium.
|
||||
* Interact with it as you normally would (send messages, check notifications).
|
||||
|
||||
4. **Manage Notifications**: Configure how you want to receive notifications for each service to avoid being overwhelmed.
|
||||
|
||||
## Use Cases within Changemaker
|
||||
|
||||
* **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.
|
||||
* **Improved Focus**: Reduces distractions by having all communication in one place.
|
||||
|
||||
## Editing the Site
|
||||
|
||||
Ferdium is a messaging application. It is not used for editing this documentation site. Site editing is done via **Code Server**.
|
||||
|
||||
## Further Information
|
||||
|
||||
* **Ferdium Official Website**: [https://ferdium.org/](https://ferdium.org/)
|
||||
* **Ferdium GitHub**: [https://github.com/ferdium/ferdium-app](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).
|
||||
|
||||
**Important Consideration for Changemaker**: If Ferdium is indeed running as a web-accessible service at `http://localhost:3002/`, 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.
|
@ -1,73 +0,0 @@
|
||||
# Flatnotes: Simple Markdown Note-Taking
|
||||
|
||||
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.
|
||||
|
||||
## Key Features
|
||||
|
||||
* **Markdown First**: Write notes using the familiar and versatile Markdown syntax.
|
||||
* **Live Preview**: (Often a feature) See how your Markdown will render as you type.
|
||||
* **Tagging/Organization**: Organize notes with tags or a folder-like structure.
|
||||
* **Search**: Quickly find the information you need within your notes.
|
||||
* **Automatic Saving**: Reduces the risk of losing work.
|
||||
* **Simple Interface**: Distraction-free writing environment.
|
||||
* **Self-Hosted**: Your notes remain private on your server.
|
||||
* **Potential Blog Integration**: Notes can be easily copied or potentially directly published to your MkDocs site or other blog platforms that use Markdown.
|
||||
|
||||
## Documentation
|
||||
|
||||
For more detailed information about Flatnotes, visit the [official repository](https://github.com/dullage/flatnotes).
|
||||
|
||||
## Getting Started with Flatnotes
|
||||
|
||||
### Accessing Flatnotes
|
||||
1. **URL**: Access Flatnotes locally via `http://localhost:8089/` (or your configured external URL).
|
||||
2. **Login**: Flatnotes will have its own authentication. You should have set up credentials during the Changemaker installation or the first time you accessed Flatnotes.
|
||||
|
||||
### Basic Usage
|
||||
|
||||
1. **Creating a New Note**:
|
||||
* Look for a "New Note" button or similar interface element.
|
||||
* Give your note a title.
|
||||
* Start typing your content in Markdown in the main editor pane.
|
||||
|
||||
2. **Writing in Markdown**:
|
||||
* Use standard Markdown syntax for headings, lists, bold/italic text, links, images, code blocks, etc.
|
||||
* Example:
|
||||
```markdown
|
||||
# My Awesome Idea
|
||||
|
||||
This is a *brilliant* idea that I need to remember.
|
||||
|
||||
## Steps
|
||||
1. Draft initial thoughts.
|
||||
2. Research more.
|
||||
3. Write a blog post.
|
||||
|
||||
[Link to relevant site](https://example.com)
|
||||
```
|
||||
|
||||
3. **Saving Notes**:
|
||||
* Flatnotes typically saves your notes automatically as you type or when you switch to another note.
|
||||
|
||||
4. **Organizing Notes**:
|
||||
* 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.
|
||||
|
||||
5. **Searching Notes**:
|
||||
* Use the search bar to find notes based on keywords in their title or content.
|
||||
|
||||
### Using Flatnotes for Blog/Documentation Content
|
||||
|
||||
Flatnotes is excellent for drafting content that will eventually become part of your MkDocs site:
|
||||
|
||||
1. **Draft Your Article/Page**: Write the full content in Flatnotes, focusing on the text and structure.
|
||||
2. **Copy Markdown**: Once you're satisfied, select all the text in your note and copy it.
|
||||
3. **Create/Edit MkDocs File**:
|
||||
* Go to Code Server.
|
||||
* Navigate to your `mkdocs/docs/` directory (or a subdirectory like `blog/posts/`).
|
||||
* Create a new `.md` file or open an existing one.
|
||||
* Paste the Markdown content you copied from Flatnotes.
|
||||
4. **Save and Preview**: Save the file in Code Server. If `mkdocs serve` is running, your site will update, and you can preview the new content.
|
||||
|
||||
## Further Information
|
||||
|
||||
For more specific details on Flatnotes features, customization, or troubleshooting, refer to the [official Flatnotes Documentation](https://github.com/Dullage/Flatnotes) (as it's a GitHub-hosted project, the README and repository wiki are the primary sources of documentation).
|
@ -1,72 +0,0 @@
|
||||
# Gitea: Self-Hosted Git Service
|
||||
|
||||
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.
|
||||
|
||||
## Key Features
|
||||
|
||||
* **Repository Management**: Create, manage, and browse Git repositories.
|
||||
* **Version Control**: Track changes to code, documentation, and other files.
|
||||
* **Collaboration**: Supports pull requests, issues, and wikis for team collaboration.
|
||||
* **User Management**: Manage users and organizations with permission controls.
|
||||
* **Lightweight**: Designed to be efficient and run on modest hardware.
|
||||
* **Self-Hosted**: Full control over your data and infrastructure.
|
||||
* **Web Interface**: User-friendly interface for common Git operations.
|
||||
|
||||
## Documentation
|
||||
|
||||
For more detailed information about Gitea, visit the [official documentation](https://docs.gitea.com/).
|
||||
|
||||
## Getting Started with Gitea
|
||||
|
||||
### Accessing Gitea
|
||||
1. **URL**: Access Gitea locally via `http://localhost:3030/` (or your configured external URL).
|
||||
2. **Login/Registration**:
|
||||
* The first time you access Gitea, you might need to go through an initial setup process or register an administrator account.
|
||||
* For subsequent access, log in with your Gitea credentials.
|
||||
|
||||
### Basic Usage
|
||||
|
||||
1. **Create a Repository**:
|
||||
* Once logged in, look for a "New Repository" button (often a "+" icon in the header).
|
||||
* Give your repository a name, description, and choose visibility (public or private).
|
||||
* You can initialize it with a README, .gitignore, and license if desired.
|
||||
|
||||
2. **Cloning a Repository**:
|
||||
* On the repository page, find the clone URL (HTTPS or SSH).
|
||||
* Use this URL with the `git clone` command in your local terminal or within Code Server's terminal:
|
||||
```bash
|
||||
git clone http://localhost:3030/YourUsername/YourRepository.git
|
||||
```
|
||||
|
||||
3. **Making Changes and Pushing**:
|
||||
* Make changes to files in your cloned repository locally.
|
||||
* Use standard Git commands to commit and push your changes:
|
||||
```bash
|
||||
git add .
|
||||
git commit -m "Your commit message"
|
||||
git push origin main # Or your default branch name
|
||||
```
|
||||
|
||||
4. **Using the Web Interface**:
|
||||
* **Browse Files**: View files and commit history directly in Gitea.
|
||||
* **Issues**: Track bugs, feature requests, or tasks.
|
||||
* **Pull Requests**: If collaborating, use pull requests to review and merge changes.
|
||||
* **Settings**: Manage repository settings, collaborators, webhooks, etc.
|
||||
|
||||
## Use Cases within Changemaker
|
||||
|
||||
* **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.
|
||||
* **Code Management**: If you are developing any custom code or scripts for your Changemaker instance or related projects.
|
||||
* **Configuration File Management**: Keep track of important configuration files with version history.
|
||||
* **Collaborative Content Development**: Teams can work on documents, with changes reviewed via pull requests before merging.
|
||||
|
||||
## Editing the Site
|
||||
|
||||
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.
|
||||
|
||||
## Further Information
|
||||
|
||||
* **Gitea Official Documentation**: [https://docs.gitea.io/](https://docs.gitea.io/)
|
@ -1,58 +0,0 @@
|
||||
# Homepage Dashboard: Your Central Hub
|
||||
|
||||
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.
|
||||
|
||||
## Key Features
|
||||
|
||||
* **Unified Access**: Quickly launch any Changemaker application (Code Server, Flatnotes, Listmonk, NocoDB, etc.) from one place.
|
||||
* **Service Status Monitoring**: (If configured) See at a glance if your services are online and operational.
|
||||
* **Customizable Layout**: Organize your dashboard with groups, links, and widgets to fit your workflow.
|
||||
* **Bookmarks**: Keep important links (both internal Changemaker services and external websites) readily accessible.
|
||||
* **Themeable**: Customize the look and feel to your preference.
|
||||
* **Lightweight & Fast**: Loads quickly and efficiently.
|
||||
|
||||
## Getting Started with Homepage
|
||||
|
||||
### Accessing Homepage
|
||||
1. **URL**: You can typically access Homepage locally via `http://localhost:3010/` (or your configured external URL if set up).
|
||||
2. **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.
|
||||
|
||||
### Basic Usage
|
||||
|
||||
1. **Exploring the Dashboard**:
|
||||
* The main view will show configured service groups and individual service links.
|
||||
* 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.
|
||||
|
||||
2. **Understanding the Default Configuration**:
|
||||
* Changemaker V5 comes with a pre-configured `settings.yaml`, `services.yaml`, and potentially `bookmarks.yaml` for Homepage, located in the `configs/homepage/` directory within your Changemaker project structure.
|
||||
* These files define what you see on your dashboard.
|
||||
|
||||
3. **Customizing Your Dashboard (Advanced)**:
|
||||
* To customize Homepage, you'll typically edit its YAML configuration files. This can be done using Code Server.
|
||||
* **Navigate to Configuration**: In Code Server, open your Changemaker project folder, then navigate to `configs/homepage/`.
|
||||
* **Edit `services.yaml`**: To add, remove, or modify the services displayed.
|
||||
*Example: Adding a new service*
|
||||
```yaml
|
||||
# In services.yaml
|
||||
- My Services:
|
||||
- My New App:
|
||||
href: http://localhost:XXXX # URL of your new app
|
||||
description: Description of my new app
|
||||
icon: fas fa-rocket # Font Awesome icon
|
||||
```
|
||||
* **Edit `bookmarks.yaml`**: To add your own bookmarks, organized into groups.
|
||||
*Example: Adding a bookmark group*
|
||||
```yaml
|
||||
# In bookmarks.yaml
|
||||
- Development:
|
||||
- GitHub:
|
||||
href: https://github.com/
|
||||
icon: fab fa-github
|
||||
```
|
||||
* **Edit `settings.yaml`**: For general settings like page title, background, etc.
|
||||
* **Edit `widgets.yaml`**: To add dynamic information like weather, search bars, etc.
|
||||
* **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.
|
||||
|
||||
## Further Information
|
||||
|
||||
For more detailed information on configuring Homepage, available widgets, and advanced customization options, please refer to the [official Homepage Documentation](https://gethomepage.dev/latest/).
|
@ -1,144 +0,0 @@
|
||||
# Changemaker V5 - Apps & Services Documentation
|
||||
|
||||
This document provides an overview of all the applications and services included in the Changemaker V5 productivity suite, along with links to their documentation.
|
||||
|
||||
## Dashboard
|
||||
|
||||
### Homepage
|
||||
- **Description**: Main dashboard for Changemaker V5
|
||||
- **Documentation**: [Homepage Docs](https://gethomepage.dev/)
|
||||
- **Local Access**: http://localhost:3010/
|
||||
- **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.
|
||||
|
||||
## Essential Tools
|
||||
|
||||
### Code Server
|
||||
- **Description**: Visual Studio Code in the browser
|
||||
- **Documentation**: [Code Server Docs](https://coder.com/docs/code-server)
|
||||
- **Local Access**: http://localhost:8888/
|
||||
- **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.
|
||||
|
||||
### Flatnotes
|
||||
- **Description**: Simple note-taking app - connected directly to blog
|
||||
- **Documentation**: [Flatnotes Docs](https://github.com/Dullage/Flatnotes)
|
||||
- **Local Access**: http://localhost:8089/
|
||||
- **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.
|
||||
|
||||
### Listmonk
|
||||
- **Description**: Self-hosted newsletter and mailing list manager
|
||||
- **Documentation**: [Listmonk Docs](https://listmonk.app/docs/)
|
||||
- **Local Access**: http://localhost:9000/
|
||||
- **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—all while keeping your audience data private. Perfect for consistent communication with supporters without the censorship risks or costs of commercial platforms.
|
||||
|
||||
### NocoDB
|
||||
- **Description**: Open Source Airtable Alternative
|
||||
- **Documentation**: [NocoDB Docs](https://docs.nocodb.com/)
|
||||
- **Local Access**: http://localhost:8090/
|
||||
- **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.
|
||||
|
||||
## Content Creation
|
||||
|
||||
### MkDocs - Material Theme
|
||||
- **Description**: Static site generator and documentation builder
|
||||
- **Documentation**: [MkDocs Docs](https://www.mkdocs.org/)
|
||||
- **Local Access**: http://localhost:4000/
|
||||
- **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.
|
||||
|
||||
### Excalidraw
|
||||
- **Description**: Virtual collaborative whiteboard for sketching and drawing
|
||||
- **Documentation**: [Excalidraw Docs](https://github.com/excalidraw/excalidraw)
|
||||
- **Local Access**: http://localhost:3333/
|
||||
- **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.
|
||||
|
||||
### Gitea
|
||||
- **Description**: Lightweight self-hosted Git service
|
||||
- **Documentation**: [Gitea Docs](https://docs.gitea.io/)
|
||||
- **Local Access**: http://localhost:3030/
|
||||
- **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.
|
||||
|
||||
### OpenWebUI
|
||||
- **Description**: Web interface for Ollama
|
||||
- **Documentation**: [OpenWebUI Docs](https://docs.openwebui.com/)
|
||||
- **Local Access**: http://localhost:3005/
|
||||
- **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.
|
||||
|
||||
## Community & Data
|
||||
|
||||
### Monica CRM
|
||||
- **Description**: Personal relationship management system
|
||||
- **Documentation**: [Monica Docs](https://www.monicahq.com/docs)
|
||||
- **Local Access**: http://localhost:8085/
|
||||
- **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.
|
||||
|
||||
### Answer
|
||||
- **Description**: Q&A platform for teams
|
||||
- **Documentation**: [Answer Docs](https://answer.dev/docs)
|
||||
- **Local Access**: http://localhost:9080/
|
||||
- **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.
|
||||
|
||||
### Ferdium
|
||||
- **Description**: All-in-one messaging application
|
||||
- **Documentation**: [Ferdium Docs](https://ferdium.org/help)
|
||||
- **Local Access**: http://localhost:3002/
|
||||
- **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.
|
||||
|
||||
### Rocket.Chat
|
||||
- **Description**: Team collaboration platform with chat, channels, and video conferencing
|
||||
- **Documentation**: [Rocket.Chat Docs](https://docs.rocket.chat/)
|
||||
- **Local Access**: http://localhost:3004/
|
||||
- **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.
|
||||
|
||||
## Development
|
||||
|
||||
### Ollama
|
||||
- **Description**: Local AI model server for running large language models
|
||||
- **Documentation**: [Ollama Docs](https://ollama.ai/docs)
|
||||
- **Local Access**: http://localhost:11435/
|
||||
- **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.
|
||||
|
||||
### Portainer
|
||||
- **Description**: Docker container management UI
|
||||
- **Documentation**: [Portainer Docs](https://docs.portainer.io/)
|
||||
- **Local Access**: https://localhost:9443/
|
||||
- **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.
|
||||
|
||||
### Mini-QR
|
||||
- **Description**: QR Code Generator
|
||||
- **Documentation**: [Mini-QR Docs](https://github.com/xbzbing/mini-qr)
|
||||
- **Local Access**: http://localhost:8081/
|
||||
- **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.
|
||||
|
||||
### ConvertX
|
||||
- **Description**: Self-hosted file conversion tool
|
||||
- **Documentation**: [ConvertX GitHub](https://github.com/c4illin/convertx)
|
||||
- **Local Access**: http://localhost:3100/
|
||||
- **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.
|
||||
|
||||
### n8n
|
||||
- **Description**: Workflow automation platform
|
||||
- **Documentation**: [n8n Docs](https://docs.n8n.io/)
|
||||
- **Local Access**: http://localhost:5678/
|
||||
- **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—all without coding. This saves hours of manual work and ensures consistent follow-through on processes.
|
||||
|
||||
## Remote Access
|
||||
|
||||
When configured with Cloudflare Tunnels, you can access these services remotely at:
|
||||
|
||||
- Homepage: https://homepage.yourdomain.com
|
||||
- Excalidraw: https://excalidraw.yourdomain.com
|
||||
- Listmonk: https://listmonk.yourdomain.com
|
||||
- Monica CRM: https://monica.yourdomain.com
|
||||
- MkDocs: https://yourdomain.com
|
||||
- Flatnotes: https://flatnotes.yourdomain.com
|
||||
- Code Server: https://code-server.yourdomain.com
|
||||
- Ollama: https://ollama.yourdomain.com
|
||||
- OpenWebUI: https://open-web-ui.yourdomain.com
|
||||
- Gitea: https://gitea.yourdomain.com
|
||||
- Portainer: https://portainer.yourdomain.com
|
||||
- Mini QR: https://mini-qr.yourdomain.com
|
||||
- Ferdium: https://ferdium.yourdomain.com
|
||||
- Answer: https://answer.yourdomain.com
|
||||
- NocoDB: https://nocodb.yourdomain.com
|
||||
- n8n: https://n8n.yourdomain.com
|
||||
- ConvertX: https://convertx.yourdomain.com
|
||||
- Rocket.Chat: https://rocket.yourdomain.com
|
@ -1,67 +0,0 @@
|
||||
# Listmonk: Self-Hosted Newsletter & Mailing List Manager
|
||||
|
||||
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.
|
||||
|
||||
## Key Features
|
||||
|
||||
* **Subscriber Management**: Import, organize, and segment your subscriber lists.
|
||||
* **Campaign Creation**: Design and send email campaigns using rich text or plain Markdown.
|
||||
* **Templating**: Create reusable email templates for consistent branding.
|
||||
* **Analytics**: Track campaign performance with metrics like open rates, click-through rates, etc.
|
||||
* **Double Opt-In**: Ensure compliance and list quality with double opt-in mechanisms.
|
||||
* **Self-Hosted**: Full ownership of your data and infrastructure.
|
||||
* **API Access**: Integrate Listmonk with other systems programmatically.
|
||||
* **Multi-lingual**: Supports multiple languages.
|
||||
|
||||
## Documentation
|
||||
|
||||
For more detailed information about Listmonk, visit the [official documentation](https://listmonk.app/docs/).
|
||||
|
||||
## Getting Started with Listmonk
|
||||
|
||||
### Accessing Listmonk
|
||||
1. **URL**: Access Listmonk locally via `http://localhost:9000/` (or your configured external URL).
|
||||
2. **Login**: You will need to log in with the administrator credentials you configured during the Changemaker setup or the first time you accessed Listmonk.
|
||||
|
||||
### Basic Workflow
|
||||
|
||||
1. **Configure Mail Settings (Important First Step)**:
|
||||
* After logging in for the first time, navigate to **Settings > SMTP**.
|
||||
* 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.
|
||||
* Enter the SMTP host, port, username, and password for your chosen email provider.
|
||||
* Send a test email from Listmonk to verify the settings.
|
||||
|
||||
2. **Create a Mailing List**:
|
||||
* Go to **Lists** and click "New List".
|
||||
* Give your list a name (e.g., "Monthly Newsletter Subscribers"), a description, and choose its type (public or private).
|
||||
* Set opt-in preferences (single or double opt-in).
|
||||
|
||||
3. **Import Subscribers**:
|
||||
* Go to **Subscribers**.
|
||||
* You can add subscribers manually or import them from a CSV file.
|
||||
* Ensure you have consent from your subscribers before adding them.
|
||||
* Map CSV columns to Listmonk fields (email, name, etc.).
|
||||
|
||||
4. **Create an Email Template (Optional but Recommended)**:
|
||||
* Go to **Templates** and click "New Template".
|
||||
* Design a reusable HTML or Markdown template for your emails to maintain consistent branding.
|
||||
* Use template variables (e.g., `{{ .Subscriber.Email }}`, `{{ .Subscriber.Name }}`) to personalize emails.
|
||||
|
||||
5. **Create and Send a Campaign**:
|
||||
* Go to **Campaigns** and click "New Campaign".
|
||||
* **Name**: Give your campaign a descriptive name.
|
||||
* **Subject**: Write a compelling email subject line.
|
||||
* **Lists**: Select the mailing list(s) to send the campaign to.
|
||||
* **Content**: Write your email content. You can choose:
|
||||
* **Rich Text Editor**: A WYSIWYG editor.
|
||||
* **Plain Text + Markdown**: Write in Markdown for simplicity and version control friendliness.
|
||||
* **Use a Template**: Select one of your pre-designed templates and fill in the content areas.
|
||||
* **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.
|
||||
* **Schedule or Send**: You can schedule the campaign to be sent at a later time or send it immediately.
|
||||
|
||||
6. **Analyze Campaign Performance**:
|
||||
* After a campaign is sent, go to **Campaigns**, click on the campaign name, and view its statistics (sent, opened, clicked, etc.).
|
||||
|
||||
## Further Information
|
||||
|
||||
For comprehensive details on all Listmonk features, advanced configurations (like bounce handling, API usage), and troubleshooting, please consult the [official Listmonk Documentation](https://listmonk.app/docs/).
|
@ -1,63 +0,0 @@
|
||||
# MkDocs with Material Theme: Your Documentation Powerhouse
|
||||
|
||||
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.
|
||||
|
||||
## Key Features of MkDocs & Material Theme
|
||||
|
||||
* **Simple Markdown Syntax**: Write documentation in plain Markdown files.
|
||||
* **Fast and Lightweight**: Generates static HTML files that load quickly.
|
||||
* **Material Design**: A clean, modern, and responsive design out-of-the-box.
|
||||
* **Highly Customizable**: Extensive configuration options for themes, navigation, plugins, and more.
|
||||
* **Search Functionality**: Built-in search makes it easy for users to find information.
|
||||
* **Plugin Ecosystem**: Extend MkDocs with various plugins (e.g., for blog functionality, social cards, diagrams).
|
||||
* **Live Reload Server**: `mkdocs serve` provides a development server that automatically reloads when you save changes.
|
||||
|
||||
## Documentation
|
||||
|
||||
For more detailed information about MkDocs, visit the [official documentation](https://www.mkdocs.org/).
|
||||
|
||||
## Editing This Site (Your Changemaker Documentation)
|
||||
|
||||
All content for this documentation site is managed as Markdown files within the `mkdocs/docs/` directory of your Changemaker project.
|
||||
|
||||
### How to Edit or Add Content:
|
||||
|
||||
1. **Access Code Server**: As outlined on the homepage and in the Code Server documentation, log into Code Server. Your password is in `configs/code-server/.config/code-server/config.yaml`.
|
||||
2. **Navigate to the `docs` Directory**:
|
||||
* In Code Server's file explorer, open your Changemaker project folder (e.g., `/home/bunker-admin/Changemaker/`).
|
||||
* Go into the `mkdocs/docs/` subdirectory.
|
||||
3. **Find or Create Your Page**:
|
||||
* **To edit an existing page**: Navigate to the relevant `.md` file (e.g., `apps/code-server.md` to edit the Code Server page, or `index.md` for the homepage content if not using `home.html` override directly).
|
||||
* **To create a new page**: Create a new `.md` file in the appropriate location (e.g., `apps/my-new-app.md`).
|
||||
4. **Write in Markdown**: Use standard Markdown syntax. Refer to the `guides/authoring-content.md` for tips on Markdown and MkDocs Material specific features.
|
||||
5. **Update Navigation (if adding a new page)**:
|
||||
* Open `mkdocs/mkdocs.yml`.
|
||||
* Add your new page to the `nav:` section to make it appear in the site navigation. For example:
|
||||
```yaml
|
||||
nav:
|
||||
- Home: index.md
|
||||
- ...
|
||||
- Applications:
|
||||
- ...
|
||||
- My New App: apps/my-new-app.md # Add your new page here
|
||||
- ...
|
||||
```
|
||||
6. **Save Your Changes**: Press `Ctrl+S` (or `Cmd+S` on Mac) in Code Server.
|
||||
7. **Preview Changes**:
|
||||
* The MkDocs development server (if you've run `mkdocs serve` in a terminal within your `mkdocs` directory) will automatically rebuild the site and your browser should refresh to show the changes.
|
||||
* The typical URL for the local development server is `http://localhost:8000` or `http://127.0.0.1:8000`.
|
||||
|
||||
### Site Configuration
|
||||
|
||||
The main configuration for the documentation site is in `mkdocs/mkdocs.yml`. Here you can change:
|
||||
* `site_name`, `site_description`, `site_author`
|
||||
* Theme features and palette
|
||||
* Markdown extensions
|
||||
* Navigation structure (`nav`)
|
||||
* Plugins
|
||||
|
||||
## Further Information
|
||||
|
||||
* **MkDocs**: [Official MkDocs Documentation](https://www.mkdocs.org/)
|
||||
* **MkDocs Material Theme**: [Official Material for MkDocs Documentation](https://squidfunk.github.io/mkdocs-material/)
|
||||
* **Your Site's Authoring Guide**: Check out `guides/authoring-content.md` in your `mkdocs/docs/` directory.
|
@ -1,55 +0,0 @@
|
||||
# Monica CRM: Personal Relationship Management
|
||||
|
||||
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.
|
||||
|
||||
## Key Features
|
||||
|
||||
* **Contact Management**: Store detailed information about your contacts (important dates, how you met, family members, etc.).
|
||||
* **Interaction Logging**: Record activities, conversations, and reminders related to your contacts.
|
||||
* **Reminders**: Set reminders for birthdays, anniversaries, or to get back in touch.
|
||||
* **Journaling**: Keep a personal journal that can be linked to contacts or events.
|
||||
* **Data Ownership**: Self-hosted, so you control your data.
|
||||
* **Focus on Personal Connections**: Designed to strengthen personal relationships.
|
||||
|
||||
## Documentation
|
||||
|
||||
For more detailed information about Monica CRM, visit the [official documentation](https://www.monicahq.com/documentation/).
|
||||
|
||||
## Getting Started with Monica CRM
|
||||
|
||||
### Accessing Monica CRM
|
||||
1. **URL**: Access Monica CRM locally via `http://localhost:8085/` (or your configured external URL).
|
||||
2. **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.
|
||||
|
||||
### Basic Usage
|
||||
|
||||
1. **Adding Contacts**:
|
||||
* Look for an "Add Contact" or similar button.
|
||||
* Fill in as much information as you know: name, relationship to you, important dates (birthdays), how you met, contact information, etc.
|
||||
* You can add notes, family members, and even how they pronounce their name.
|
||||
|
||||
2. **Logging Activities/Interactions**:
|
||||
* On a contact's page, find options to "Log an activity," "Schedule a reminder," or "Add a note."
|
||||
* Record details about conversations, meetings, or significant events.
|
||||
* Set reminders to follow up or for important dates.
|
||||
|
||||
3. **Using the Dashboard**: The dashboard usually provides an overview of upcoming reminders, recent activities, and statistics about your relationships.
|
||||
|
||||
4. **Journaling**: Explore the journaling feature to write personal entries, which can sometimes be linked to specific contacts or events.
|
||||
|
||||
5. **Managing Relationships**: Regularly update contact information and log interactions to keep your relationship history current.
|
||||
|
||||
## Use Cases within Changemaker
|
||||
|
||||
* **Community Organizers**: Keep track of interactions with supporters, volunteers, and community members.
|
||||
* **Networking**: Manage professional contacts and remember important details about them.
|
||||
* **Personal Use**: Strengthen relationships with friends and family by remembering important dates and conversations.
|
||||
* **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).
|
||||
|
||||
## Editing the Site
|
||||
|
||||
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**.
|
||||
|
||||
## Further Information
|
||||
|
||||
* **Monica CRM Official Website & Documentation**: [https://www.monicahq.com/](https://www.monicahq.com/) and [https://www.monicahq.com/docs](https://www.monicahq.com/docs)
|
@ -1,66 +0,0 @@
|
||||
# n8n: Automate Your Workflows
|
||||
|
||||
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.
|
||||
|
||||
## Key Features
|
||||
|
||||
* **Visual Workflow Builder**: Create automation flows using an intuitive drag-and-drop interface.
|
||||
* **Pre-built Integrations**: Connect to hundreds of services including email, social media, databases, and more.
|
||||
* **Custom Functionality**: Create your own nodes for custom integrations when needed.
|
||||
* **Scheduling**: Run workflows on schedules or trigger them based on events.
|
||||
* **Error Handling**: Configure what happens when steps fail, with options to retry or alert.
|
||||
* **Self-hosted**: Keep your automation data and credentials completely under your control.
|
||||
* **Credential Management**: Securely store and reuse authentication details for various services.
|
||||
|
||||
## Documentation
|
||||
|
||||
For more detailed information about n8n, visit the [official documentation](https://docs.n8n.io/).
|
||||
|
||||
## Getting Started with n8n
|
||||
|
||||
### Accessing n8n
|
||||
1. **URL**: You can access n8n locally via `http://localhost:5678/` (or your configured external URL if set up).
|
||||
2. **Authentication**: The first time you access n8n, you'll need to set up an account with admin credentials.
|
||||
|
||||
### Basic Usage
|
||||
|
||||
1. **Creating Your First Workflow**:
|
||||
* Click the "+" button in the top right to create a new workflow.
|
||||
* Add a trigger node (e.g., "Schedule" for time-based triggers or "Webhook" for event-based triggers).
|
||||
* Connect additional nodes for the actions you want to perform.
|
||||
* Save your workflow and activate it using the toggle at the top of the editor.
|
||||
|
||||
2. **Example Workflow: Automatic Welcome Emails**
|
||||
* Start with a "Webhook" node that triggers when a new contact is added to your system.
|
||||
* Connect to an "Email" node configured to send your welcome message.
|
||||
* Optionally, add a "Slack" or "Rocket.Chat" node to notify your team about the new contact.
|
||||
|
||||
3. **Common Use Cases**:
|
||||
* **Content Publishing**: Automatically post blog updates to social media channels.
|
||||
* **Data Synchronization**: Keep contacts in sync between different systems.
|
||||
* **Event Management**: Send reminders before events and follow-ups afterward.
|
||||
* **Monitoring**: Get notifications when important metrics change or thresholds are reached.
|
||||
* **Form Processing**: Automatically handle form submissions with confirmation emails and data storage.
|
||||
|
||||
### Integration with Other Changemaker Services
|
||||
|
||||
n8n works particularly well with other services in your Changemaker environment:
|
||||
|
||||
* **NocoDB**: Connect to your databases to automate record creation, updates, or data processing.
|
||||
* **Listmonk**: Trigger email campaigns based on events or schedules.
|
||||
* **Gitea**: Automate responses to code changes or issue creation.
|
||||
* **Monica CRM**: Update contact records automatically when interactions occur.
|
||||
* **Rocket.Chat**: Send automated notifications to team channels.
|
||||
|
||||
## Advanced Features
|
||||
|
||||
* **Error Handling**: Configure error workflows and retries for increased reliability.
|
||||
* **Splitting and Merging**: Process multiple items in parallel and then combine results.
|
||||
* **Expressions**: Use JavaScript expressions for dynamic data manipulation.
|
||||
* **Webhooks**: Create endpoints that can receive data from external services.
|
||||
* **Function Nodes**: Write custom JavaScript code for complex data transformations.
|
||||
* **Cron Jobs**: Schedule workflows to run at specific intervals.
|
||||
|
||||
## Further Information
|
||||
|
||||
For more detailed information on creating complex workflows, available integrations, and best practices, please refer to the [official n8n Documentation](https://docs.n8n.io/).
|
@ -1,72 +0,0 @@
|
||||
# NocoDB: Open Source Airtable Alternative
|
||||
|
||||
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.
|
||||
|
||||
## Key Features
|
||||
|
||||
* **Spreadsheet Interface**: View and manage your database tables like a spreadsheet.
|
||||
* **Multiple View Types**: Beyond grids, create Kanban boards, forms, galleries, and calendar views from your data.
|
||||
* **Connect to Existing Databases**: Bring your existing SQL databases into NocoDB or create new ones from scratch.
|
||||
* **API Access**: NocoDB automatically generates REST APIs for your tables, enabling integration with other applications and services.
|
||||
* **Collaboration**: Share bases and tables with team members with granular permission controls.
|
||||
* **App Store / Integrations**: Extend functionality with built-in or third-party apps and integrations.
|
||||
* **Self-Hosted**: Maintain full control over your data and infrastructure.
|
||||
* **No-Code/Low-Code**: Build simple applications and workflows with minimal to no coding.
|
||||
|
||||
## Documentation
|
||||
|
||||
For more detailed information about NocoDB, visit the [official documentation](https://docs.nocodb.com/).
|
||||
|
||||
## Getting Started with NocoDB
|
||||
|
||||
### Accessing NocoDB
|
||||
1. **URL**: Access NocoDB locally via `http://localhost:8090/` (or your configured external URL).
|
||||
2. **Initial Setup / Login**:
|
||||
* The first time you access NocoDB, you might be guided through a setup process to create an initial super admin user.
|
||||
* For subsequent access, you'll log in with these credentials.
|
||||
|
||||
### Basic Workflow
|
||||
|
||||
1. **Understanding the Interface**:
|
||||
* **Workspace/Projects (or Bases)**: NocoDB organizes data into projects or bases, similar to Airtable bases. Each project can contain multiple tables.
|
||||
* **Tables**: These are your database tables, displayed in a spreadsheet-like grid by default.
|
||||
* **Views**: For each table, you can create multiple views (Grid, Form, Kanban, Gallery, Calendar) to visualize and interact with the data in different ways.
|
||||
|
||||
2. **Creating a New Project/Base**:
|
||||
* Look for an option like "New Project" or "Create Base".
|
||||
* 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).
|
||||
|
||||
3. **Creating a Table**:
|
||||
* Within a project, create new tables.
|
||||
* 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).
|
||||
|
||||
4. **Adding and Editing Data**:
|
||||
* Click into cells in the grid view to add or edit data, just like a spreadsheet.
|
||||
* Use forms (if you create a form view) for more structured data entry.
|
||||
|
||||
5. **Creating Different Views**:
|
||||
* For any table, click on the view switcher (often near the table name) and select "Create View".
|
||||
* Choose the view type (e.g., Kanban).
|
||||
* Configure the view (e.g., for Kanban, select the single-select field that will define the columns/stacks).
|
||||
|
||||
6. **Linking Tables (Relational Data)**:
|
||||
* Use the "Link to Another Record" field type to create relationships between tables (e.g., link a `Tasks` table to a `Projects` table).
|
||||
* This allows you to look up and display related data across tables.
|
||||
|
||||
7. **Using Formulas**:
|
||||
* Create formula fields to compute values based on other fields in the same table, similar to spreadsheet formulas.
|
||||
|
||||
8. **Exploring APIs**:
|
||||
* 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).
|
||||
|
||||
## Use Cases within Changemaker
|
||||
|
||||
* **Content Management**: Manage structured content for your website or blog (e.g., a list of events, resources, testimonials).
|
||||
* **Contact Management/CRM**: Keep track of contacts, leads, or supporters.
|
||||
* **Project Management**: Track tasks, projects, and deadlines.
|
||||
* **Inventory Management**: If applicable to your campaign or project.
|
||||
* **Data Collection**: Use NocoDB forms to collect information.
|
||||
|
||||
## Further Information
|
||||
|
||||
NocoDB is a feature-rich platform. For detailed guides, tutorials, API documentation, and advanced usage, refer to the [official NocoDB Documentation](https://docs.nocodb.com/).
|
@ -1,72 +0,0 @@
|
||||
# Ollama: Local AI Model Server
|
||||
|
||||
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.
|
||||
|
||||
## Key Features
|
||||
|
||||
* **Run LLMs Locally**: Host and run various open-source large language models (like Llama, Gemma, Mistral, etc.) on your own hardware.
|
||||
* **Simple CLI**: Easy-to-use command-line interface for downloading models (`ollama pull`), running them (`ollama run`), and managing them (`ollama list`).
|
||||
* **API Server**: Ollama serves models through a local API, allowing other applications (like OpenWebUI) to interact with them.
|
||||
* **Data Privacy**: Since models run locally, your data doesn't leave your server when you interact with them.
|
||||
* **Growing Model Library**: Access a growing library of popular open-source models.
|
||||
* **Customization**: Create custom model files (Modelfiles) to tailor model behavior.
|
||||
|
||||
## Documentation
|
||||
|
||||
For more detailed information about Ollama, visit the [official repository](https://github.com/ollama/ollama).
|
||||
|
||||
## Getting Started with Ollama (within Changemaker)
|
||||
|
||||
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.
|
||||
|
||||
### Managing Ollama via Terminal (e.g., in Code Server)
|
||||
|
||||
1. **Access a Terminal**:
|
||||
* Open the integrated terminal in Code Server.
|
||||
* Alternatively, SSH directly into your Changemaker server.
|
||||
|
||||
2. **Common Ollama Commands**:
|
||||
* **List Downloaded Models**: See which models you currently have.
|
||||
```bash
|
||||
docker exec -it ollama-changemaker ollama list
|
||||
```
|
||||
*(The `docker exec -it ollama-changemaker` part is necessary if Ollama is running in a Docker container named `ollama-changemaker`, which is common. If Ollama is installed directly on the host, you'd just run `ollama list`.)*
|
||||
|
||||
* **Pull (Download) a New Model**: Download a model from the Ollama library. Replace `gemma:2b` with the desired model name and tag.
|
||||
```bash
|
||||
docker exec -it ollama-changemaker ollama pull gemma:2b
|
||||
```
|
||||
(Example: `ollama pull llama3`, `ollama pull mistral`)
|
||||
|
||||
* **Run a Model (Interactive Chat in Terminal)**: Chat directly with a model in the terminal.
|
||||
```bash
|
||||
docker exec -it ollama-changemaker ollama run gemma:2b
|
||||
```
|
||||
(Press `Ctrl+D` or type `/bye` to exit the chat.)
|
||||
|
||||
* **Remove a Model**: Delete a downloaded model to free up space.
|
||||
```bash
|
||||
docker exec -it ollama-changemaker ollama rm gemma:2b
|
||||
```
|
||||
|
||||
### Interacting with Ollama via OpenWebUI
|
||||
|
||||
For a more user-friendly chat experience, use OpenWebUI, which connects to your Ollama service. See the `apps/openwebui.md` documentation for details.
|
||||
|
||||
## Use Cases within Changemaker
|
||||
|
||||
* **Powering OpenWebUI**: Ollama is the backend engine that OpenWebUI uses to provide its chat interface.
|
||||
* **AI-Assisted Content Creation**: Generate text, summaries, ideas, or code snippets with privacy.
|
||||
* **Custom AI Applications**: Developers can build custom applications that leverage the Ollama API for various AI tasks.
|
||||
* **Offline AI Capabilities**: Use AI models even without an active internet connection (once models are downloaded).
|
||||
|
||||
## Editing the Site
|
||||
|
||||
Ollama is an AI model server. It is not used for editing this documentation site. Site editing is done via **Code Server**.
|
||||
|
||||
## Further Information
|
||||
|
||||
* **Ollama Official Website**: [https://ollama.ai/](https://ollama.ai/)
|
||||
* **Ollama Documentation**: [https://ollama.ai/docs](https://ollama.ai/docs)
|
||||
* **Ollama GitHub**: [https://github.com/ollama/ollama](https://github.com/ollama/ollama)
|
||||
* The existing `ollama.md` at the root of the `docs` folder in your project might also contain specific setup notes for your Changemaker instance.
|
@ -1,53 +0,0 @@
|
||||
# OpenWebUI: Chat Interface for Ollama
|
||||
|
||||
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.
|
||||
|
||||
## Key Features
|
||||
|
||||
* **Chat Interface**: Intuitive, ChatGPT-like interface for interacting with Ollama models.
|
||||
* **Model Selection**: Easily switch between different AI models you have downloaded via Ollama.
|
||||
* **Conversation History**: Keeps track of your chats.
|
||||
* **Responsive Design**: Usable on various devices.
|
||||
* **Self-Hosted**: Runs locally as part of your Changemaker suite, ensuring data privacy.
|
||||
* **Markdown Support**: Renders model responses that include Markdown for better formatting.
|
||||
|
||||
## Documentation
|
||||
|
||||
For more detailed information about OpenWebUI, visit the [official documentation](https://docs.openwebui.com/).
|
||||
|
||||
## Getting Started with OpenWebUI
|
||||
|
||||
### Prerequisites
|
||||
* **Ollama Must Be Running**: OpenWebUI is an interface *for* Ollama. Ensure your Ollama service is running and you have downloaded some models (e.g., `ollama pull llama3`).
|
||||
|
||||
### Accessing OpenWebUI
|
||||
1. **URL**: Access OpenWebUI locally via `http://localhost:3005/` (or your configured external URL).
|
||||
2. **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.
|
||||
|
||||
### Basic Usage
|
||||
|
||||
1. **Log In**: Sign in with your OpenWebUI credentials.
|
||||
2. **Select a Model**:
|
||||
* 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.
|
||||
* 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 `ollama list` to see available models or `ollama pull <modelname>` (e.g., `ollama pull gemma:2b`) to download a new one.
|
||||
3. **Start Chatting**:
|
||||
* Type your prompt or question into the message box at the bottom of the screen and press Enter or click the send button.
|
||||
* The selected Ollama model will process your input and generate a response, which will appear in the chat window.
|
||||
4. **Manage Conversations**: You can typically start new chats or revisit previous conversations from a sidebar.
|
||||
|
||||
## Use Cases within Changemaker
|
||||
|
||||
* **Content Generation**: Draft blog posts, newsletter content, social media updates, or documentation.
|
||||
* **Brainstorming**: Generate ideas for campaigns, projects, or problem-solving.
|
||||
* **Research Assistance**: Ask questions and get summaries on various topics (ensure you verify information from LLMs).
|
||||
* **Drafting Responses**: Help formulate replies to emails or messages.
|
||||
* **Learning & Exploration**: Experiment with different AI models and their capabilities.
|
||||
|
||||
## Editing the Site
|
||||
|
||||
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**.
|
||||
|
||||
## Further Information
|
||||
|
||||
* **OpenWebUI Official Documentation/GitHub**: [https://docs.openwebui.com/](https://docs.openwebui.com/) or their GitHub repository (often linked from the UI itself).
|
||||
* **Ollama Documentation**: [https://ollama.ai/docs](https://ollama.ai/docs) (for information on managing Ollama and downloading models).
|
@ -1,69 +0,0 @@
|
||||
# Portainer: Docker Container Management UI
|
||||
|
||||
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.
|
||||
|
||||
## Key Features
|
||||
|
||||
* **Container Management**: View, start, stop, restart, remove, and inspect Docker containers.
|
||||
* **Image Management**: Pull, remove, and inspect Docker images.
|
||||
* **Volume Management**: Manage Docker volumes used for persistent storage.
|
||||
* **Network Management**: Manage Docker networks.
|
||||
* **Stacks/Compose**: Deploy and manage multi-container applications defined in Docker Compose files (stacks).
|
||||
* **Logs & Stats**: View container logs and resource usage statistics (CPU, memory).
|
||||
* **User-Friendly Interface**: Simplifies Docker management for users who may not be comfortable with the command line.
|
||||
* **Multi-Environment Support**: Can manage multiple Docker hosts or Kubernetes clusters (though in Changemaker, it's typically managing the local Docker environment).
|
||||
|
||||
## Documentation
|
||||
|
||||
For more detailed information about Portainer, visit the [official documentation](https://docs.portainer.io/).
|
||||
|
||||
## Getting Started with Portainer
|
||||
|
||||
### Accessing Portainer
|
||||
1. **URL**: Access Portainer locally via `http://localhost:9002/` (or your configured external URL).
|
||||
2. **Initial Setup/Login**:
|
||||
* The first time you access Portainer, you will need to set up an administrator account (username and password).
|
||||
* You will then connect Portainer to the Docker environment it should manage. For Changemaker, this is usually the local Docker socket.
|
||||
|
||||
### Basic Usage
|
||||
|
||||
1. **Dashboard**: The main dashboard provides an overview of your Docker environment (number of containers, volumes, images, etc.).
|
||||
|
||||
2. **Containers List**:
|
||||
* Navigate to "Containers" from the sidebar.
|
||||
* You'll see a list of all running and stopped containers (e.g., `code-server`, `flatnotes`, `listmonk`, etc., that make up Changemaker).
|
||||
* **Actions**: For each container, you can perform actions like:
|
||||
* **Logs**: View real-time logs.
|
||||
* **Inspect**: See detailed configuration and state.
|
||||
* **Stats**: View resource usage.
|
||||
* **Console**: Connect to the container's terminal (if supported by the container).
|
||||
* **Stop/Start/Restart/Remove**.
|
||||
|
||||
3. **Images List**:
|
||||
* Navigate to "Images" to see all Docker images pulled to your server.
|
||||
* You can pull new images from Docker Hub or other registries, or remove unused images.
|
||||
|
||||
4. **Volumes List**:
|
||||
* 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).
|
||||
|
||||
5. **Stacks (Docker Compose)**:
|
||||
* Navigate to "Stacks."
|
||||
* Changemaker itself is likely deployed as a stack using its `docker-compose.yml` file. You might see it listed here.
|
||||
* You can add new stacks (deploy other Docker Compose applications) or manage existing ones.
|
||||
|
||||
## Use Cases within Changemaker
|
||||
|
||||
* **Monitoring Application Status**: Quickly see if all Changemaker application containers are running.
|
||||
* **Viewing Logs**: Troubleshoot issues by checking the logs of specific application containers.
|
||||
* **Restarting Applications**: If an application becomes unresponsive, you can try restarting its container via Portainer.
|
||||
* **Resource Management**: Check CPU and memory usage of containers if you suspect performance issues.
|
||||
* **Advanced Management**: For users comfortable with Docker, Portainer provides an easier interface for tasks that would otherwise require command-line operations.
|
||||
|
||||
## Editing the Site
|
||||
|
||||
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**.
|
||||
|
||||
## Further Information
|
||||
|
||||
* **Portainer Official Website**: [https://www.portainer.io/](https://www.portainer.io/)
|
||||
* **Portainer Documentation**: [https://docs.portainer.io/](https://docs.portainer.io/)
|
@ -1,65 +0,0 @@
|
||||
# Rocket.Chat: Team & Community Collaboration Platform
|
||||
|
||||
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.
|
||||
|
||||
## Key Features
|
||||
|
||||
* **Real-time Chat**: Public channels, private groups, and direct messages.
|
||||
* **File Sharing**: Share documents, images, and other files.
|
||||
* **Voice and Video Conferencing**: Integrated audio and video calls.
|
||||
* **Guest Access**: Allow external users to participate in specific channels.
|
||||
* **Integrations**: Connect with other tools and services through bots and APIs.
|
||||
* **Customization**: Themes, permissions, and extensive administrative controls.
|
||||
* **Self-Hosted**: Full data sovereignty and control over user privacy.
|
||||
* **Mobile and Desktop Apps**: Access Rocket.Chat from various devices.
|
||||
|
||||
## Documentation
|
||||
|
||||
For more detailed information about Rocket.Chat, visit the [official documentation](https://docs.rocket.chat/).
|
||||
|
||||
## Getting Started with Rocket.Chat
|
||||
|
||||
### Accessing Rocket.Chat
|
||||
1. **URL**: Access Rocket.Chat locally via `http://localhost:3004/` (or your configured external URL).
|
||||
2. **Account Registration/Login**:
|
||||
* The first time you access it, you or an administrator will need to set up an admin account and configure the server.
|
||||
* Users will then need to register for an account or be invited by an admin.
|
||||
|
||||
### Basic Usage
|
||||
|
||||
1. **Interface Overview**:
|
||||
* **Channels/Rooms**: The main area for discussions. Channels can be public or private.
|
||||
* **Direct Messages**: For one-on-one conversations.
|
||||
* **User List**: See who is online and available.
|
||||
* **Search**: Find messages, users, or channels.
|
||||
|
||||
2. **Joining Channels**:
|
||||
* Browse the directory of public channels or be invited to private ones.
|
||||
|
||||
3. **Sending Messages**:
|
||||
* Type your message in the input box at the bottom of a channel or direct message.
|
||||
* Use Markdown for formatting, emojis, and @mentions to notify users.
|
||||
|
||||
4. **Starting a Video/Audio Call**: Look for the call icons within a channel or direct message to start a voice or video call.
|
||||
|
||||
5. **Managing Your Profile**: Update your profile picture, status, and notification preferences.
|
||||
|
||||
6. **Administration (For Admins)**:
|
||||
* Access the administration panel to manage users, permissions, channels, integrations, and server settings.
|
||||
|
||||
## Use Cases within Changemaker
|
||||
|
||||
* **Internal Team Communication**: A central place for your campaign team or organization members to chat, share files, and coordinate efforts.
|
||||
* **Community Building**: Create a private or public chat community for your supporters or users.
|
||||
* **Project Collaboration**: Dedicate channels to specific projects or tasks.
|
||||
* **Support Channel**: Offer a real-time support channel for your users or community members.
|
||||
* **Alternative to Slack/Discord**: A self-hosted option providing similar functionality with more control.
|
||||
|
||||
## Editing the Site
|
||||
|
||||
Rocket.Chat is a communication platform. It is not used for editing this documentation site. Site editing is done via **Code Server**.
|
||||
|
||||
## Further Information
|
||||
|
||||
* **Rocket.Chat Official Website**: [https://www.rocket.chat/](https://www.rocket.chat/)
|
||||
* **Rocket.Chat Documentation**: [https://docs.rocket.chat/](https://docs.rocket.chat/)
|
100
mkdocs/docs/archive/cm.archive/manuals/Installation.md
Executable file
@ -0,0 +1,100 @@
|
||||
# Installation Guide
|
||||
|
||||
This guide will walk you through installing and configuring Change Maker.
|
||||
|
||||
!!! note "Simple Button - Seperate Installation Instructions"
|
||||
If you are looking for instructions on installing Change Maker Simple Button, please refer to the [Simple Button Installation Guide](button.md).
|
||||
|
||||
## Prerequisites
|
||||
|
||||
- Docker and Docker Compose V2
|
||||
- Internet connection for initial setup
|
||||
- 4GB RAM minimum
|
||||
- 10GB free disk space
|
||||
|
||||
## Installation Steps
|
||||
|
||||
### 1. Initial Configuration
|
||||
|
||||
#### Windows Users
|
||||
1. Open PowerShell as Administrator
|
||||
2. Navigate to the extracted Change Maker folder
|
||||
3. Run: `.\update-config.ps1`
|
||||
|
||||
#### Linux/Mac Users
|
||||
1. Open Terminal
|
||||
2. Navigate to the extracted Change Maker folder
|
||||
3. Run: `chmod +x update-config.sh`
|
||||
4. Run: `./update-config.sh`
|
||||
|
||||
!!! Warning "Configuration Script"
|
||||
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.
|
||||
|
||||
The configuration script will prompt you for:
|
||||
|
||||
- Site URL (e.g., https://changemaker.example.com)
|
||||
- Site name (optional)
|
||||
- Port numbers for each service:
|
||||
- Frontend (default: 3000)
|
||||
- Backend API (default: 3001)
|
||||
- MkDocs Preview (default: 4000)
|
||||
- Listmonk Newsletter (default: 9000)
|
||||
- Database credentials
|
||||
- Admin user credentials
|
||||
|
||||
### 2. Starting the System
|
||||
|
||||
!!! Warning "Docker Prune"
|
||||
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.
|
||||
|
||||
Alternatively, you can run `docker-compose up -d` to start the services without pruning.
|
||||
|
||||
#### Windows Users
|
||||
1. Run: `.\windows-start.ps1`
|
||||
|
||||
#### Linux/Mac Users
|
||||
1. Run: `chmod +x start.sh`
|
||||
2. Run: `./start.sh`
|
||||
|
||||
### 3. Accessing the Services
|
||||
|
||||
Once running, you can access the following services:
|
||||
|
||||
- Main Editor: [http://localhost:3000](http://localhost:3000)
|
||||
- API Backend: [http://localhost:3001](http://localhost:3001)
|
||||
- Documentation Preview: [http://localhost:4000](http://localhost:4000)
|
||||
- Newsletter Dashboard: [http://localhost:9000](http://localhost:9000)
|
||||
|
||||
Some browsers may block your first attempt to access these ports. Often you need to click through a challenge page to proceed.
|
||||
|
||||
### 4. Stopping the System
|
||||
|
||||
In the terminal where you started the system, press `Ctrl+C` to stop the services. Run `docker-compose down` to stop all services.
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Port Conflicts
|
||||
|
||||
If you see port conflict warnings:
|
||||
|
||||
1. Stop any services using those ports
|
||||
2. OR run the configuration script again to choose different ports
|
||||
|
||||
### Docker Issues
|
||||
- Ensure Docker Desktop is running (Windows/Mac)
|
||||
- Check Docker service status: `systemctl status docker` (Linux)
|
||||
- Verify user permissions: `groups` should include 'docker' (Linux)
|
||||
|
||||
### File Permission Issues
|
||||
- Windows: Run PowerShell as Administrator
|
||||
- Linux/Mac: Check folder ownership with `ls -la`
|
||||
|
||||
## Next Steps
|
||||
|
||||
After installation:
|
||||
|
||||
1. Log into the editor using your admin credentials
|
||||
2. Create your first page
|
||||
3. Preview your site using the MkDocs preview URL
|
||||
|
||||
For detailed usage instructions, refer to the user manual.
|
134
mkdocs/docs/archive/cm.archive/manuals/MobileScreen1.png
Executable file
@ -0,0 +1,134 @@
|
||||
# Customize Your Landing Page
|
||||
## Basic Set Up
|
||||
To return to base configuration for landing page, navigate to your index.md file, and delete the properties at top of file:
|
||||
|
||||
```
|
||||
// Delete this text from your index.md file
|
||||
---
|
||||
title: Welcome to Bnkops Change Maker V3
|
||||
template: home.html
|
||||
---
|
||||
```
|
||||
|
||||
This will allow you to write your home page in standard markdown.
|
||||
## Custom Set Up
|
||||
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.
|
||||
### But bnkops I don't read or write html 😧
|
||||
|
||||
**Don't panic! That is what this guide is for. Learn how to update your front page effortlessly.**
|
||||
## Prompting for Updating
|
||||
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](https://repo.bnkops.com/Daisy%20AI%20%F0%9F%8C%BB/Daisy.html) that can do this work entirely for free. We also supply access to [Daisy](https://repo.bnkops.com/Daisy%20AI%20%F0%9F%8C%BB/Daisy.html), 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.
|
||||
|
||||
These same techniques can be used on the site settings (accessed through the cog icon). All documentation on site options is available [here](https://squidfunk.github.io/mkdocs-material/).
|
||||
|
||||
When asking an LLM to help customize your landing page, follow these key principles:
|
||||
|
||||
1. **Provide Context**: Let the LLM know about the existing structure
|
||||
```
|
||||
I'm using MkDocs Material theme with a custom landing page.
|
||||
The template extends main.html and uses a dark theme.
|
||||
I am want to fully update my landing page.
|
||||
```
|
||||
|
||||
2. **Specify Requirements**: Clearly state what elements you want
|
||||
```
|
||||
I need:
|
||||
- A hero section with a gradient background
|
||||
- Feature cards with hover effects
|
||||
- Smooth scroll animations
|
||||
- Custom CSS styling that matches the dark theme
|
||||
```
|
||||
|
||||
3. **Reference Existing Code**: If you're modifying an existing design
|
||||
```
|
||||
I'm starting with the default home.html template. Here's the current code:
|
||||
[paste your current home.html content]
|
||||
```
|
||||
|
||||
## Example Prompts
|
||||
|
||||
### For Basic Modifications
|
||||
```
|
||||
Please update my home.html template to add a new feature card section about [topic].
|
||||
Keep the existing dark theme (#1e2127) and yellow accents (#ffd700).
|
||||
```
|
||||
|
||||
### For Animation Effects
|
||||
```
|
||||
Add smooth scroll animations to my home.html template. I want:
|
||||
- Elements to fade in as they scroll into view
|
||||
- Subtle hover effects on cards
|
||||
- No flashy or distracting animations
|
||||
- Animations should complement the dark theme
|
||||
```
|
||||
|
||||
### For Complete Redesigns
|
||||
```
|
||||
Create a custom home.html template for MkDocs Material with:
|
||||
1. Dark theme matching [#1e2127](http://localhost:4000/tags/1e2127) background
|
||||
2. Yellow (#ffd700) accent colors
|
||||
3. [List your specific sections]
|
||||
4. [List your desired animations]
|
||||
|
||||
Keep the template extending from main.html and ensure all styling is contained within the content block.
|
||||
```
|
||||
|
||||
## Important Reminders
|
||||
|
||||
- **Template Structure**: Always remind the LLM to use `{% extends "main.html" %}` and proper block structure
|
||||
- **Color Scheme**: Specify the exact colors (#1e2127 for background, [#ffd700] for accents)
|
||||
- **Compatibility**: Ask for self-contained CSS and JavaScript (no external dependencies)
|
||||
- **Accessibility**: Request that animations respect user preferences (`prefers-reduced-motion`)
|
||||
|
||||
## Example Complete Prompt
|
||||
|
||||
Here's a full example of a well-structured prompt:
|
||||
|
||||
```
|
||||
Please help me update my MkDocs Material landing page. I need:
|
||||
|
||||
1. Template Structure:
|
||||
- Extend from main.html
|
||||
- Keep all CSS in a style block
|
||||
- Keep JavaScript in a script block
|
||||
|
||||
2. Design Requirements:
|
||||
- Dark theme (#1e2127 background)
|
||||
- Yellow accents (#ffd700)
|
||||
- Responsive layout
|
||||
- Smooth animations on scroll
|
||||
|
||||
3. Specific Sections:
|
||||
- Hero section with gradient
|
||||
- Feature cards with hover effects
|
||||
- Documentation section
|
||||
- Getting started guide
|
||||
|
||||
4. Animations:
|
||||
- Fade-in on scroll
|
||||
- Subtle hover effects
|
||||
- No aggressive animations
|
||||
|
||||
Please provide the complete home.html template with all necessary CSS and JavaScript included.
|
||||
```
|
||||
|
||||
## Testing the Results
|
||||
|
||||
After receiving the HTML:
|
||||
|
||||
1. Save it to `docs/overrides/home.html`. 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.
|
||||
2. Check the template extends properly
|
||||
3. Verify all styles are contained within the template
|
||||
4. Test responsiveness at different screen sizes
|
||||
5. Ensure animations work smoothly
|
||||
|
||||
## Iterative Improvements
|
||||
|
||||
If you need adjustments:
|
||||
|
||||
1. Specify exactly what needs changing
|
||||
2. Provide the current code
|
||||
3. Describe the desired outcome
|
||||
4. Ask for specific sections to be updated
|
||||
|
||||
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.
|
BIN
mkdocs/docs/archive/cm.archive/manuals/MobileScreen2.png
Executable file
After Width: | Height: | Size: 156 KiB |
33
mkdocs/docs/archive/cm.archive/manuals/NocoDB.md
Executable file
@ -0,0 +1,33 @@
|
||||
# NocoDB
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
`./start.sh` now includes the option to install NocoDB. You can choose to install NocoDB along with the other services provided by the script.
|
||||
|
||||
For more detailed information and documentation, please visit the the documentation:
|
||||
|
||||
[NocoDB Documentation](https://docs.nocodb.com/){ .md-button }
|
||||
|
||||
## Configure Listmonk Data
|
||||
|
||||
NocoDB installs with a default database configuration. To configure NocoDB to use the Listmonk database, follow these steps:
|
||||
|
||||
### Create a New Base
|
||||
|
||||
Create a new base in NocoDB by clicking on the `+ Create Base` icon in the sidebar. Name your new base `Listmonk`.
|
||||
|
||||
### Connect to the Listmonk Database
|
||||
|
||||
In your new base, click `Connect External Database`.
|
||||
|
||||
- Data Source Name: `Listmonk`
|
||||
- Select Connection - `New Connection`
|
||||
- Connection Type: `PostgreSQL`
|
||||
- Host: `listmonk-db`
|
||||
- Port: `5432`
|
||||
- Database: `listmonk_db`
|
||||
- User: `{your listmonk database user}` - this is the user you created when setting up Listmonk. Default is `listmonk_user`.
|
||||
- Password: `{your listmonk database password}` - this is the password you created when setting up Listmonk. Default is `changeme`.
|
||||
|
118
mkdocs/docs/archive/cm.archive/manuals/Simple Markdown Guide.md
Executable file
@ -0,0 +1,118 @@
|
||||
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:
|
||||
## Headings
|
||||
|
||||
Create headings by using hashtags (#) at the start of a line:
|
||||
# Heading 1- `# Heading 1`
|
||||
## Heading 2 - `## Heading 2`
|
||||
### Heading 3 `### Heading 3`
|
||||
|
||||
The more hashtags, the smaller the heading.
|
||||
## Text Formatting
|
||||
|
||||
- Make text *italic* by surrounding it with single asterisks: `*italic*`
|
||||
- Make text **bold** by surrounding it with double asterisks: `**bold**`
|
||||
- Create ~~strikethrough~~ text with double tildes: `~~strikethrough~~`
|
||||
## Lists
|
||||
|
||||
### Unordered Lists
|
||||
|
||||
Use a dash (-), asterisk (*), or plus (+) for bullet points:
|
||||
|
||||
- Item 1
|
||||
- Item 2
|
||||
- Subitem 2.1
|
||||
- Subitem 2.2
|
||||
|
||||
### Ordered Lists
|
||||
|
||||
Use numbers followed by periods for ordered lists:
|
||||
|
||||
1. First item
|
||||
2. Second item
|
||||
3. Third item
|
||||
|
||||
## Links
|
||||
Create a link by putting the link text in square brackets followed by the URL in parentheses:
|
||||
|
||||
`[name of file](http://localhost:4000/link to file)`
|
||||
|
||||
[Visit Wikipedia or is it?](https://en.m.wikipedia.org/wiki/Surveillance_capitalism)
|
||||
|
||||
## Images & Gifs
|
||||
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:
|
||||
|
||||
``
|
||||
|
||||

|
||||
|
||||
## Quotes
|
||||
Use a greater-than sign (>) to create block quotes:
|
||||
|
||||
> This is a block quote. It can span multiple lines.
|
||||
|
||||
## Code
|
||||
For inline code, use single back-ticks: `code here`. Useful for highlighting text or making a point.
|
||||
|
||||
For code blocks, use triple back-ticks. Great for giving people text to copy.:
|
||||
|
||||
```
|
||||
function example() {
|
||||
console.log("Hello, world!");
|
||||
}
|
||||
```
|
||||
|
||||
## Horizontal Lines
|
||||
Create a horizontal line with three or more hyphens, asterisks, or underscores:
|
||||
|
||||
---
|
||||
|
||||
# MkDocs Material Syntax
|
||||
|
||||
[Visit MkDocs Material](https://squidfunk.github.io/mkdocs-material/reference/){ .md-button }
|
||||
|
||||
Material for MkDocs offers a comprehensive suite of features to enhance technical documentation. Below is a summary of key functionalities:
|
||||
|
||||
- **Admonitions**: Insert call-out blocks for notes, warnings, and tips.
|
||||
|
||||
- **Annotations**: Add interactive markers with expandable tooltips for additional context.
|
||||
|
||||
- **Buttons**: Create styled buttons for links and actions.
|
||||
|
||||
- **Code Blocks**: Display syntax-highlighted code snippets with optional copy buttons.
|
||||
|
||||
- **Content Tabs**: Organize content into tabbed sections for better readability.
|
||||
|
||||
- **Data Tables**: Present tabular data with enhanced styling and functionality.
|
||||
|
||||
- **Diagrams**: Integrate Mermaid.js for rendering various diagrams like flowcharts and sequence diagrams.
|
||||
|
||||
- **Footnotes**: Include footnotes for supplementary information without disrupting the main text.
|
||||
|
||||
- **Formatting**: Apply advanced text formatting options beyond standard Markdown.
|
||||
|
||||
- **Grids**: Utilize grid layouts to structure content effectively.
|
||||
|
||||
- **Icons and Emojis**: Incorporate a wide range of icons and emojis to enrich content.
|
||||
|
||||
- **Images**: Manage image alignment, captions, and lightbox features.
|
||||
|
||||
- **Lists**: Create various list types, including unordered, ordered, definition, and task lists.
|
||||
|
||||
- **Math**: Render mathematical expressions using LaTeX syntax.
|
||||
|
||||
- **Tooltips**: Add hoverable tooltips for terms and abbreviations.
|
||||
|
||||
For detailed information on each feature, refer to the [Material for MkDocs Reference](https://squidfunk.github.io/mkdocs-material/reference/).
|
||||
|
||||
[Visit MkDocs Material](https://squidfunk.github.io/mkdocs-material/reference/){ .md-button }
|
||||
|
||||
---
|
||||
!!! Warning "Automatic Link Updating Working"
|
||||
The following syntax guide is borrowed from a previous build. Automatic link updating using standard double [ is working.
|
||||
|
||||
# [More instructions for embedding, syntax, and code injection.](https://repo.bnkops.com/Website%20Manuals%20%F0%9F%A4%93/Syntax%2C%20Embedding%2C%20HTML%2C%20and%20Other%20Code.html)
|
||||
|
||||
These have been tested on different environment. Can't guarantee success yet.
|
||||
|
||||
|
||||
That's it! You now know the basics of Markdown formatting.
|
202
mkdocs/docs/archive/cm.archive/manuals/index.md
Executable file
@ -0,0 +1,202 @@
|
||||
# Change Maker Codebase Overview
|
||||
|
||||
<div id="code-counter" style="font-size: 1.5em; font-weight: bold; text-align: center;">
|
||||
Over <span id="line-count">0</span> lines of code/content and counting
|
||||
</div>
|
||||
<script>
|
||||
let count = 0;
|
||||
const target = 30000;
|
||||
const increment = 50;
|
||||
const interval = 10;
|
||||
|
||||
function updateCounter() {
|
||||
if (count < target) {
|
||||
count += increment;
|
||||
document.getElementById('line-count').innerText = count.toLocaleString();
|
||||
setTimeout(updateCounter, interval);
|
||||
} else {
|
||||
document.getElementById('line-count').innerText = target.toLocaleString();
|
||||
}
|
||||
}
|
||||
|
||||
updateCounter();
|
||||
</script>
|
||||
|
||||
<div class="terminal-header">
|
||||
<div class="typing-effect">initializing documentation system<span class="cursor"></span></div>
|
||||
<div class="typing-effect">checking dependencies...</div>
|
||||
<div class="typing-effect"><span>✓</span> site built ready to serve</div>
|
||||
<div class="typing-effect"><span>✓</span> newsletter configured ready</div>
|
||||
<div class="typing-effect"><span>✓</span> real-time preview active</div>
|
||||
<div class="typing-effect"><span>✓</span> editor built online </div>
|
||||
<div class="typing-effect"><span>✨</span> change maker ready!</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
document.addEventListener("DOMContentLoaded", function() {
|
||||
const typingEffects = document.querySelectorAll('.typing-effect');
|
||||
typingEffects.forEach((element, index) => {
|
||||
setTimeout(() => {
|
||||
element.classList.add('active');
|
||||
}, index * 1000);
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
<style>
|
||||
.terminal-header {
|
||||
background: rgba(0, 0, 0, 0.2);
|
||||
border: 1px solid rgba(255, 215, 0, 0.1);
|
||||
border-radius: 8px;
|
||||
padding: 1rem;
|
||||
margin: 0 auto 2rem auto;
|
||||
max-width: 600px;
|
||||
height: 230px;
|
||||
overflow: hidden;
|
||||
font-family: 'Courier New', monospace;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.terminal-header::before {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
height: 25px;
|
||||
background: rgba(255, 215, 0, 0.1);
|
||||
border-bottom: 1px solid rgba(255, 215, 0, 0.1);
|
||||
border-radius: 8px 8px 0 0;
|
||||
}
|
||||
|
||||
.terminal-header::after {
|
||||
content: '⚪ ⚪ ⚪';
|
||||
position: absolute;
|
||||
top: 4px;
|
||||
left: 10px;
|
||||
font-size: 12px;
|
||||
color: rgba(255, 255, 255, 0.3);
|
||||
}
|
||||
|
||||
.typing-effect {
|
||||
position: relative;
|
||||
color: var(--bnk-text-dim);
|
||||
font-size: 0.8rem;
|
||||
line-height: 1.2;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
opacity: 0;
|
||||
margin-top: 5px;
|
||||
transform: translateY(20px);
|
||||
}
|
||||
|
||||
.typing-effect.active {
|
||||
opacity: 1;
|
||||
transform: translateY(0);
|
||||
transition: all 0.3s ease;
|
||||
}
|
||||
|
||||
.typing-effect span {
|
||||
color: var(--bnk-yellow);
|
||||
}
|
||||
|
||||
.typing-effect::before {
|
||||
content: '>';
|
||||
color: var(--bnk-yellow);
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
.cursor {
|
||||
display: inline-block;
|
||||
width: 2px;
|
||||
background-color: var(--bnk-yellow);
|
||||
animation: blink-cursor 0.7s steps(1) infinite;
|
||||
margin-left: 2px;
|
||||
height: 1em;
|
||||
vertical-align: bottom;
|
||||
position: relative;
|
||||
transform: translateY(1px);
|
||||
}
|
||||
|
||||
@keyframes blink-cursor {
|
||||
50% { opacity: 0; }
|
||||
}
|
||||
</style>
|
||||
|
||||
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.
|
||||
|
||||
## Modular Codebase
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
**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.**
|
||||
|
||||
## Key Components
|
||||
|
||||
The Change Maker codebase consists of the following key components:
|
||||
|
||||
**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:
|
||||
|
||||
[Mkdocs-Material Theme](https://squidfunk.github.io/mkdocs-material/){ .md-button }
|
||||
|
||||
**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.
|
||||
|
||||
**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:
|
||||
|
||||
[NocoDB Documentation](https://docs.nocodb.com/){ .md-button }
|
||||
|
||||
**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.
|
||||
|
||||
**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:
|
||||
|
||||
[Listmonk Documentation](https://listmonk.app/docs/){ .md-button }
|
||||
|
||||
## Architecture Overview
|
||||
|
||||
Change Maker is built with a modular architecture consisting of several key components:
|
||||
|
||||
### Frontend
|
||||
|
||||
- **Technologies Used**: React, JavaScript
|
||||
- **Location**: `frontend/`
|
||||
- **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.
|
||||
|
||||
### Backend
|
||||
|
||||
- **Technologies Used**: Node.js, Express
|
||||
- **Location**: `backend/`
|
||||
- **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.
|
||||
|
||||
### Documentation Content
|
||||
|
||||
- **Format**: Markdown files
|
||||
- **Location**: `docs/`
|
||||
- **Description**: Contains the markdown files that make up the content of the website. The files are organized into manuals, guides, and other documentation.
|
||||
|
||||
### Templates and Overrides
|
||||
|
||||
- **Location**: `docs/overrides/`
|
||||
- **Description**: Custom HTML templates and CSS styles used to override and extend the default theme. The `home.html` template is used for customizing the landing page.
|
||||
|
||||
### Configuration
|
||||
|
||||
- **File**: `mkdocs.yml`
|
||||
- **Description**: Configuration file for MkDocs, specifying site settings, navigation structure, theme customization, and plugins. It controls how the site is built and displayed.
|
||||
|
||||
## Core Features
|
||||
|
||||
- **Simple Markdown Writing**: Use Markdown for easy content creation with support for Obsidian-style links and features.
|
||||
|
||||
- **Real-time Preview**: See changes immediately with live previews of your content.
|
||||
|
||||
- **Customizable Templates**: Tailor the look and feel of your site using custom HTML templates and CSS overrides.
|
||||
|
||||
- **Self-Hosted Platform**: Run everything on your own hardware with no external dependencies or cloud services required.
|
||||
|
||||
- **Privacy Focused**: No external requests, GDPR compliant, and cookie-free by default.
|
||||
|
||||
## Need Help?
|
||||
|
||||
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!
|
323
mkdocs/docs/archive/cm.archive/manuals/listmonk.md
Executable file
@ -0,0 +1,323 @@
|
||||
# Listmonk
|
||||
|
||||
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.
|
||||
|
||||
Key features of Listmonk include:
|
||||
|
||||
- High-performance bulk email sending
|
||||
- Support for both transactional and marketing emails
|
||||
- Subscriber management with segmentation
|
||||
- Detailed analytics and reporting
|
||||
- Self-hosted and open-source
|
||||
|
||||
Listmonk is ideal for organizations looking to maintain control over their email infrastructure while benefiting from powerful email campaign management tools.
|
||||
|
||||
Listmonk is part of the ChangeMaker project, a suite of open-source tools for content creation, collaboration, and communication.
|
||||
|
||||
You can find more on Listmonk here:
|
||||
|
||||
[Listmonk](https://listmonk.app/){ .md-button }
|
||||
|
||||
## Confguration
|
||||
|
||||
To configure Listmonk, follow these steps:
|
||||
|
||||
### Set up Email Configuration SMTP settings.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
[Proton Mail](https://proton.me/){ .md-button }
|
||||
|
||||
To input your SMTP settings, navigate to the Listmonk dashboard and click on the `Settings` tab.
|
||||
|
||||

|
||||
|
||||
If you require assistance with your settings, feel free to reach out to us at [admin@bnkops.com](mailto:admin@bnkops.com).
|
||||
|
||||
### Configure Appearance
|
||||
|
||||
You can customize the appearance of your Listmonk dashboard by changing the logo, colors, and other settings. To do this, navigate to the `Settings` tab and click on the `Appearance` tab.
|
||||
|
||||

|
||||
|
||||
This is bnkops custom public page:
|
||||
|
||||
```css
|
||||
body, html {
|
||||
background-color: #1c1f26 !important;
|
||||
color: #e0e0e0 !important;
|
||||
font-family: Arial, sans-serif !important;
|
||||
}
|
||||
.public {
|
||||
background-color: #1c1f26 !important;
|
||||
}
|
||||
.container {
|
||||
max-width: 600px !important;
|
||||
margin: 20px auto !important;
|
||||
padding: 30px !important;
|
||||
background-color: #2c3038 !important;
|
||||
border-radius: 8px !important;
|
||||
box-shadow: 0 0 20px rgba(0,0,0,0.3) !important;
|
||||
}
|
||||
.logo {
|
||||
display: none !important;
|
||||
}
|
||||
h1, h2, h3 {
|
||||
color: #ffc107 !important;
|
||||
}
|
||||
h1 {
|
||||
font-size: 28px !important;
|
||||
text-align: center !important;
|
||||
margin-bottom: 20px !important;
|
||||
font-weight: bold !important;
|
||||
}
|
||||
label {
|
||||
color: #e0e0e0 !important;
|
||||
font-weight: bold !important;
|
||||
}
|
||||
input[type="text"], input[type="email"], textarea {
|
||||
background-color: #1c1f26 !important;
|
||||
border: 1px solid #444 !important;
|
||||
color: #ffffff !important;
|
||||
padding: 12px !important;
|
||||
border-radius: 4px !important;
|
||||
width: 100% !important;
|
||||
box-sizing: border-box !important;
|
||||
margin-bottom: 15px !important;
|
||||
font-size: 16px !important;
|
||||
}
|
||||
.btn, button[type="submit"] {
|
||||
background-color: #ffc107 !important;
|
||||
color: #000000 !important;
|
||||
padding: 12px 20px !important;
|
||||
border: none !important;
|
||||
border-radius: 4px !important;
|
||||
cursor: pointer !important;
|
||||
font-weight: bold !important;
|
||||
width: 100% !important;
|
||||
margin-top: 15px !important;
|
||||
font-size: 16px !important;
|
||||
transition: background-color 0.3s !important;
|
||||
}
|
||||
.btn:hover, button[type="submit"]:hover {
|
||||
background-color: #e0a800 !important;
|
||||
}
|
||||
footer {
|
||||
display: none !important;
|
||||
}
|
||||
.checkbox-list label {
|
||||
color: #e0e0e0 !important;
|
||||
font-weight: normal !important;
|
||||
display: inline !important;
|
||||
}
|
||||
/* Updated link styles to match branding */
|
||||
a {
|
||||
color: #ffc107 !important;
|
||||
text-decoration: none !important;
|
||||
}
|
||||
a:hover {
|
||||
text-decoration: underline !important;
|
||||
}
|
||||
/* Make sure links in specific contexts maintain the branding */
|
||||
.content a,
|
||||
.page-content a,
|
||||
.message-content a {
|
||||
color: #ffc107 !important;
|
||||
text-decoration: none !important;
|
||||
}
|
||||
.content a:hover,
|
||||
.page-content a:hover,
|
||||
.message-content a:hover {
|
||||
text-decoration: underline !important;
|
||||
}
|
||||
.mailing-list-archive {
|
||||
text-align: right !important;
|
||||
margin-top: 15px !important;
|
||||
}
|
||||
.form-group {
|
||||
margin-bottom: 20px !important;
|
||||
}
|
||||
input[type="checkbox"] {
|
||||
margin-right: 5px !important;
|
||||
}
|
||||
::placeholder {
|
||||
color: #888 !important;
|
||||
}
|
||||
```
|
||||
|
||||
### Public Pages
|
||||
|
||||
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.
|
||||
|
||||
You can also publish newsletters as standalone web pages. This is useful for sharing content on social media or embedding in your website.
|
||||
|
||||
To create a public page, you can create a campaign, and then in Archive settings, enable `Publish to public archive`.
|
||||
|
||||

|
||||
|
||||
### Users and Permissions
|
||||
|
||||
Listmonk allows you to create multiple users with different roles and permissions. You can assign roles such as `Admin`, `Editor`, or `Viewer` to control access to different parts of the dashboard.
|
||||
|
||||
To manage users, navigate to the `Users` tab in the Listmonk dashboard. You can add new users, change roles, or revoke access as needed.
|
||||
|
||||
### Templates
|
||||
|
||||
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.
|
||||
|
||||
To create a new template, navigate to the `Templates` tab in the Listmonk dashboard. You can create a new template from scratch or import an existing one.
|
||||
|
||||
Here is bnkops custom template:
|
||||
|
||||
```html
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>{{ .Campaign.Subject }}</title>
|
||||
</head>
|
||||
<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;">
|
||||
<table width="100%" bgcolor="#1a1a1a" cellpadding="0" cellspacing="0" role="presentation">
|
||||
<tr>
|
||||
<td align="center" style="padding: 20px 10px;">
|
||||
<table width="100%" cellpadding="0" cellspacing="0" role="presentation" style="max-width: 750px;">
|
||||
<!-- Header -->
|
||||
<tr>
|
||||
<td bgcolor="#ffc107" align="center" style="padding: 30px; border-radius: 5px;">
|
||||
<table width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||
<tr>
|
||||
<td align="center">
|
||||
<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>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center">
|
||||
<table cellpadding="0" cellspacing="0" role="presentation">
|
||||
<tr>
|
||||
<td bgcolor="#1a1a1a" align="center" style="border-radius: 4px;">
|
||||
<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>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr><td height="25"></td></tr>
|
||||
|
||||
<!-- Main Content -->
|
||||
<tr>
|
||||
<td bgcolor="#2a2a2a" style="padding: 40px; border-radius: 5px;">
|
||||
<table width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||
<tr>
|
||||
<td style="color: #f5f5f5; font-size: 20px; line-height: 1.6; font-family: Arial, sans-serif;">
|
||||
<div style="color: #f5f5f5;">
|
||||
{{ template "content" . }}
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr><td height="25"></td></tr>
|
||||
|
||||
<!-- View in Browser Section -->
|
||||
<tr>
|
||||
<td align="center" style="padding: 25px 0; border-top: 1px solid #444;">
|
||||
<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>
|
||||
<table cellpadding="0" cellspacing="0" role="presentation">
|
||||
<tr>
|
||||
<td bgcolor="#1a1a1a" align="center" style="border-radius: 4px; border: 2px solid #ffc107;">
|
||||
<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>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<!-- Footer -->
|
||||
<tr>
|
||||
<td align="center" style="padding: 25px 0;">
|
||||
<table width="100%" cellpadding="0" cellspacing="0" role="presentation">
|
||||
<tr>
|
||||
<td align="center" style="padding-bottom: 20px;">
|
||||
<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>
|
||||
<span style="color: #888; font-size: 20px;">|</span>
|
||||
<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>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center" style="color: #888; font-size: 18px; font-family: Arial, sans-serif;">
|
||||
© 2024 The Bunker Operations. All rights reserved.
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
{{ TrackView }}
|
||||
|
||||
<!-- Modified styles for better Proton Mail compatibility -->
|
||||
<style>
|
||||
/* Base styles */
|
||||
body, td, p, li { color: #f5f5f5; }
|
||||
|
||||
/* Header styles with forced colors */
|
||||
h1 { font-size: 36px; margin: 30px 0 20px 0; font-family: Arial, sans-serif; color: #f5f5f5; }
|
||||
h2 { font-size: 32px; margin: 25px 0 18px 0; font-family: Arial, sans-serif; color: #f5f5f5; }
|
||||
h3 { font-size: 28px; margin: 20px 0 16px 0; font-family: Arial, sans-serif; color: #f5f5f5; }
|
||||
h4, h5, h6 { font-size: 24px; margin: 20px 0 16px 0; font-family: Arial, sans-serif; color: #f5f5f5; }
|
||||
|
||||
/* Inline text styles */
|
||||
p { font-size: 20px; margin: 0 0 16px 0; line-height: 1.6; font-family: Arial, sans-serif; color: #f5f5f5; }
|
||||
a { color: #ffc107; }
|
||||
|
||||
/* List styles */
|
||||
ul, ol { margin: 0 0 20px 20px; color: #f5f5f5; }
|
||||
li { font-size: 20px; margin: 0 0 8px 0; font-family: Arial, sans-serif; color: #f5f5f5; }
|
||||
|
||||
/* Blockquote styles */
|
||||
blockquote {
|
||||
color: #f5f5f5;
|
||||
margin: 20px 0;
|
||||
padding: 15px 0 15px 20px;
|
||||
border-left: 3px solid #ffc107;
|
||||
font-size: 20px;
|
||||
font-family: Arial, sans-serif;
|
||||
}
|
||||
</style>
|
||||
|
||||
<!-- Inline default styles -->
|
||||
<div style="display: none;" data-proton="true">
|
||||
<h1 style="color: #f5f5f5; font-size: 36px; margin: 30px 0 20px 0; font-family: Arial, sans-serif;"></h1>
|
||||
<h2 style="color: #f5f5f5; font-size: 32px; margin: 25px 0 18px 0; font-family: Arial, sans-serif;"></h2>
|
||||
<h3 style="color: #f5f5f5; font-size: 28px; margin: 20px 0 16px 0; font-family: Arial, sans-serif;"></h3>
|
||||
<h4 style="color: #f5f5f5; font-size: 24px; margin: 20px 0 16px 0; font-family: Arial, sans-serif;"></h4>
|
||||
<p style="color: #f5f5f5; font-size: 20px; margin: 0 0 16px 0; line-height: 1.6; font-family: Arial, sans-serif;"></p>
|
||||
<a style="color: #ffc107; text-decoration: none; font-weight: bold; font-family: Arial, sans-serif;"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
```
|
||||
|
||||
### Writing Campaigns
|
||||
|
||||
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.
|
||||
|
||||
The editor supports Markdown, so any content you write in Change Maker can be easily copied and pasted into Listmonk.
|
||||
|
||||
## More Information
|
||||
|
||||
Visit the Listmonk website for more information and documentation:
|
||||
|
||||
[Listmonk Documentation](https://listmonk.app/docs/){ .md-button }
|
41
mkdocs/docs/archive/cm.archive/manuals/obsidian.md
Executable file
@ -0,0 +1,41 @@
|
||||
# Use Obsidian as Site Editor & CMS
|
||||

|
||||
|
||||
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.
|
||||
|
||||
<iframe width="560" height="315" src="https://www.youtube.com/embed/DbsAQSIKQXk?si=o3L1-F1qCAMX8Zxd" 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>
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
## Getting Started
|
||||
Download and install [Obsidian](https://obsidian.md/)
|
||||
### Navigate to BankOps Change Maker Directory
|
||||
Navigate to the location where you have already extracted the BankOps Change Maker files. Note path to docs folder inside your application.
|
||||
### Open "docs" Folder as Obsidian Vault
|
||||
|
||||

|
||||
|
||||
**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.
|
||||
|
||||

|
||||
|
||||
**Step 2: Configure Vault Settings**
|
||||
One setting does need updating to ensure compatibility. Under Settings -> Files and links -> 'Use [Wikilinks](Wikilinks.md)' turn to off. This has no affect on Obsidian and makes site building much smoother.
|
||||
|
||||

|
||||
|
||||
It is also advised to switch 'New link format' to relative path. Again this helps with site building.
|
||||
|
||||

|
||||
|
||||
You can configure additional settings as desired, such as setting a vault name or enabling plugins.
|
||||
|
||||
### Configuration
|
||||
Right now, bnkops can only guarantee that the base Obsidian configuration will work with the docs folder. Installing plugins may break system. Experiment away.
|
||||
|
||||
## Obsidian Sync
|
||||
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](obsidian.md) as your documentation and CMS system everywhere.
|
||||
|
||||
If you want to do this for free, you can use [Syncthing](https://syncthing.net/) as alternative. Set up your docs folder in a sync across devices and open as a folder.
|
BIN
mkdocs/docs/archive/cm.archive/manuals/obsidian.png
Executable file
After Width: | Height: | Size: 21 KiB |
51
mkdocs/docs/archive/cm.archive/manuals/prerequisites.md
Executable file
@ -0,0 +1,51 @@
|
||||
# Prerequisites
|
||||
|
||||
To get started with Change Maker, ensure you have the following prerequisites:
|
||||
|
||||
## General Requirements
|
||||
|
||||
- **Internet Connection**: Required for initial setup to download the latest versions of the software.
|
||||
- **Memory**: Minimum 2GB RAM. 4GB RAM is recommended.
|
||||
- **Disk Space**: Around 10GB of free disk space; more or less depending on size of website build. (instalation size is ~1GB).
|
||||
|
||||
## Necessary: Docker and Docker Compose
|
||||
|
||||
Change Maker uses Docker and Docker Compose for containerization. Follow the instructions below to install Docker and Docker Compose on your platform.
|
||||
|
||||
[Docker](https://www.docker.com/){ .md-button }
|
||||
|
||||
### Windows
|
||||
|
||||
1. **Install Docker Desktop for Windows**:
|
||||
- Download and install Docker Desktop from [Docker's official site](https://docs.docker.com/docker-for-windows/install/).
|
||||
- Ensure WSL 2 is enabled (Docker Desktop will guide you through this process).
|
||||
|
||||
|
||||
### Mac
|
||||
|
||||
1. **Install Docker Desktop for Mac**:
|
||||
- Download and install Docker Desktop from [Docker's official site](https://docs.docker.com/docker-for-mac/install/).
|
||||
- Docker Desktop supports both Intel and Apple Silicon Macs.
|
||||
|
||||
### Linux
|
||||
|
||||
1. **Install Docker**:
|
||||
- Follow the instructions on [Docker's official site](https://docs.docker.com/engine/install/) to install Docker using your package manager.
|
||||
|
||||
2. **Install Docker Compose**:
|
||||
- If Docker Compose is not included with your Docker installation, follow the instructions on [Docker Compose's official site](https://docs.docker.com/compose/install/) to install it.
|
||||
|
||||
## Recommended: Obsidian
|
||||
|
||||
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.
|
||||
|
||||
[Obsidian](https://obsidian.md/){ .md-button }
|
||||
|
||||
More info on configurint Obsidian can be found [here](obsidian.md).
|
||||
|
||||
## Power User: Visual Studio Code
|
||||
|
||||
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.
|
||||
|
||||
[Visual Studio Code](https://code.visualstudio.com/){ .md-button }
|
||||
|
BIN
mkdocs/docs/archive/cm.archive/music/For What It's Worth.mp3
Executable file
BIN
mkdocs/docs/archive/cm.archive/music/In Your System feat. Frase.mp3
Executable file
BIN
mkdocs/docs/archive/repo.archive/2_5_2024, 7_09_35 PM.webp
Normal file
After Width: | Height: | Size: 284 KiB |
30
mkdocs/docs/archive/repo.archive/Admin Log ⏭/2024-09-16.md
Normal file
@ -0,0 +1,30 @@
|
||||
---
|
||||
title: "Admin Log - 2024-09-16"
|
||||
---
|
||||
|
||||
D
|
||||
|
||||
id some site wide experimentation. Learning about the different loading functions. Wanting to reduce the amount of times the whole sites need rebuilding
|
||||
|
||||
So far best option is a dirty reload of mkdocs.
|
||||
|
||||
`--dirty`
|
||||
|
||||
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.
|
||||
|
||||
Further updates to explore:
|
||||
|
||||
- One click command to put up the repo.
|
||||
- Full rebuild with all the mkdcos-publisher features
|
||||
- Templates for meta-data for folks to use
|
||||
|
||||
Added new features to the site
|
||||
|
||||
```
|
||||
features:
|
||||
- navigation.instant
|
||||
- navigation.instant.prefetch
|
||||
- navigation.path
|
||||
- navigation.top
|
||||
|
||||
```
|
11
mkdocs/docs/archive/repo.archive/Admin Log ⏭/2024-09-20.md
Normal file
@ -0,0 +1,11 @@
|
||||
---
|
||||
title: "Admin Log - 2024-10-20"
|
||||
---
|
||||
|
||||
Lots of development today:
|
||||
|
||||
[bnkops Simple Targeter](../Website%20Manuals%20🤓/bnkops%20Simple%20Targeter.md) is coming along quickly. Learning's from this will be used to give administrative team ability to quickly message repo contributors with email systems.
|
||||
|
||||
Introduced clipping to the vault. Users, if they have the extenstions, can now swifty clip things into the system. [Direct link to clipper](https://github.com/obsidianmd/obsidian-clipper)
|
||||
|
||||
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.
|
@ -0,0 +1,5 @@
|
||||
---
|
||||
title: "Admin Log - 2024-10-23"
|
||||
---
|
||||
|
||||
Spent tims attempting deployment of Budibase. Turns out that VPNs screw the deployment on base builds. Figured this out playing with base device.
|
16
mkdocs/docs/archive/repo.archive/Admin Log ⏭/2024-09-24.md
Normal file
@ -0,0 +1,16 @@
|
||||
---
|
||||
title: "Admin Log - 2024-09-24"
|
||||
---
|
||||
|
||||
Found a new alt to canva:
|
||||
|
||||
https://plus.excalidraw.com/
|
||||
|
||||
Going to do a write up soon.
|
||||
|
||||
Need to move system to standalone device for network security. Getting dicy doing everything on homelab.
|
||||
|
||||
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.
|
||||
|
||||
Looking at proxmox as a solution for homelab. Looks slick: https://www.proxmox.com/en/
|
11
mkdocs/docs/archive/repo.archive/Admin Log ⏭/2024-09-26.md
Normal file
@ -0,0 +1,11 @@
|
||||
---
|
||||
title: "Admin Log - 2024-09-26"
|
||||
---
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
Excited. 🙂
|
||||
|
||||
|
@ -0,0 +1,9 @@
|
||||
---
|
||||
title: "Admin Log - 2024-09-27"
|
||||
---
|
||||
|
||||
We are up and running on the server! Hell yeah!
|
||||
|
||||
Next big tasks are getting n8n and budibase operating on server.
|
||||
|
||||
So excited for this shift. The system is coming together.
|
13
mkdocs/docs/archive/repo.archive/Admin Log ⏭/2024-10-02.md
Normal file
@ -0,0 +1,13 @@
|
||||
---
|
||||
title: "Admin Log - 2024-10-02"
|
||||
---
|
||||
|
||||
Been sick the last few days, so been down in the dumps.
|
||||
|
||||
Today managed to get the server online with budibase and n8n
|
||||
|
||||
got through the simple set up for the smtp server
|
||||
|
||||
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.
|
||||
|
||||
nifty little qr code generator that can be integrated somewhere: https://github.com/bizzycola/qrcode-generator?ref=noted.lol
|
15
mkdocs/docs/archive/repo.archive/Admin Log ⏭/2024-10-04.md
Normal file
@ -0,0 +1,15 @@
|
||||
---
|
||||
title: "Admin Log - 2024-10-04"
|
||||
---
|
||||
|
||||
A rough week... development slowed to a crawl.
|
||||
|
||||
Deployed several demo [bnkops Simple Targeter](../Website%20Manuals%20🤓/bnkops%20Simple%20Targeter.md)
|
||||
|
||||
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
|
||||
|
||||
Did some work on the [The Bunker Ops Server Build-Out](../Free%20Office%20Software%20Stack%20🤯/The%20Bunker%20Ops%20Server%20Build-Out.md)
|
||||
|
||||
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?
|
@ -0,0 +1,7 @@
|
||||
---
|
||||
title: "Admin Log - 2024-10-05"
|
||||
---
|
||||
|
||||
Update today to simple targeter - can now just do a simple form state
|
||||
|
||||
Need to make a manual for simple targeter
|
13
mkdocs/docs/archive/repo.archive/Admin Log ⏭/2024-10-09.md
Normal file
@ -0,0 +1,13 @@
|
||||
---
|
||||
title: "Admin Log - 2024-10-09"
|
||||
---
|
||||
|
||||
phew almost over sickness
|
||||
|
||||
Sent some emails to folks regarding progress. Need to send out a bit more stuff.
|
||||
|
||||
Got listmonk online. Going to use it to run newsletters. Hoping that we can connect it to budibase etc.
|
||||
|
||||
So far so good. List monk is pretty slick.
|
||||
|
||||
Next up is getting databases all centralized for cleaner management.
|
12
mkdocs/docs/archive/repo.archive/Admin Log ⏭/2024-10-16.md
Normal file
@ -0,0 +1,12 @@
|
||||
---
|
||||
title: "Admin Log - 2024-10-16"
|
||||
---
|
||||
|
||||
Finally past the sickness! Super jazzed about that lol
|
||||
|
||||
Getting back into development. Need to do the following stuff:
|
||||
|
||||
- Try some dirty build settings for the site generation. With more people coming online, going to start needing new solutions here.
|
||||
- Finishing and launching beta [bnkops Simple Targeter](../Website%20Manuals%20🤓/bnkops%20Simple%20Targeter.md)
|
||||
- Start communicating the project on large and look for contributors
|
||||
|
@ -0,0 +1,7 @@
|
||||
---
|
||||
title: "Admin Log - 2024-10-18"
|
||||
---
|
||||
|
||||
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.
|
||||
|
||||
Simple targeter coming along quickly.
|
@ -0,0 +1,9 @@
|
||||
---
|
||||
title: "Admin Log - 2024-10-21"
|
||||
---
|
||||
|
||||
Hello!
|
||||
|
||||
Today did some more updating to the simple target app. Got the terms of service, aftercare, and other landing pages done.
|
||||
|
||||
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.
|
@ -0,0 +1,39 @@
|
||||
---
|
||||
title: Newsletter 1.0
|
||||
---
|
||||
# Update 1.0 - Excalidraw + Listmonk
|
||||
|
||||
{{ .Subscriber.Name }},
|
||||
|
||||
We hope all is well with you! The fall is the most beautiful time of year.
|
||||
## PSA: Don't get trapped on Canva
|
||||
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.
|
||||
|
||||
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).
|
||||
### [Instructions here. ](https://www.canva.com/help/bulk-download-data-uploads-designs/)
|
||||
|
||||

|
||||
## [Excalidraw](https://excalidraw.bnkops.com/)
|
||||
If you are open to making the transition off Canva, we have a forever free alternative for you; [excalidraw](https://excalidraw.bnkops.com/).
|
||||
|
||||
We are hosting a excalidraw instance to ensure that the current version remains free for you forever. We commit to keeping it updated.
|
||||
|
||||
Want to learn the system? Excalidraw has a [youtube channel. ](https://www.youtube.com/@excalidraw)
|
||||
|
||||
Deploy your own excalidraw app with [instructions here.](https://docs.excalidraw.com/docs/introduction/contributing)
|
||||
## Bonus - [Listmonk](https://listmonk.app/)
|
||||
bnkops is currently testing [listmonk](https://listmonk.app/). Listmonk is a replacement for Mailchimp or other software for newsletter/campaign management.
|
||||
|
||||
Can see instructions for getting it online on our [server build out. ](https://repo.bnkops.com/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out.html)
|
||||
|
||||
We can't recommend it hearidly until we use it for awhile however working well so far. [Can see it backed into the repo. ](https://repo.bnkops.com/Home.html)
|
||||
|
||||
## Savings
|
||||
These two software replacements combined save the average user:
|
||||
|
||||
- Canva - $130 a year
|
||||
- Mailchimp - (minimum) $360 a year
|
||||
|
||||
The [server stack](https://repo.bnkops.com/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out.html) 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.
|
||||
|
||||
|
138
mkdocs/docs/archive/repo.archive/Admin Log ⏭/Newsletter 1.1.md
Normal file
@ -0,0 +1,138 @@
|
||||
---
|
||||
title: Newsletter 1.1
|
||||
---
|
||||
# Hello Friends!
|
||||
|
||||
Bnkops is thrilled to have been **accepted for [Proton](https://proton.me/) Mails SMTP** (simple mail transfer protocol) services!
|
||||
|
||||

|
||||
|
||||
This means that we are able to send programmatic encrypted emails from our services! We are excited because this:
|
||||
|
||||
- uncaps the amount of email we can send through our hosted apps like Simple Targeter or the bnkops Server Stack,
|
||||
- allows us to fully automate inbox monitoring with Daisy on a much higher security standard, and
|
||||
- gets our entire operating stack off of corporate services like Google, Amazon, and Microsoft.
|
||||
|
||||
`well bunker admin, isn't proton just another corporation?`
|
||||
|
||||
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](https://proton.me/about).
|
||||
|
||||
`Cool! How do we get these kind of services?`
|
||||
|
||||
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:
|
||||
|
||||

|
||||
|
||||
`Okay! That seems like more work then just using the free email and smtp services at other places?`
|
||||
|
||||
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.
|
||||
|
||||
`Genocide? Donald Trump? The heck?`
|
||||
|
||||
Yes friend! [Google](https://time.com/6966102/google-contract-israel-defense-ministry-gaza-war/), [Microsoft](https://www.calcalistech.com/ctechnews/article/j71glnz2w), and [Amazon](https://theintercept.com/2024/05/01/google-amazon-nimbus-israel-weapons-arms-gaza/) are all backers of the genocide in Gaza. [Donald Trump](https://www.digitaltrends.com/web/the-political-software-used-by-trump-and-the-brexit-campaign/) is Nationbuilders largest customer (i just learned it was also the Brexit campaigns choice software 🙃). These are mercenary software; every dollar and data point we give them enables crimes against humanity.
|
||||
|
||||
`Damn dude, that is a lot for a Tuesday morning`
|
||||
|
||||
Truly. This information is annoying, heavy, and frustrating. It is why we are so excited to be using Proton 🙂
|
||||
## Funner News
|
||||
Today we are on-boarding contributors to the [repo](https://repo.bnkops.com/Home.html)! Excited for some folks to start producing content using our system.
|
||||
|
||||
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.
|
||||
|
||||

|
||||
|
||||
<style>
|
||||
.listmonk-form {
|
||||
background-color: #ffc107 !important;
|
||||
color: #1c1f26 !important;
|
||||
font-family: Arial, sans-serif !important;
|
||||
padding: 20px !important;
|
||||
width: 100% !important;
|
||||
box-sizing: border-box !important;
|
||||
margin: 20px 0 !important;
|
||||
display: flex !important;
|
||||
flex-wrap: wrap !important;
|
||||
align-items: center !important;
|
||||
gap: 10px !important;
|
||||
}
|
||||
|
||||
.listmonk-form h3 {
|
||||
color: #1c1f26 !important;
|
||||
font-size: 22px !important;
|
||||
margin: 0 0 15px 0 !important;
|
||||
font-weight: bold !important;
|
||||
width: 100% !important;
|
||||
}
|
||||
|
||||
.listmonk-form input[type="email"],
|
||||
.listmonk-form input[type="text"] {
|
||||
background-color: #fff !important;
|
||||
border: 1px solid #e0a800 !important;
|
||||
color: #1c1f26 !important;
|
||||
padding: 10px !important;
|
||||
border-radius: 4px !important;
|
||||
font-size: 14px !important;
|
||||
flex: 1 !important;
|
||||
min-width: 150px !important;
|
||||
max-width: 250px !important;
|
||||
}
|
||||
|
||||
.listmonk-form input[type="submit"] {
|
||||
background-color: #1c1f26 !important;
|
||||
color: #fff !important;
|
||||
padding: 10px 20px !important;
|
||||
border: none !important;
|
||||
border-radius: 4px !important;
|
||||
cursor: pointer !important;
|
||||
font-weight: bold !important;
|
||||
font-size: 16px !important;
|
||||
transition: background-color 0.3s !important;
|
||||
flex: 0 0 auto !important;
|
||||
}
|
||||
|
||||
.listmonk-form input[type="submit"]:hover {
|
||||
background-color: #2c3038 !important;
|
||||
}
|
||||
|
||||
.listmonk-form label {
|
||||
color: #1c1f26 !important;
|
||||
font-weight: normal !important;
|
||||
font-size: 14px !important;
|
||||
display: inline-flex !important;
|
||||
align-items: center !important;
|
||||
margin-right: 15px !important;
|
||||
flex: 1 1 100% !important; /* Make the label take full width */
|
||||
}
|
||||
|
||||
.listmonk-form input[type="checkbox"] {
|
||||
margin-right: 5px !important;
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
.listmonk-form {
|
||||
flex-direction: column !important;
|
||||
align-items: stretch !important;
|
||||
}
|
||||
|
||||
.listmonk-form input[type="email"],
|
||||
.listmonk-form input[type="text"],
|
||||
.listmonk-form input[type="submit"] {
|
||||
width: 100% !important;
|
||||
max-width: none !important;
|
||||
margin-right: 0 !important;
|
||||
margin-bottom: 10px !important;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
<form method="post" action="https://listmonk.bnkops.com/subscription/form" class="listmonk-form">
|
||||
<h3>Subscribe for Updates</h3>
|
||||
<input type="hidden" name="nonce" />
|
||||
<input type="email" name="email" required placeholder="E-mail" />
|
||||
<input type="text" name="name" placeholder="Name (optional)" />
|
||||
<label>
|
||||
<input type="checkbox" name="l" checked value="65911aa2-801a-472c-a3ad-88b3b1d0d971" />
|
||||
Periodic Updates (~1 Weekly)
|
||||
</label>
|
||||
<input type="submit" value="Subscribe" />
|
||||
</form>
|
@ -0,0 +1,67 @@
|
||||
---
|
||||
title: Newsletter 1.2
|
||||
---
|
||||
# Canva Be Damned: A Full Alt in Obsidian + Simple Targeter Beta - Bnkops Newsletter 1.2
|
||||
# Hi Friends,
|
||||
I'm back from sickness, feeling speedy, and excited about this update! You're getting two updates this week 😮
|
||||
|
||||

|
||||
# Canva Be Damned
|
||||
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.
|
||||
|
||||
To start getting off Canva, I've already set up a standalone alternative online: [excalidraw.bnkops.com](https://excalidraw.bnkops.com/)
|
||||
|
||||
However, after some research this morning, I found out that the free and open-source software [Excalidraw](https://excalidraw.com/) is already integrated into [Obsidian](https://obsidian.md/) 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.
|
||||
|
||||
To install:
|
||||
|
||||
1. Go to settings (gear icon at the bottom left of Obsidian)
|
||||
2. Click on "Community Plugins"
|
||||
3. Search for Excalidraw
|
||||
|
||||
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.
|
||||
|
||||
Why is this exciting?
|
||||
|
||||
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](https://repo.bnkops.com/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out.html). If you've been trained on [Syncthing](https://syncthing.net/), 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.
|
||||
|
||||
On the quest to replace Nationbuilder, I've inadvertently also replaced Canva/Photoshop. Pretty good deal!
|
||||
# Simple Targeter - BETA Testing
|
||||
|
||||

|
||||
|
||||
Simple Targeter has been deployed for public consumption! Special thanks to Trans.Rights.YEG for picking this up and running with it.
|
||||
|
||||
Check it out [here](https://budibase.bnkops.com/app/sp-trans-rights-yeg#/public)
|
||||
|
||||
So far, just some simple back-end issues needed work; no major app breakages. I look forward to getting more feedback.
|
||||
|
||||
I'm prioritizing a major update to this system, which includes:
|
||||
|
||||
* **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.
|
||||
* **Manuals**: Needing to write documentation for the use of the app. This is a secondary-priority.
|
||||
* **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.
|
||||
# Feedback + Training
|
||||
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.
|
||||
|
||||
> How it feels to try and communicate this project when I am too plugged in:
|
||||
>
|
||||

|
||||
|
||||
Bnkops is dedicated to getting all allies onto their own dedicated servers so we can [collectively build resilience to corporate systems](https://repo.bnkops.com/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.html) that are sucking energy, time, and dollars out of our communities.
|
||||
|
||||
I've been thinking on how to better approach this dream. After having trained just a handful of people on the basic systems (w[e have new contributors on the repo btw](https://repo.bnkops.com/indoctrinationmachine/The%20Revolution%20must%20center%20pleasure%20%28and%20other%20cool%20wallpapers%29.html) 🙂), I'm starting to understand that the best way forward is likely through facilitated in-person sessions.
|
||||
|
||||
The tldr is: I need to stop developing and start communicating with people in real life!
|
||||
|
||||
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.
|
||||
# Thanks for Reading!
|
||||
|
||||
Much appreciated y'all.
|
||||
|
||||
Cheers,
|
||||
Bunker Admin
|
||||
|
||||
# Bonus - Wallpaper From Indoctrinationmation
|
||||
|
||||

|
@ -0,0 +1,30 @@
|
||||
---
|
||||
title: Newsletter 1.3
|
||||
---
|
||||
Hi Friends,
|
||||
|
||||
Fall is here in full swing! It is by far my favorite season; feels good on the bones and the colors are gorgeous.
|
||||
|
||||
The fall also makes a stark reality more true; winter is coming. Friend of the bnkops Bradley Lafortune has [written a great overview](https://edmontonjournal.com/opinion/columnists/opinion-lets-turn-edmontons-surplus-school-sites-into-affordable-housing) of what this means for our community and has called for more housing to be built.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
### [Please share and sign. ](https://budibase.bnkops.com/app/sp-housing#/public)
|
||||
|
||||
# Simple Target
|
||||
This small campaign also highlights some updates to Simple Target. The Aftercare page is now live and automated follow up email is coming soon.
|
||||
|
||||

|
||||
|
||||
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.
|
||||
|
||||
You can learn how to deploy these system for free [bnkops Simple Targeter](../Website%20Manuals%20🤓/bnkops%20Simple%20Targeter.md)
|
||||
# [Twitter is Dead, Long Live X --- Why You Should Abandon X](../thatreallyblondehuman/Thoughts%20🤔/Twitter%20is%20Dead,%20Long%20Live%20X%20---%20Why%20You%20Should%20Abandon%20X.md)
|
||||
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.
|
||||
|
||||
That's all folks! Thanks for tuning in.
|
||||
|
||||

|
@ -0,0 +1,49 @@
|
||||
Hello again Friend!
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
# Introducing **bnkops Live Site**!
|
||||
## 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.
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
## Using this system, combined with already developed parts of the [The Bunker Ops Server Build-Out](https://repo.bnkops.com/Free%20Office%20Software%20Stack%20%F0%9F%A4%AF/The%20Bunker%20Ops%20Server%20Build-Out.html), a person will be able to generate a dense, responsive, and mobile ready website with a focus on political action.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||

|
||||
|
||||
With the ability to write your website entirely in [Markdown](https://repo.bnkops.com/Website%20Manuals%20%F0%9F%A4%93/Simple%20Markdown%20Manual.html), you can pass content effortlessly between [site](https://repo.bnkops.com/Website%20Manuals%20%F0%9F%A4%93/How%20to%20Replicate%20this%20Repo.html), newsletter, [simple targeter](https://repo.bnkops.com/Website%20Manuals%20%F0%9F%A4%93/bnkops%20Simple%20Targeter.html), 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](https://obsidian.md/)) and publish it instantly. Everything is being made mobile friendly, so we can all spend less time [raging on X](https://repo.bnkops.com/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Twitter%20is%20Dead%2C%20Long%20Live%20X%20---%20Why%20You%20Should%20Abandon%20X.html), and more time writing content ;)
|
||||
|
||||
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.
|
||||
|
||||

|
||||
|
||||
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.
|
||||
|
||||
Generated websites are mobile friendly, social media ready, feature packed, and loaded with customization. You can keep it as simple as a the [repo](https://repo.bnkops.com/Home.html) or deploy something with incredible [depth](https://squidfunk.github.io/mkdocs-material/setup/). 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.
|
||||
|
||||
As one of our partners said **"oh so its just myspace for politics?"**
|
||||
### Deploy your thoughts, as fast as they come to you, and engage a audience to take political action. For free.
|
||||
|
||||
Everything we develop will be [published in bnkops manuals.](https://repo.bnkops.com/What%20is%20a%20Repo%20and%20Why%20Make%20One%20%F0%9F%92%AD%20%F0%9F%8D%84.html) This is the promise of our development journey. Join us in the digital revolution against [surveillance capitalism.](https://www.youtube.com/watch?v=KKv2ZDbMyb4)
|
||||
|
||||
**Speaking of capitalism!**
|
||||
|
||||
I did also manage to write a unhinged blog this weekend about the Political Industrial Complex:
|
||||
|
||||
**[Distributed Digital Organizing is The Way Out](https://repo.bnkops.com/thatreallyblondehuman/Thoughts%20%F0%9F%A4%94/Distributed%20Digital%20Organizing%20is%20The%20Way%20Out.html)**
|
||||
|
||||
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 😅
|
||||
|
||||
That is all for now folks. Stay sharp out there!
|
||||
|
||||
Bonus: I know that some new contributor content has recently been posted to the [repo](https://repo.bnkops.com/Home.html). Find it if you can.
|
||||
|
||||
|
||||
|
@ -0,0 +1,42 @@
|
||||
Howdy {{ .Subscriber.Name }},
|
||||
|
||||
# Sneak Peek [Change Maker V3](https://changemaker.bnkops.com) Demo
|
||||
### Build Your Site, Keep Your Freedom
|
||||
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.
|
||||
|
||||
- Privacy-first: Your content stays under your control
|
||||
- Mobile-ready: Write and manage from any device
|
||||
- Simple: If you can type, you can make a site
|
||||
- Smart: Built-in search, dark mode, and more
|
||||
|
||||
Everything, even this newsletter, built, served, and operating from bnkops servers.
|
||||
|
||||
Check out the full feature set at: [https://changemaker.bnkops.com](https://changemaker.bnkops.com)
|
||||
|
||||
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.
|
||||
# [Encourage Folks to Subscribe to Get Code](https://changemaker.bnkops.com/)
|
||||
|
||||
# Personal Update
|
||||
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
|
||||
|
||||
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.
|
||||
|
||||
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 – hence, the couch and coffee setup.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
Any how...
|
||||
|
||||
The journey has been solitary – from writing dense [theory](https://repo.bnkops.com/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.html) 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.
|
||||
|
||||
As for V4? It'll arrive when it's ready – and I promise to stop accidentally smacking the server during midnight rolls
|
||||
|
||||
### So I am poud to announce our first [product](https://changemaker.bnkops.com/bnkops%20Deploy/). More updates coming soon.
|
||||
|
||||
### Respect and solidarity,
|
||||
**Bunker Admin,**
|
||||
thatreallyblondehuman
|
||||
|
||||
## 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
|
BIN
mkdocs/docs/archive/repo.archive/Admin Log ⏭/aftercare.png
Normal file
After Width: | Height: | Size: 40 KiB |
BIN
mkdocs/docs/archive/repo.archive/Admin Log ⏭/bnkopsupdate.gif
Normal file
After Width: | Height: | Size: 336 MiB |
BIN
mkdocs/docs/archive/repo.archive/Admin Log ⏭/demosite2.png
Normal file
After Width: | Height: | Size: 62 KiB |
BIN
mkdocs/docs/archive/repo.archive/Admin Log ⏭/livesitedemo1.png
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
mkdocs/docs/archive/repo.archive/Admin Log ⏭/simplesite3.png
Normal file
After Width: | Height: | Size: 20 KiB |
BIN
mkdocs/docs/archive/repo.archive/Admin Log ⏭/smtpsubmission.png
Normal file
After Width: | Height: | Size: 24 KiB |
BIN
mkdocs/docs/archive/repo.archive/Admin Log ⏭/websitemaker.png
Normal file
After Width: | Height: | Size: 310 KiB |
@ -0,0 +1,95 @@
|
||||
|
||||
[Bot campaign backing Pierre Poilievre looks the work of an amateur, experts say | CBC News](https://www.cbc.ca/news/politics/poilievre-rally-kirkland-conservative-bots-amateur-1.7296988)
|
||||
|
||||
[Politics](https://www.cbc.ca/news/politics)
|
||||
|
||||
A rapid assessment of the suspected bot campaign associated with Conservative Leader Pierre Poilievre’s recent speaking event in northern Ontario was likely the work of an amateur.
|
||||
|
||||
## Social Media Lab calls the bot campaign a 'crude and amateurish exercise'
|
||||
|
||||

|
||||
|
||||
Conservative Leader Pierre Poilievre speaks during a rally in Montreal on Wednesday, June 19, 2024. (THE CANADIAN PRESS/Christinne Muschi)
|
||||
|
||||
Academics who study social media say a suspected bot campaign associated with Conservative Leader Pierre Poilievre's recent speaking event in northern Ontario likely was the work of an amateur.
|
||||
|
||||
A rapid analysis conducted by Toronto Metropolitan University's Social Media Lab (SML) concluded the bot campaign does not have the fingerprints of a sophisticated actor, but didn't say who might have been behind it.
|
||||
|
||||
In July, the social media platform X was inundated with posts following Poilievre's tour of Northern Ontario.
|
||||
|
||||
These posts claimed to be from people who attended Poilievre's event in Kirkland Lake, Ont. They were actually generated by accounts in Russia, France and other places, and many of them had similar messaging.
|
||||
|
||||
Academics at SML manually sifted through an estimated 200 bot accounts associated with the campaign. The lab said some of the accounts were created within the last two months.
|
||||
|
||||
- [Online bot campaign backing Pierre Poilievre prompts call for probe by election commissioner](https://www.cbc.ca/news/politics/poilievre-rally-kirkland-conservative-bots-1.7287901)
|
||||
|
||||
"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](https://socialmedialab.ca/2024/08/11/welcome-to-the-battle-of-the-bots-canadian-edition/).
|
||||
|
||||
"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."
|
||||
|
||||
SML compared the northern tour bot campaign to a Chinese government-linked ["spamouflage campaign](https://www.canada.ca/en/global-affairs/news/2023/10/rapid-response-mechanism-canada-detects-spamouflage-campaign-targeting-members-of-parliament.html)" in 2023.
|
||||
|
||||
- [China linked to propaganda campaign targeting Trudeau, Poilievre, says Global Affairs](https://www.cbc.ca/news/politics/china-spamouflage-mps-1.7005066)
|
||||
|
||||
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.
|
||||
|
||||
Global Affairs Canada's Rapid 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.
|
||||
|
||||
***LISTEN | What's behind the alleged Kirkland Lake bot campaign?***
|
||||
|
||||

|
||||
|
||||
The House9:55Bots buzzing with energy!
|
||||
|
||||
After a series of strangely similar tweets appeared on X from social media accounts purporting to be “buzzing with energy” after a Pierre Poilievre rally, ProPublica’s Craig Silverman explains who stands to gain when bots push out political messaging.
|
||||
|
||||
The NDP called on the elections commissioner to investigate what was behind the army of bots supporting Poilievre.
|
||||
|
||||
The Conservative Party of Canada has denied any role in the bot campaign, a position it reiterated again on Friday.
|
||||
|
||||
"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.
|
||||
|
||||

|
||||
|
||||
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)
|
||||
|
||||
The NDP also called for the elections commissioner to get involved.
|
||||
|
||||
"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 NDP's Charlie Angus said in a media statement.
|
||||
|
||||
"This is why elections Canada needs to investigate and lay out clear ground rules."
|
||||
|
||||
Angus, the MP for Timmins—James Bay, represents the area where Poilievre held the rally.
|
||||
|
||||
***WATCH: NDP raising 'legitimate' questions about bot farms, Holland says***
|
||||
|
||||

|
||||
|
||||
### NDP raising 'fair and legitimate' questions about bot farms, Holland says
|
||||
|
||||
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.
|
||||
|
||||
Researchers are calling the Kirkland Lake bot campaign an example of a "copypasta" attack. The term is derived from copy-and-paste — selecting a piece of text and copying it elsewhere.
|
||||
|
||||
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](https://www.cdmrn.ca/publications/incident-update-bot-campaign-most-likely-the-work-of-an-amateur-reports-cdmrn-partner-the-social-media-lab), it's frequently used to generate memes or to confuse people who don't recognize it as a joke.
|
||||
|
||||
The Canadian Digital Media Research Network (CDRN) is a new organization that gathers social media researchers and experts from around Canada who monitor the online world.
|
||||
|
||||
McGill University's Media Ecosystem Observatory and the University of Toronto administer the CDRN. The federal government [has committed to investing $5.5 million](https://www.canada.ca/en/democratic-institutions/news/2023/06/government-of-canada-working-with-civil-society-to-strengthen-defences-against-online-disinformation.html) in the network over the next several years — one of a series of measures the federal government announced in 2023 to combat the threat of foreign interference, misinformation and disinformation.
|
||||
|
||||
The CDRN's Jennie Phillips said the network is treating this as both a minor incident and a learning experience.
|
||||
|
||||
"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."
|
||||
|
||||
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](https://www.cdmrn.ca/incidents).
|
||||
|
||||
## ABOUT THE AUTHOR
|
||||
|
||||

|
||||
|
||||
David Thurton is a senior reporter in CBC's Parliamentary Bureau. He covers daily politics in the nation’s capital and specializes in environment and energy policy. Born in Canada but raised in Trinidad and Tobago, he’s moved around more times than he can count. He’s worked for CBC in several provinces and territories, including Alberta and the Northwest Territories. He can be reached at david.thurton@cbc.ca
|
||||
|
||||
- [LinkedIn](https://www.linkedin.com/in/dthurton/)
|
||||
- [Twitter](https://twitter.com/CBCDavid)
|
||||
|
||||
With files from Catharine Tunney
|
@ -0,0 +1,78 @@
|
||||
|
||||
[Bots on X worse than ever according to analysis of 1m tweets during first Republican primary debate](https://www.theguardian.com/technology/2023/sep/09/x-twitter-bots-republican-primary-debate-tweets-increase)
|
||||
|
||||
Bot activity on the platform formerly known as Twitter is worse than ever, according to researchers, despite X’s new owner, Elon Musk, claiming a crackdown on bots as one of his key reasons for buying the company.
|
||||
|
||||
“It is clear that X is not doing enough to moderate content and has no clear strategy for dealing with political disinformation,” associate professor Dr Timothy Graham tells Guardian Australia.
|
||||
|
||||
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.
|
||||
|
||||
Graham and the PhD candidate Kate FitzGerald [recently analysed 1m tweets](https://twitter.com/timothyjgraham/status/1699224354004107405) surrounding the first Republican primary debate, along with Tucker Carlson’s interview with the former US president Donald Trump streamed on X at the same time.
|
||||
|
||||

|
||||
|
||||
Post volume on X during the first Republican primary debate and Tucker Carlson’s Donald Trump interview. Photograph: Timothy Graham and Kate FitzGerald, QUT
|
||||
|
||||
Previously, the researchers were able to analyse 10m tweets a month free of charge, but after Musk restricted access to the company’s 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.
|
||||
|
||||
“That purchase did not feel good,” Graham says.
|
||||
|
||||
- **[Sign up for Guardian Australia’s free morning and afternoon email newsletters for your daily news roundup](https://www.theguardian.com/australia-news/2022/oct/29/email-newsletters-guardian-australia-best-daily-news-emails-newsletter-free-sign-up-inbox-subscribe-headlines?CMP=copyembed)**
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
They analysed tweets using 11 hashtags and keywords and used those tweets to detect potential bot activity.
|
||||
|
||||

|
||||
|
||||
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
|
||||
|
||||
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.
|
||||
|
||||
“We 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,” he says.
|
||||
|
||||
If two accounts did this five times, the researchers took this as a sign that they were automated accounts.
|
||||
|
||||
Onenetwork of bots discovered was connected to an account calling itself “MediaOpinion19”. The account was created in September last year, and had tweeted on average 662 times a day – or once every two minutes. It was the central node in a network of pro-Trump accounts that retweeted the central account’s tweets.
|
||||
|
||||
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 “news trolls” identified during the 2016 presidential election](https://www.theguardian.com/world/2022/may/01/troll-factory-spreading-russian-pro-war-lies-online-says-uk).
|
||||
|
||||
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.
|
||||
|
||||
[skip past newsletter promotion](https://www.theguardian.com/technology/2023/sep/09/x-twitter-bots-republican-primary-debate-tweets-increase/#EmailSignup-skip-link-18)
|
||||
|
||||
after newsletter promotion
|
||||
|
||||
“In terms of the bots that we identify, Twitter or Xis not banning them. We’ve only found one or two that’s actually getting suspended, but others \[remain\] in the same network,” she says.
|
||||
|
||||
“And so whatever method they’re using is poor.”
|
||||
|
||||
She says many of the human-backed hyperpartisan clusters promoting misinformation identified in the report were verified by the platform under Musk’s new system, which allows people to pay for the blue-tick verification on X.
|
||||
|
||||
Around the time of Musk’s first attempt to buy Twitter, he posted: “If our Twitter bid succeeds, we will defeat the spam bots or die trying!”
|
||||
|
||||
Musk reportedly claimed in June that the company “had eliminated at least 90% of scams”.
|
||||
|
||||
- **[Sign up for a weekly email featuring our best reads](https://www.theguardian.com/australia-news/2021/dec/21/sign-up-for-five-great-reads-guardian-australias-wrap-of-our-best-summer-stories)**
|
||||
|
||||
But scam accounts are still prominent on the platform, with [several verified accounts](https://twitter.com/joshgnosis/status/1699550249902391459) seen as late as Thursday this week promoting long-known investment scams.
|
||||
|
||||
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.
|
||||
|
||||
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 “engine room of social media”.
|
||||
|
||||
“Everything goes in and out of Twitter because journalists and elites in the public sphere think that it matters … They then go and report on it,” he says.
|
||||
|
||||
“Twitter is still hanging on to its status as the centre in terms of how everything fits together. I think that it’s going to still be influential.”
|
||||
|
||||
FitzGerald says X’s influence on politics would continue, even though progressives might be shifting to other platforms.
|
||||
|
||||
“The 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,” she says.
|
||||
|
||||
“In terms of its impact on democracy, I still feel that it is maybe even more \[influential\] than it used to be because it’s less balanced than it used to be.”
|
||||
|
||||
In response to a claim on X this week that “Democrat groups buy bots” to smear people’s reputation, Musk replied: “It is impossible to tell with unverified accounts whether you’re dealing with a small or large number of real people, as sophisticated bots are virtually indistinguishable from humans.”
|
||||
|
||||
X was contacted for comment.
|
@ -0,0 +1,43 @@
|
||||
|
||||
[https://medium.com/@Yaashika/do-you-know-mushrooms-can-talk-to-each-other-b68e6e129f74](https://medium.com/@Yaashika/do-you-know-mushrooms-can-talk-to-each-other-b68e6e129f74)
|
||||
|
||||

|
||||
|
||||
When you think of organisms that can “talk” to each other, mushrooms likely aren’t 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’s dive into how this hidden underground network operates and how mushrooms “talk” to each other.
|
||||
|
||||
## The Mycelium Network: The Fungi Superhighway
|
||||
|
||||
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 “talk” to each other, sharing vital resources and even warning each other of dangers.
|
||||
|
||||
## How Do Mushrooms Communicate?
|
||||
|
||||
1. **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.
|
||||
2. **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.
|
||||
3. **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.
|
||||
|
||||
## Do Mushrooms Have a Language?
|
||||
|
||||
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 “words” or “sentences.” 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.
|
||||
|
||||
## The Wood Wide Web: Fungi and Plant Communication
|
||||
|
||||
The term “Wood Wide Web” 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.
|
||||
|
||||
## What This Means for Ecosystems
|
||||
|
||||
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.
|
||||
|
||||
## The Future of Fungi Research
|
||||
|
||||
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’s ability to detect changes in the environment could be used to monitor soil health or predict ecosystem shifts before they become visible.
|
||||
|
||||
## Conclusion: The Hidden Life of Mushrooms
|
||||
|
||||
The idea that mushrooms can communicate may seem like something out of a science fiction novel, but it’s 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.
|
||||
|
||||
The next time you see a mushroom, remember that it’s part of a vast underground network — one that is quietly but powerfully “talking” and sustaining the world around it.
|
||||
|
||||
4o
|
@ -0,0 +1,34 @@
|
||||
|
||||
[Elon Musk Fires Twitter Employees Who Criticized Him (Published 2022)](https://www.nytimes.com/2022/11/15/technology/elon-musk-twitter-fired-criticism.html#)
|
||||
|
||||
Advertisement
|
||||
|
||||
[SKIP ADVERTISEMENT](https://www.nytimes.com/2022/11/15/technology/elon-musk-twitter-fired-criticism.html#after-top)
|
||||
|
||||
Mr. Musk, who is rapidly transforming the social media company, also has cut its contractor work force.
|
||||
|
||||

|
||||
|
||||
Elon Musk, Twitter’s new owner, ordered the firings of nearly two dozen employees who had pushed back publicly and privately against him.Credit...Maja Hitij/Getty Images
|
||||
|
||||
Nov. 15, 2022
|
||||
|
||||
SAN FRANCISCO — [Elon Musk](https://www.nytimes.com/2022/05/03/technology/elon-musk-twitter-plan.html) continued cutting Twitter’s work force in his third week of owning the social media company, firing employees who had criticized him and eliminating contractors.
|
||||
|
||||
Early on Tuesday, Mr. Musk’s 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.
|
||||
|
||||
The firings followed cuts to Twitter’s 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.
|
||||
|
||||
Mr. Musk has moved quickly to [transform Twitter](https://www.nytimes.com/2022/11/11/technology/elon-musk-twitter-takeover.html) as he has painted a [grim picture of its finances](https://www.nytimes.com/2022/11/10/technology/elon-musk-twitter-employees.html). He laid off half the company’s 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 “hard core” to survive. Mr. Musk plans to reorganize the company to eliminate middle managers, six people familiar with the matter said.
|
||||
|
||||
At the same time, Mr. Musk has sought to keep Twitter’s staff motivated. On Monday, he sent employees a brief message, which was viewed by The New York Times, explaining that “exceptional amounts of stock would be awarded for exceptional performance.” Mr. Musk likened the structure to how things worked at SpaceX, his private rocket manufacturer, but provided no further details.
|
||||
|
||||
Twitter has been under financial pressure as some advertisers have backed away from it. Macy’s 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’s, urged its clients to halt their activity on Twitter in a memo citing risks that have “risen sharply to a level most would find unacceptable,” a person familiar with the memo said.
|
||||
|
||||
[Subscribe to The Times](https://www.nytimes.com/subscription?campaignId=8WXW7) to read as many articles as you like.
|
||||
|
||||
[Ryan Mac](https://www.nytimes.com/by/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](https://www.nytimes.com/by/ryan-mac)
|
||||
|
||||
[Mike Isaac](https://www.nytimes.com/by/mike-isaac) is a technology correspondent and the author of “Super Pumped: The Battle for Uber,” 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](https://www.nytimes.com/by/mike-isaac)
|
||||
|
||||
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](https://www.parsintl.com/publication/the-new-york-times/) | [Today’s Paper](https://www.nytimes.com/section/todayspaper) | [Subscribe](https://www.nytimes.com/subscriptions/Multiproduct/lp8HYKU.html?campaignId=48JQY)
|
@ -0,0 +1,26 @@
|
||||
|
||||
[Elon Musk Has Fired Twitter’s ‘Ethical AI’ Team](https://www.wired.com/story/twitter-ethical-ai-team/)
|
||||
|
||||
As more and more problems with AI have surfaced, including biases around race, gender, and age, many tech companies have installed “ethical AI” teams ostensibly dedicated to identifying and mitigating such issues.
|
||||
|
||||
Twitter’s META unit was more progressive than most in publishing details of problems with the company’s AI systems, and in allowing outside researchers to probe its algorithms for new issues.
|
||||
|
||||
Last year, after [Twitter users noticed](https://www.wired.com/story/twitter-photo-crop-algorithm-favors-white-faces-women/) 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](https://www.wired.com/story/twitters-photo-cropping-algorithm-favors-young-thin-females/) ever “bias bounty” contests, which let outside researchers test the algorithm for other problems. Last October, Chowdhury’s team also [published details of unintentional political bias](https://cdn.cms-twdigitalassets.com/content/dam/blog-twitter/official/en_us/company/2021/rml/Algorithmic-Amplification-of-Politics-on-Twitter.pdf) on Twitter, showing how right-leaning news sources were, in fact, promoted more than left-leaning ones.
|
||||
|
||||
Many outside researchers saw the layoffs as a blow, not just for Twitter but for efforts to improve AI. “What a tragedy,” [Kate Starbird](https://www.hcde.washington.edu/starbird), an associate professor at the University of Washington who studies online disinformation, wrote on Twitter.
|
||||
|
||||
“The 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,” says [Ali Alkhatib](https://ali-alkhatib.com/), director of the Center for Applied Data Ethics at the University of San Francisco.
|
||||
|
||||
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. “There aren’t many corporate ethics teams worth taking seriously,” he says. “This was one of the ones whose work I taught in classes.”
|
||||
|
||||
[Mark Riedl](https://www.cc.gatech.edu/people/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’s lives, and need to be studied. “Whether META had any impact inside Twitter is hard to discern from the outside, but the promise was there,” he says.
|
||||
|
||||
### AI Lab
|
||||
|
||||
WIRED’s resident AI expert Will Knight takes you to the cutting edge of this fast-changing field and beyond—keeping you informed about where AI and technology are headed. Delivered on Wednesdays.
|
||||
|
||||
Riedl adds that letting outsiders probe Twitter’s algorithms was an important step toward more transparency and understanding of issues around AI. “They were becoming a watchdog that could help the rest of us understand how AI was affecting us,” he says. “The researchers at META had outstanding credentials with long histories of studying AI for social good.”
|
||||
|
||||
As for Musk’s idea of open-sourcing the Twitter algorithm, [the reality would be far more complicated](https://www.wired.com/story/twitter-open-algorithm-problem/). There are many different algorithms that affect the way information is surfaced, and it’s challenging to understand them without the real time data they are being fed in terms of tweets, views, and likes.
|
||||
|
||||
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’s META group was doing. “There aren’t many groups that rigorously study their own algorithms’ biases and errors,” says Alkhatib at the University of San Francisco. “META did that.” And now, it doesn’t.
|
@ -0,0 +1,81 @@
|
||||
|
||||
|
||||
From Wikipedia, the free encyclopedia
|
||||
|
||||
<table><caption>NationBuilder</caption><tbody><tr><td colspan="2"><span><a href="https://en.wikipedia.org/wiki/File:NationBuilder_logo.png"><img src="https://upload.wikimedia.org/wikipedia/commons/thumb/6/65/NationBuilder_logo.png/220px-NationBuilder_logo.png" width="220" height="145"></a></span></td></tr><tr><th scope="row">Industry</th><td>Technology software</td></tr><tr><th scope="row">Founded</th><td>2009</td></tr><tr><th scope="row">Founder</th><td>Jim Gilliam</td></tr><tr><th scope="row">Headquarters</th><td><a href="https://en.wikipedia.org/wiki/Los_Angeles">Los Angeles</a></td></tr><tr><th scope="row"><p>Key people</p></th><td>Lea Endres <small>(Co-founder & CEO)</small><br>Jesse Haff <small>(Co-founder & VP of Design)</small></td></tr><tr><th scope="row">Website</th><td><span><a href="http://nationbuilder.com/">nationbuilder<wbr>.com</a></span></td></tr></tbody></table>
|
||||
|
||||
**NationBuilder** is a Los Angeles based [technology start-up](https://en.wikipedia.org/wiki/Technology_startup "Technology startup") that develops content management and [customer relationship management](https://en.wikipedia.org/wiki/Customer_relationship_management "Customer relationship management") (CRM) software. Although the company initially targeted [political campaigns](https://en.wikipedia.org/wiki/Political_campaigns "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.[^1] The software uses [voter](https://en.wikipedia.org/wiki/Voter "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](https://en.wikipedia.org/wiki/Centralisation "Centralisation"), build and manage campaigns by integrating various communication tools like websites, newsletters, text messaging and [social media channels](https://en.wikipedia.org/wiki/Social_media_use_in_politics "Social media use in politics") under one platform.[^ftpickard2019-2][^zhoucnet18-3]
|
||||
|
||||
Among other features, the software enables users to quickly create [websites](https://en.wikipedia.org/wiki/Website "Website"), build databases through registrations, send targeted [newsletters](https://en.wikipedia.org/wiki/Newsletter "Newsletter"), [analyse data](https://en.wikipedia.org/wiki/Data_analysis "Data analysis") from multiple sources and leverage [micro-donations](https://en.wikipedia.org/wiki/Micro-donations "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](https://en.wikipedia.org/wiki/Database "Database") 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.[^chrisobrienvb2019-4][^bradjonesdt2019-5][^ballscolaa12-6][^ftpickard2019-2]
|
||||
|
||||
NationBuilder was founded in 2009 in Los Angeles by [Jim Gilliam](https://en.wikipedia.org/w/index.php?title=James_Gilliam_\(entrepreneur\)&action=edit&redlink=1 "James Gilliam (entrepreneur) (page does not exist)") and launched in 2011. In 2012 [Joe Green](https://en.wikipedia.org/wiki/Joe_Green_\(entrepreneur\) "Joe Green (entrepreneur)") joined NationBuilder as co-founder and president. He left that role 11 months later in February 2013.[^chrisobrienvb2019-4][^shontellforbes13-7][^nationbuildermyths-8]
|
||||
|
||||
Gilliam was previously a [movie-maker](https://en.wikipedia.org/wiki/Movie_maker "Movie maker") who co-founded [Brave New Films](https://en.wikipedia.org/wiki/Brave_New_Films "Brave New Films") with [Robert Greenwald](https://en.wikipedia.org/wiki/Robert_Greenwald "Robert Greenwald") and had sought funding for his films through [crowd-sourcing](https://en.wikipedia.org/wiki/Crowd-sourcing "Crowd-sourcing").[^ftpickard2019-2] Green, who studied [organizing](https://en.wikipedia.org/wiki/Community_organizing "Community organizing") at [Harvard](https://en.wikipedia.org/wiki/Harvard "Harvard") and was [Mark Zuckerberg](https://en.wikipedia.org/wiki/Mark_Zuckerberg "Mark Zuckerberg")'s [roommate](https://en.wikipedia.org/wiki/Roommate "Roommate"), is also the co-founder of the [Causes Facebook app](https://en.wikipedia.org/wiki/Causes_\(company\) "Causes (company)"); he left NationBuilder in 2013.[^ballscolaa12-6][^shontellforbes13-7]
|
||||
|
||||
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.[^ballscolaa12-6] In 2015 it has helped raise $264 million, recruit over one million volunteers and coordinate some 129,000 events.[^chmielewskivox16-9]
|
||||
|
||||
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](https://en.wikipedia.org/wiki/Data_protection "Data protection") and [privacy laws](https://en.wikipedia.org/wiki/Privacy_law "Privacy law") are in effect since 2018.[^chrisobrienvb2019-4][^pereiraforbes12-10]
|
||||
|
||||
[Scottish National Party](https://en.wikipedia.org/wiki/Scottish_National_Party "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".[^scotexpress18-11]
|
||||
|
||||
Investors in NationBuilder include [Chris Hughes](https://en.wikipedia.org/wiki/Chris_Hughes "Chris Hughes") - the [Facebook](https://en.wikipedia.org/wiki/Facebook "Facebook") co-founder, [Sean Parker](https://en.wikipedia.org/wiki/Sean_Parker "Sean Parker") - first president of Facebook and co-founder of [Napster](https://en.wikipedia.org/wiki/Napster "Napster") and Causes, [Dan Senor](https://en.wikipedia.org/wiki/Dan_Senor "Dan Senor") - the former Republican foreign-policy adviser and [Ben Horowitz](https://en.wikipedia.org/wiki/Ben_Horowitz "Ben Horowitz"), co-founder of [Andreessen Horowitz](https://en.wikipedia.org/wiki/Andreessen_Horowitz "Andreessen Horowitz"). In 2012, it has raised $6.3 million in funding from a number of investors.[^pereiraforbes12-10][^chmielewskivox16-9]
|
||||
|
||||
The software is reported to have played a role in some public elections in Europe, the US and New Zealand,[^chrisobrienvb2019-4][^bradjonesdt2019-5][^pereiraforbes12-10] as well as non-profit initiatives,[^12] and political parties in Australia.[^13] Notable users include [Bernie Sanders](https://en.wikipedia.org/wiki/Bernie_Sanders "Bernie Sanders"), [Mitch McConnell](https://en.wikipedia.org/wiki/Mitch_McConnell "Mitch McConnell"), [Andrew Yang](https://en.wikipedia.org/wiki/Andrew_Yang "Andrew Yang"), [Theresa May](https://en.wikipedia.org/wiki/Theresa_May "Theresa May"), [Amnesty International](https://en.wikipedia.org/wiki/Amnesty_International "Amnesty International"), the [NAACP](https://en.wikipedia.org/wiki/NAACP "NAACP") and [Donald Trump](https://en.wikipedia.org/wiki/Donald_Trump "Donald Trump").[^14]
|
||||
|
||||
[La République En Marche](https://en.wikipedia.org/wiki/La_R%C3%A9publique_En_Marche "La République En Marche") used NationBuilder to help in the 2017 [National Assembly](https://en.wikipedia.org/wiki/French_national_assembly "French national assembly").[^chrisobrienvb2019-4][^barneythompsontft2018-15][^mikeovoa18-16]
|
||||
|
||||
NationBuilder's services are used by many New Zealand political parties,[^17] including in the campaigns of both the National and Labour parties in the [2017 New Zealand general election](https://en.wikipedia.org/wiki/2017_New_Zealand_general_election "2017 New Zealand general election").[^18][^19]
|
||||
|
||||
Despite better data protection and privacy laws in the [UK](https://en.wikipedia.org/wiki/UK "UK") and [EU](https://en.wikipedia.org/wiki/EU "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](https://en.wikipedia.org/wiki/Brexit "Brexit").[^chrisobrienvb2019-4] The company later made a public announcement that both sides in the Brexit campaign have used its software.[^barneythompsontft2018-15][^mikeovoa18-16]
|
||||
|
||||
NationBuilder was used in the Donald Trump presidential campaign to advance his election efforts and eventually win the 2016 presidential race.[^chmielewskivox16-9] Jill Stein of the Green Party,[^20][^21] Republican [Rick Santorum](https://en.wikipedia.org/wiki/Rick_Santorum "Rick Santorum"),[^22] and independent supporters of various candidates all used NationBuilder during their 2016 runs for president.[^23]
|
||||
|
||||
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.[^zhoucnet18-3]
|
||||
|
||||
[^1]: ["NationBuilder Review"](https://www.pcmag.com/reviews/nationbuilder). *PCMAG*. Retrieved 2021-06-10.
|
||||
|
||||
[^ftpickard2019-2]: Pickard, Jim (2013-09-26). ["Westminster's tech revolution"](https://www.ft.com/content/caba5900-c41b-302e-b978-4707dca1f126). *[Financial Times](https://en.wikipedia.org/wiki/Financial_Times "Financial Times")*. [The Nikkei](https://en.wikipedia.org/wiki/The_Nikkei "The Nikkei"). [Archived](https://web.archive.org/web/20190731095914/https://www.ft.com/content/caba5900-c41b-302e-b978-4707dca1f126) from the original on 2019-07-31. Retrieved 2019-07-31. [Alt URL](https://archive.org/details/westminsterstechrevolution)
|
||||
|
||||
[^zhoucnet18-3]: Zhou, Marrian (2018-11-05). ["Midterm elections: How politicians know exactly how you're going to vote"](https://www.cnet.com/news/how-your-personal-data-is-used-to-create-a-perfect-midterm-election-ad/). *[CNET](https://en.wikipedia.org/wiki/CNET "CNET")*. [CBS Interactive](https://en.wikipedia.org/wiki/CBS_Interactive "CBS Interactive"). [Archived](https://web.archive.org/web/20190623163415/https://www.cnet.com/news/how-your-personal-data-is-used-to-create-a-perfect-midterm-election-ad/) from the original on 2019-06-23. Retrieved 2019-07-31.
|
||||
|
||||
[^chrisobrienvb2019-4]: O'Brien, Chris (2017-07-14). ["How NationBuilder's platform steered Macron's En Marche, Trump, and Brexit campaigns to victory"](https://venturebeat.com/2017/07/14/how-nationbuilder-helped-emmanuel-macron-secure-a-landslide-in-frances-legislative-elections/). *[VentureBeat](https://en.wikipedia.org/wiki/VentureBeat "VentureBeat")*. [Archived](https://web.archive.org/web/20190503003909/https://venturebeat.com/2017/07/14/how-nationbuilder-helped-emmanuel-macron-secure-a-landslide-in-frances-legislative-elections/) from the original on 2019-05-03. Retrieved 2019-07-31.
|
||||
|
||||
[^bradjonesdt2019-5]: Jones, Brad (2016-12-21). ["Meet NationBuilder, the mercenary software that powered Trump and Brexit"](https://www.digitaltrends.com/web/the-political-software-used-by-trump-and-the-brexit-campaign/). *[Digital Trends](https://en.wikipedia.org/wiki/Digital_Trends "Digital Trends")*. Designtechnica. [Archived](https://web.archive.org/web/20190420053000/https://www.digitaltrends.com/web/the-political-software-used-by-trump-and-the-brexit-campaign/) from the original on 2019-04-20. Retrieved 2019-07-31.
|
||||
|
||||
[^ballscolaa12-6]: Scola, Nancy; Ball, Molly (2012-05-17). ["The Community Organizing Geeks Who Could Revolutionize Campaign Tech"](https://www.theatlantic.com/politics/archive/2012/05/the-community-organizing-geeks-who-could-revolutionize-campaign-tech/257309/). *[The Atlantic](https://en.wikipedia.org/wiki/The_Atlantic "The Atlantic")*. [Emerson Collective](https://en.wikipedia.org/wiki/Emerson_Collective "Emerson Collective"). [Archived](https://web.archive.org/web/20160723020342/https://www.theatlantic.com/politics/archive/2012/05/the-community-organizing-geeks-who-could-revolutionize-campaign-tech/257309/) from the original on 2016-07-23. Retrieved 2019-07-31.
|
||||
|
||||
[^shontellforbes13-7]: Shontell, Alyson (2013-02-07). ["Mark Zuckerberg's Former Roommate Joe Green Has Left The Startup A Bunch Of Facebook Millionaires Invested In"](https://www.businessinsider.com/joe-green-has-left-nationbuilder-2013-2). *[Forbes](https://en.wikipedia.org/wiki/Forbes "Forbes")*. [Archived](https://web.archive.org/web/20180706165634/https://www.businessinsider.com/joe-green-has-left-nationbuilder-2013-2) from the original on 2018-07-06. Retrieved 2019-07-31.
|
||||
|
||||
[^nationbuildermyths-8]: ["Correcting myths about NationBuilder"](https://nationbuilder.com/myths). *NationBuilder*. 3dna Corp. Retrieved 25 March 2020.
|
||||
|
||||
[^chmielewskivox16-9]: Chmielewski, Dawn (2016-02-10). ["Donald Trump's Secret Weapon in Winning New Hampshire"](https://www.vox.com/2016/2/10/11587716/donald-trumps-secret-weapon-in-winning-new-hampshire). *[Vox](https://en.wikipedia.org/wiki/Vox_\(website\) "Vox (website)")*. [Vox Media](https://en.wikipedia.org/wiki/Vox_Media "Vox Media"). [Archived](https://web.archive.org/web/20190731143801/https://www.vox.com/2016/2/10/11587716/donald-trumps-secret-weapon-in-winning-new-hampshire) from the original on 2019-07-31. Retrieved 2019-07-31.
|
||||
|
||||
[^pereiraforbes12-10]: Pereira, Eva (2012-06-01). ["Now You Can Run For Office Thanks To New Softwared In"](https://www.forbes.com/sites/evapereira/2012/06/01/now-you-can-run-for-office-thanks-to-new-software/). *[Forbes](https://en.wikipedia.org/wiki/Forbes "Forbes")*. [Archived](https://web.archive.org/web/20131025210934/https://www.forbes.com/sites/evapereira/2012/06/01/now-you-can-run-for-office-thanks-to-new-software/) from the original on 2013-10-25. Retrieved 2019-07-31.
|
||||
|
||||
[^scotexpress18-11]: Borland, Ben (2018-03-27). ["'Utterly hypocritical' SNP have been harvesting voters social media data for SEVEN years"](https://www.express.co.uk/scotland/936592/Facebook-data-row-SNP-harvesting-data-controversy-social-media). *[Daily Express](https://en.wikipedia.org/wiki/Daily_Express "Daily Express")*. [Reach plc](https://en.wikipedia.org/wiki/Reach_plc "Reach plc"). [Archived](https://web.archive.org/web/20190420173245/https://www.express.co.uk/scotland/936592/Facebook-data-row-SNP-harvesting-data-controversy-social-media) from the original on 2019-04-20. Retrieved 2019-07-31.
|
||||
|
||||
[^12]: Konrad, Alex. ["Andreessen Horowitz Is Blowing Up The Venture Capital Model (Again)"](https://www.forbes.com/sites/alexkonrad/2019/04/02/andreessen-horowitz-is-blowing-up-the-venture-capital-model-again/). *Forbes*. Retrieved 2021-06-02.
|
||||
|
||||
[^13]: [SA Ombudsman Wayne Lines refers state Liberal Party's use of NationBuilder to Office of Public Integrity](https://www.abc.net.au/news/2021-09-22/ombudsman-refers-nationbuilder-use-to-opi/100481992)
|
||||
|
||||
[^14]: Halpern, Sue (October 2019). ["The Wild West of Online Political Operatives"](https://www.newyorker.com/tech/annals-of-technology/the-wild-west-of-online-political-operatives). *The New Yorker*. Retrieved 2021-06-02.
|
||||
|
||||
[^barneythompsontft2018-15]: Thompson, Barney (2018-07-11). ["Democracy disrupted? UK findings on data and politics"](https://www.ft.com/content/70a1f6a4-84b1-11e8-a29d-73e3d454535d). *[Financial Times](https://en.wikipedia.org/wiki/Financial_Times "Financial Times")*. [The Nikkei](https://en.wikipedia.org/wiki/The_Nikkei "The Nikkei"). [Archived](https://web.archive.org/web/20190731150023/https://www.ft.com/content/70a1f6a4-84b1-11e8-a29d-73e3d454535d) from the original on 2019-07-31. Retrieved 2019-07-31. [Alt URL](https://archive.org/details/democracydisruptedukfindingsondataandpolitics)
|
||||
|
||||
[^mikeovoa18-16]: O'Sullivan, Mike (2018-08-17). ["Grassroots Movements Now Built With Digital Tools"](https://www.voanews.com/usa/grassroots-movements-now-built-digital-tools). *[Voice of America](https://en.wikipedia.org/wiki/Voice_of_America "Voice of America")*. [U.S. Agency for Global Media](https://en.wikipedia.org/wiki/U.S._Agency_for_Global_Media "U.S. Agency for Global Media"). [Archived](https://web.archive.org/web/20190731121751/https://www.voanews.com/usa/grassroots-movements-now-built-digital-tools) from the original on 2019-07-31. Retrieved 2019-07-31.
|
||||
|
||||
[^17]: Hurley, Sam (2022-07-22). ["NZ First Foundation case: Accused pair not guilty of donations fraud after court grants permanent suppression"](https://www.nzherald.co.nz/nz/nz-first-foundation-case-accused-pair-not-guilty-of-donations-fraud-after-court-grants-permanent-suppression/7SC3MP67QUUOS35AV2QFSJ45OM/). *[The New Zealand Herald](https://en.wikipedia.org/wiki/The_New_Zealand_Herald "The New Zealand Herald")*. Retrieved 2024-01-18.
|
||||
|
||||
[^18]: ['Customer stories' on NationBuilder website](https://nationbuilder.com/jacinda_ardern)
|
||||
|
||||
[^19]: [How NationBuilder Infrastructure Powered the National Party of New Zealand](https://www.hines.digital/national-party-new-zealand-nationbuilder-website-case-study)
|
||||
|
||||
[^20]: Volpicelli, Gian M. ["How a little-known startup became global politics' secret weapon"](https://www.wired.co.uk/article/nationbuilder-political-data). *Wired UK*. [ISSN](https://en.wikipedia.org/wiki/ISSN_\(identifier\) "ISSN (identifier)") [1357-0978](https://search.worldcat.org/issn/1357-0978). Retrieved 2021-06-02.
|
||||
|
||||
[^21]: Alexandra, Jaffe (25 November 2016). ["Green Party's Jill Stein Raises Millions for Election Recount"](https://www.nbcnews.com/news/us-news/green-partys-jill-stein-raises-millions-election-recount-n687801). *NBC News*.
|
||||
|
||||
[^22]: ["Restoring the American Dream With Former U.S. Senator Rick Santorum"](https://www.hines.digital/rick-satorum-2016-website-case-study). *Hines Digital*. Retrieved 2020-07-28.
|
||||
|
||||
[^23]: Chmielewski, Dawn (2016-02-10). ["Donald Trump's Secret Weapon in Winning New Hampshire"](https://www.vox.com/2016/2/10/11587716/donald-trumps-secret-weapon-in-winning-new-hampshire). *Vox*. Retrieved 2021-06-02.
|
||||
|
||||
- [Official website](https://nationbuilder.com/)
|
@ -0,0 +1,30 @@
|
||||
|
||||
[Neo-Nazis, Antisemites, and the N-Word: Twitter Just Hours Under Elon Musk](https://www.vice.com/en/article/elon-musk-twitter-neo-nazis/)
|
||||
|
||||
Minutes after Elon Musk became Twitter’s official owner, the platform was [filled with vile hate speech](https://twitter.com/cbouzy/status/1585912048546091008) as users celebrated.
|
||||
|
||||
The very first hours of Musk’s 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.
|
||||
|
||||
“Since Elon Musk made Twitter free speech haven, I’ll say this: FUCK N*****S,” one account tweeted. “Fuck n*****s and fuck the jews,” another tweeted alongside a picture of Pepe the Frog, a far-right symbol.
|
||||
|
||||
Other Twitter users documented other examples of hate speech proliferating on the site Thursday evening and into Friday morning.
|
||||
|
||||
> 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.
|
||||
>
|
||||
> I'm sure the advertisers are going to love having their ads next to this. [pic.twitter.com/HfUNC4buO0](https://t.co/HfUNC4buO0)
|
||||
>
|
||||
> — Alejandra Caraballo (@Esqueer\_) [October 28, 2022](https://twitter.com/Esqueer_/status/1585808070466076673?ref_src=twsrc%5Etfw)
|
||||
|
||||
Musk’s first act as owner of the company was to fire its top executives, including CEO Parag Agrawal and Vijaya Gadde, Twitter’s 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.
|
||||
|
||||
Many of the earlier tweets have been deleted and some of the accounts suspended, indicating that Twitter’s 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.
|
||||
|
||||
Musk on Thursday tried to reassure advertisers that Twitter would be “warm and welcoming to all,” adding that it would not descend into a “free-for-all hellscape, where anything can be said with no consequences.”
|
||||
|
||||
One account that’s expected to be reactivated under Musk’s 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 “become somewhat of a phenomena.”
|
||||
|
||||
Comparing it to Twitter and other social networks, Trump said Truth Social “also 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!”
|
||||
|
||||
Users celebrating Musk’s Twitter takeover have also felt emboldened to directly target others. A number of users, predominantly women, have said that the [level of abuse they’re](https://twitter.com/Esqueer_/status/1585846350620532736) receiving has [shot up](https://twitter.com/TaylorLorenz/status/1585840327817981953) in the hours since Musk’s takeover.
|
||||
|
||||
Others appear to see Musk’s takeover as the final straw and have claimed they’ll be deleting their Twitter accounts, something those on the far-right are also celebrating.
|
@ -0,0 +1,219 @@
|
||||
|
||||
|
||||
# Phone security for activists | Activist Handbook
|
||||
|
||||
> ## Excerpt
|
||||
> Getting your smartphone ready for protests
|
||||
|
||||
---
|
||||
**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.**
|
||||
|
||||
> This article is an adaptation of the one written by [Extinction Rebellion Global](https://docs.organise.earth/en/tech/phone-lockdown). Currently, it still contains references that are only relevant to XR rebels. Feel free to improve it!
|
||||
|
||||
## Taking your phone to an action
|
||||
|
||||
So, you’ve decided to take your phone to an action. Before you do, we’ll need to ensure it’s safe to do so...
|
||||
|
||||
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’re 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.
|
||||
|
||||
### Activity: meditate on your phone
|
||||
|
||||
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’s 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.
|
||||
|
||||
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.
|
||||
|
||||
In summary, we don’t 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.
|
||||
|
||||
#### DANGEROUS DATA
|
||||
|
||||
- Photos, videos and audio recordings of rebels, especially A&L meetings
|
||||
- Your movement's account login details (Mattermost, Base, email, Pads, etc)
|
||||
- Contact lists
|
||||
|
||||
> **Ask yourself:** “Do I need to take my phone to this action?”
|
||||
|
||||
## Older style phones (’dumbphones’)
|
||||
|
||||
Dumphones are very hard to secure as they offer no opportunity to internally encrypt their contents.
|
||||
|
||||
> **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.
|
||||
|
||||
## Smartphones
|
||||
|
||||
### Securing iPhones with Encryption
|
||||
|
||||
Most modern Apple (iOS) phones already come with the contents of the phone encrypted. However that doesn’t 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.
|
||||
|
||||
> **IMPORTANT**: If you choose a passcode that’s 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’s alphanumeric, and longer than 6 characters because it’s simply harder to crack, even if Apple’s hardware is designed to slow down password-cracking tools.
|
||||
|
||||
#### iOS4 to iOS7
|
||||
|
||||
1. Open the General settings and choose Passcode (or iTouch & Passcode).
|
||||
2. Follow the prompts to create a passcode.
|
||||
|
||||
#### iOS8 and higher
|
||||
|
||||
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.
|
||||
|
||||
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’t unlocked when you are not using it.
|
||||
|
||||
Once you’ve set a passcode, scroll down to the bottom of the Passcode settings page. You should see a message that says “Data protection is enabled.” This means that the device’s encryption is now tied to your passcode, and that most data on your phone will need that code to unlock it.
|
||||
|
||||
___
|
||||
|
||||
___
|
||||
|
||||
> **Apple backups: a warning**
|
||||
> Apple device owners commonly backup either to the Apple iCloud or iTunes.
|
||||
>
|
||||
> **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](https://base.organise.earth/t/laptop-security-1-seizure-by-police-and-investigators/600).
|
||||
|
||||
### Securing Android phones with Encryption
|
||||
|
||||
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.
|
||||
|
||||
#### Android 5.0 and higher
|
||||
|
||||
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.
|
||||
|
||||
___
|
||||
|
||||
___
|
||||
|
||||
Here you should see an option to _Encrypt phone_. You’ll be asked to plug your phone in to charge while the process takes place, just to make sure that your phone doesn’t shut off and cause errors. If you haven’t 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.
|
||||
|
||||
#### Android 4.4 and lower
|
||||
|
||||
If you’re 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.
|
||||
|
||||
Once that’s done, you can go back to the Security menu and hit _Encrypt phone_ or _Encrypt tablet._ You’ll 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.
|
||||
|
||||
___
|
||||
|
||||
___
|
||||
|
||||
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.
|
||||
|
||||
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).
|
||||
|
||||
#### Pattern Unlocking an Android Phone
|
||||
|
||||
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.
|
||||
|
||||
___
|
||||
|
||||
___
|
||||
|
||||
> **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’s “SideSync” should be disabled.
|
||||
>
|
||||
> **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’s adb tools to gain access to the device. Be sure that _USB Debugging_ is disabled on a smartphone before taking it to an action!
|
||||
|
||||
## MicroSD cards
|
||||
|
||||
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.
|
||||
|
||||
> **IMPORTANT**: Even if your phone is encrypted, your MicroSD probably isn’t. 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.
|
||||
|
||||
## Communicating safely before & during actions
|
||||
|
||||
### Two kinds of networks
|
||||
|
||||
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.
|
||||
|
||||
When we are at an action, we very rarely have the luxury of a WiFi based communication, and so typically we’ll 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_).
|
||||
|
||||
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’s 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.
|
||||
|
||||
> **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.
|
||||
|
||||
## Calling safely using End to End (e2e) encryption
|
||||
|
||||
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._
|
||||
|
||||
> **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.
|
||||
|
||||
### Signal (OpenWhisperSystems)
|
||||
|
||||
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’s phone numbers. That way you can simply input a friend’s phone number and invite them to join Signal. You can also find a friend already using Signal with their phone number.
|
||||
|
||||
Signal has group chat, voice and video calls, and is widely used among activists to secure their mission-critical communications.
|
||||
|
||||
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.
|
||||
|
||||
> **IMPORTANT**: If you choose to use Signal, connect it to a _burner SIM_ (a SIM card you’ve 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.
|
||||
|
||||
You can download Signal for iOS and Android, [here](https://signal.org/). Note there’s also a desktop version of the software, which is particularly convenient if working across laptop and phone.
|
||||
|
||||
> **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.
|
||||
|
||||
### Wire
|
||||
|
||||
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.
|
||||
|
||||
Something not going in Wire’s 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.
|
||||
|
||||
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’s also a desktop version of the software, which is particularly convenient if working across laptop and phone.
|
||||
|
||||
> **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.
|
||||
|
||||
You can get Wire [here](https://wire.com/en) (_Note, this link takes you outside of XR's platforms_).
|
||||
|
||||
### Briar
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
When access to the Internet is available, Briar will use the anonymising [Tor Network](https://www.torproject.org/), adding an extra layer of cover, in that it cannot be proven that any device was the source of a transaction with another.
|
||||
|
||||
You can install Briar [here](https://briarproject.org/).
|
||||
|
||||
## Securing the login to your phone
|
||||
|
||||
One of the best ways to ‘think security’ 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.
|
||||
|
||||
### Rules for all smartphones
|
||||
|
||||
**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).
|
||||
|
||||
**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.
|
||||
|
||||
**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’ve never met, a business in a country under its own jurisdictional obligations to cooperate with law enforcement and federal investigators.
|
||||
|
||||
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.
|
||||
|
||||
## Pre-arrest checklist for branches
|
||||
|
||||
**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).
|
||||
|
||||
**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’s 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.
|
||||
|
||||
**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.
|
||||
|
||||
**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’t 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.
|
||||
|
||||
> **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 - ‘obstructing legal process’ - 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.
|
||||
|
||||
## Pre-arrest checklist for rebels
|
||||
|
||||
1. **DO NOT ATTEMPT TO CALL ANYONE, EVEN YOUR LOCKDOWN CONTACT, UNLESS YOU HAVE PLENTY OF TIME**
|
||||
What constitutes “plenty of time” is of course awfully subjective, but
|
||||
2. **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**.
|
||||
3. **RECITE YOUR RIGHTS**
|
||||
While not easy when you’re being dragged away, try to go over your rights in your mind. Recite them to yourself, before saying a word to law enforcement.
|
||||
|
||||
> **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.
|
||||
|
||||
## Leaving your phone at home?
|
||||
|
||||
So, you’ve 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’s contents impervious to someone that has it, when the phone has been powered off first.
|
@ -0,0 +1,124 @@
|
||||
|
||||
[Saudi infiltration of Twitter - Wikipedia](https://en.wikipedia.org/wiki/Saudi_infiltration_of_Twitter)
|
||||
|
||||
From Wikipedia, the free encyclopedia
|
||||
|
||||
In 2014 and 2015, a team of Saudi agents allegedly stole proprietary and sensitive personal data from the American social media platform [Twitter](https://en.wikipedia.org/wiki/Twitter "Twitter"), in order to unmask anonymous dissidents of [Saudi Arabia](https://en.wikipedia.org/wiki/Saudi_Arabia "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.[^1]
|
||||
|
||||
The [United States Department of Justice](https://en.wikipedia.org/wiki/United_States_Department_of_Justice "United States Department of Justice") charged two former [Twitter](https://en.wikipedia.org/wiki/Twitter "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.
|
||||
|
||||
Human rights groups [ANHRI](https://en.wikipedia.org/wiki/ANHRI "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.
|
||||
|
||||
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.[^3]
|
||||
|
||||
[Saud al-Qahtani](https://en.wikipedia.org/wiki/Saud_al-Qahtani "Saud al-Qahtani"), one of Saudi Crown Prince [Mohammed Bin Salman](https://en.wikipedia.org/wiki/Mohammed_Bin_Salman "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."[^4][^5] Twitter permanently banned al-Qahtani's account in September 2019, claiming "violations of our platform manipulation policies."[^6]
|
||||
|
||||
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.
|
||||
|
||||
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](https://en.wikipedia.org/wiki/Riyadh "Riyadh") social-marketing firm that is controlled by the royal family and had a history of running political and commercial influence operations.[^7][^8]
|
||||
|
||||
Bader al-Asaker, a Saudi official who heads the private office of [Prince Mohammed](https://en.wikipedia.org/wiki/Mohammed_bin_Salman "Mohammed bin Salman") and is a board member of [Misk Foundation](https://en.wikipedia.org/wiki/MiSK_Foundation "MiSK Foundation"), a philanthropic organization affiliated with [MBS](https://en.wikipedia.org/wiki/Mohammed_bin_Salman "Mohammed bin Salman"), was also involved in the conspiracy, according to the complaint.[^9]
|
||||
|
||||
Ali Alzabarah joined Twitter as a [site reliability engineer](https://en.wikipedia.org/wiki/Site_reliability_engineering "Site reliability engineering") in August 2013. Being involved in keeping the site up, he was given broad access.[^10]
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
On June 13, 2014, al-Asaker traveled to San Francisco to meet Abouammo.[^12]
|
||||
|
||||
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 – personal information usable to track a user in real life.
|
||||
|
||||
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."
|
||||
|
||||
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.
|
||||
|
||||
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.[^14]
|
||||
|
||||
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.
|
||||
|
||||
After arrival in Saudi Arabia, Alzabarah became the CEO of the Misk Initiatives Center, a branch of [Mohammed bin Salman](https://en.wikipedia.org/wiki/Mohammed_bin_Salman "Mohammed bin Salman")'s [Misk Foundation](https://en.wikipedia.org/wiki/MiSK_Foundation "MiSK Foundation"), which he created in 2011 and whose secretary-general was al-Asaker.[^16][^17]
|
||||
|
||||
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.
|
||||
|
||||
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.[^18][^19] On the same day, Abouammo was apprehended in Seattle, WA, and had his first federal court appearance in Seattle on November 6, 2019.
|
||||
|
||||
On February 24, 2021, a federal judge rejected a request to dismiss charges against Abouammo.[^20]
|
||||
|
||||
On the condition of anonymity, a business representative of Twitter told [The Washington Post](https://en.wikipedia.org/wiki/The_Washington_Post "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.[^21]
|
||||
|
||||
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.
|
||||
|
||||
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."
|
||||
|
||||
[Omar Abdulaziz](https://en.wikipedia.org/wiki/Omar_Abdulaziz_\(vlogger\) "Omar Abdulaziz (vlogger)"), a dissident who was connected to writer [Jamal Khashoggi](https://en.wikipedia.org/wiki/Jamal_Khashoggi "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."
|
||||
|
||||
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](https://en.wikipedia.org/wiki/ANHRI "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.
|
||||
|
||||
#### Turki bin Abdulaziz al-Jasser (@coluche\_ar)
|
||||
|
||||
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](https://en.wikipedia.org/wiki/ANHRI "ANHRI").
|
||||
|
||||
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](https://en.wikipedia.org/wiki/Al-Ha%27ir_Prison "Al-Ha'ir Prison") near Riyadh, according to MENA Rights Group.
|
||||
|
||||
#### Abdulrahman al-Sadhan (@sama7ti)
|
||||
|
||||
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.[^23]
|
||||
|
||||
[Omar Abdulaziz](https://en.wikipedia.org/wiki/Omar_Abdulaziz_\(vlogger\) "Omar Abdulaziz (vlogger)")'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.[^24] The accusations are false, according to Twitter.[^25]
|
||||
|
||||
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.[^26]
|
||||
|
||||
[^1]: Benner, Katie; Mazzetti, Mark; Hubbard, Ben; Isaac, Mike (October 20, 2018). ["Saudis' Image Makers: A Troll Army and a Twitter Insider"](https://www.nytimes.com/2018/10/20/us/politics/saudi-image-campaign-twitter.html). *The New York Times*. [ISSN](https://en.wikipedia.org/wiki/ISSN_\(identifier\) "ISSN (identifier)") [0362-4331](https://search.worldcat.org/issn/0362-4331). Retrieved July 3, 2021.
|
||||
|
||||
[^cite_note-:12-2]: ["Two Former Twitter Employees and a Saudi National Charged as Acting as Illegal Agents of Saudi Arabia"](https://www.justice.gov/opa/pr/two-former-twitter-employees-and-saudi-national-charged-acting-illegal-agents-saudi-arabia). *www.justice.gov*. November 7, 2019. Retrieved July 3, 2021.
|
||||
|
||||
[^3]: 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"](https://newrepublic.com/article/161995/twitter-saudi-arabia-mbs-dissident). *The New Republic*. [ISSN](https://en.wikipedia.org/wiki/ISSN_\(identifier\) "ISSN (identifier)") [0028-6583](https://search.worldcat.org/issn/0028-6583). Retrieved July 5, 2021.
|
||||
|
||||
[^4]: ["سعود القحطاني on Twitter"](https://web.archive.org/web/20180926150433/https://twitter.com/saudq1978/status/898379274788491265). *Twitter* (in Turkish). Archived from [the original](https://twitter.com/saudq1978/status/898379274788491265) on September 26, 2018. Retrieved July 5, 2021.
|
||||
|
||||
[^5]: ["Lord Of The Flies: An Open-Source Investigation Into Saud Al-Qahtani"](https://www.bellingcat.com/news/mena/2019/06/26/lord-of-the-flies-an-open-source-investigation-into-saud-al-qahtani/). *bellingcat*. June 26, 2019. Retrieved July 5, 2021.
|
||||
|
||||
[^6]: ["Twitter Bans Saudi Official Implicated in Khashoggi Murder, Hundreds of Other Pro-Saudi Accounts"](https://gizmodo.com/twitter-bans-saudi-official-implicated-in-khashoggi-mur-1838318402). *Gizmodo*. Retrieved July 4, 2021.
|
||||
|
||||
[^7]: Paul, Katie (December 21, 2019). ["Twitter suspends accounts linked to Saudi spying case"](https://www.reuters.com/article/us-twitter-saudi-idUSKBN1YO1JT). *Reuters*. Retrieved July 5, 2021.
|
||||
|
||||
[^8]: ["Twitter removes 90,000 accounts linked to Saudi influence operation"](https://www.latimes.com/business/technology/story/2019-12-20/twitter-suspends-90-000-accounts-used-to-spread-saudi-spam). *Los Angeles Times*. December 20, 2019. Retrieved July 5, 2021.
|
||||
|
||||
[^9]: Paul, Diane Bartz, Katie (November 7, 2019). ["U.S. accuses two former Twitter employees of spying for Saudi Arabia"](https://www.reuters.com/article/us-usa-twitter-saudiarabia-idUSKBN1XG34W). *Reuters*. Retrieved July 6, 2021.`{{[cite news](https://en.wikipedia.org/wiki/Template:Cite_news "Template:Cite news")}}`: CS1 maint: multiple names: authors list ([link](https://en.wikipedia.org/wiki/Category:CS1_maint:_multiple_names:_authors_list "Category:CS1 maint: multiple names: authors list"))
|
||||
|
||||
[^10]: ["Former Twitter employees federally charged with working for Saudis"](https://abcnews.go.com/US/twitter-employees-federally-charged-working-saudis/story?id=66804389). *ABC News*. Retrieved July 7, 2021.
|
||||
|
||||
[^cite_note-:0-11]: ["How Saudi Arabia Infiltrated Twitter"](https://www.buzzfeednews.com/article/alexkantrowitz/how-saudi-arabia-infiltrated-twitter). *BuzzFeed News*. Retrieved July 4, 2021.
|
||||
|
||||
[^12]: ["A Saudi Prince's Attempt to Silence Critics on Twitter"](https://www.wired.com/story/mohammed-bin-salman-twitter-investigation/). *Wired*. [ISSN](https://en.wikipedia.org/wiki/ISSN_\(identifier\) "ISSN (identifier)") [1059-1028](https://search.worldcat.org/issn/1059-1028). Retrieved July 6, 2021.
|
||||
|
||||
[^cite_note-:3-13]: ["Ex-Twitter worker arrested in Seattle is charged with spying for Saudi Arabia"](https://www.seattletimes.com/nation-world/former-twitter-employees-charged-with-spying-for-saudi-arabia-by-digging-into-the-accounts-of-kingdom-critics/). *The Seattle Times*. November 6, 2019. Retrieved July 7, 2021.
|
||||
|
||||
[^14]: ["Twitter Insiders Allegedly Spied for Saudi Arabia"](https://www.wired.com/story/twitter-insiders-saudi-arabia-spy/). *Wired*. [ISSN](https://en.wikipedia.org/wiki/ISSN_\(identifier\) "ISSN (identifier)") [1059-1028](https://search.worldcat.org/issn/1059-1028). Retrieved July 7, 2021.
|
||||
|
||||
[^cite_note-:1-15]: ["Former Twitter employees charged with spying for Saudi Arabia"](https://www.theguardian.com/technology/2019/nov/06/twitter-spy-saudi-arabia-workers-charged). *The Guardian*. November 6, 2019. Retrieved July 3, 2021.
|
||||
|
||||
[^16]: ["FaceOf: Bader Al-Asaker, secretary-general of Misk Foundation"](https://www.arabnews.com/node/1310756/saudi-arabia). *Arab News*. May 28, 2018. Retrieved July 5, 2021.
|
||||
|
||||
[^17]: ["UNESCO Said It Has No Plans To Renew A Deal With An Alleged Saudi Spy At Twitter "At This Time""](https://www.buzzfeednews.com/article/alexkantrowitz/unesco-said-it-wont-renew-a-deal-with-one-of-the-alleged). *BuzzFeed News*. Retrieved July 6, 2021.
|
||||
|
||||
[^18]: ["ALI HAMAD A ALZABARAH"](https://www.fbi.gov/wanted/counterintelligence/ali-hamad-a-alzabarah). *Federal Bureau of Investigation*. Retrieved July 5, 2021.
|
||||
|
||||
[^19]: ["AHMED SAAD M ALMUTAIRI"](https://www.fbi.gov/wanted/counterintelligence/ahmed-saad-m-almutairi). *Federal Bureau of Investigation*. Retrieved July 5, 2021.
|
||||
|
||||
[^20]: ["Judge Rejects Bid to Drop Charges Against Alleged Saudi Spying Accomplice"](https://www.courthousenews.com/judge-rejects-bid-to-drop-charges-against-alleged-saudi-spying-accomplice/). *www.courthousenews.com*. Retrieved July 7, 2021.
|
||||
|
||||
[^21]: ["Former Twitter employees charged with spying for Saudi Arabia by digging into the accounts of kingdom critics"](https://www.washingtonpost.com/national-security/former-twitter-employees-charged-with-spying-for-saudi-arabia-by-digging-into-the-accounts-of-kingdom-critics/2019/11/06/2e9593da-00a0-11ea-8bab-0fc209e065a8_story.html). *Washington Post*. [ISSN](https://en.wikipedia.org/wiki/ISSN_\(identifier\) "ISSN (identifier)") [0190-8286](https://search.worldcat.org/issn/0190-8286). Retrieved July 7, 2021.
|
||||
|
||||
[^cite_note-:2-22]: Gallagher, Ryan (August 18, 2020). ["Spies in Silicon Valley: Twitter Breach Tied to Saudi Dissident Arrests"](https://www.bloomberg.com/news/articles/2020-08-19/twitter-security-breach-blamed-for-saudi-dissident-arrests). *Bloomberg*. Retrieved July 5, 2021.
|
||||
|
||||
[^23]: ["Saudi Arabia jails alleged satirist 'identified in Twitter infiltration'"](https://www.theguardian.com/world/2021/apr/09/saudi-arabia-jails-alleged-satirist-identified-in-twitter-infiltration). *The Guardian*. April 9, 2021. Retrieved July 5, 2021.
|
||||
|
||||
[^24]: ["'A direct trail of blood drops' leads from a Twitter hack to Jamal Khashoggi's murder"](https://news.yahoo.com/a-direct-trail-of-blood-drops-leads-from-a-twitter-hack-to-jamal-khashoggis-murder-090051087.html). *news.yahoo.com*. Retrieved July 5, 2021.
|
||||
|
||||
[^25]: Blumberg, Peter (December 17, 2019). ["Twitter Denies It Failed to Warn Saudi Dissident of Account Hack"](https://www.bloomberg.com/news/articles/2019-12-17/twitter-denies-it-failed-to-warn-saudi-dissident-of-account-hack). *Bloomberg*. Retrieved July 6, 2021.
|
||||
|
||||
[^26]: Bostock, Bill. ["A Saudi dissident suing Twitter over a massive 2016 hack says the platform's incompetence got multiple whistleblowers killed"](https://www.businessinsider.com/twitter-saudi-dissident-suing-breach-whistleblower-deaths-ali-al-ahmed-2020-8). *Business Insider*. Retrieved July 3, 2021.
|
||||
|
||||
- *USA v. AHMAD ABOUAMMO; AHMED ALMUTAIRI, a/k/a AHMED ALJBREEN; and ALI ALZABARAH* (US District Court for the Northern District of California), [Text](https://www.justice.gov/usao-ndca/press-release/file/1215976/download).
|
@ -0,0 +1,70 @@
|
||||
|
||||
[The majority of traffic from Elon Musk's X may have been fake during the Super Bowl, report suggests](https://mashable.com/article/x-twitter-elon-musk-bots-fake-traffic)
|
||||
|
||||

|
||||
|
||||
New data shows that X has a bot problem unlike any other. Credit: Beata Zawrzel/NurPhoto via Getty Images
|
||||
|
||||
This week, Super Bowl 2024 shattered records, with the NFL championship broadcast on CBS becoming the [most-watched](https://www.cbssports.com/nfl/news/cbs-sports-super-bowl-lviii-broadcast-is-most-watched-telecast-in-history-123-4-million-tune-in/ "(opens in a new window)") televised event in U.S. history.
|
||||
|
||||
Also riding high from the big game? Elon Musk's X. The company formerly known as Twitter published its own [press release](https://business.x.com/en/blog/super-bowl-lviii-smashes-records-on-x.html "(opens in a new window)"), lauding Super Bowl LVIII as one of the biggest events ever on the social media platform with more than [10 billion impressions](https://twitter.com/XBusiness/status/1757428067482415518 "(opens in a new window)") and over 1 billion video views.
|
||||
|
||||
> [Tweet may have been deleted](https://twitter.com/XBusiness/status/1757428067482415518 "(opens in a new window)")
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
[ ](https://games.mashable.com/)
|
||||
|
||||
"I've never seen anything even remotely close to 50 percent, not to mention 76 percent," [CHEQ](https://cheq.ai/ "(opens in a new window)") founder and CEO Guy Tytunovich told Mashable regarding X's fake traffic data. "I'm amazed…I've never, ever, ever, ever seen anything even remotely close."
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
Advertisers have also noticed X's bot issues. In a recently published piece in [*The Guardian*](https://www.theguardian.com/business/2024/feb/15/x-paid-post-promotion-advertising "(opens in a new window)"), 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.
|
||||
|
||||
In our conversation with Tytunovich, he referenced an [often cited stat](https://mashable.com/article/report-claims-half-facebook-maus-fake) that roughly [half of all internet traffic](https://securitytoday.com/articles/2023/05/17/report-47-percent-of-internet-traffic-is-from-bots.aspx "(opens in a new window)") is made up of bots, and how he's long been skeptical of that data based on what CHEQ itself sees.
|
||||
|
||||
"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."
|
||||
|
||||
Mashable Light Speed
|
||||
|
||||
"I almost decided not to go out \[and publish the X bot data\] because we've never seen anything like it," he said.
|
||||
|
||||
## X has a bot problem unlike anything else seen on competing platforms
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
And, unfortunately for X, its bot problem goes beyond the big game too.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
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."
|
||||
|
||||
## An Elon Musk problem
|
||||
|
||||
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.
|
||||
|
||||
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](https://mashable.com/article/twitter-blue-check-verified-removal-internet-reactions). Only around 200,000 to 300,000 users were subscribed to [Twitter Blue](https://mashable.com/article/twitter-blue-subscriptions-lower), 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](https://mashable.com/article/twitter-x-creator-fund-ad-revenue-sharing). All of these changes can factor into X's current bot problem.
|
||||
|
||||
In addition, since Musk's take over, [80 percent](https://www.forbes.com/sites/thomasbrewster/2024/01/10/elon-musk-fired-80-per-cent-of-twitter-x-engineers-working-on-trust-and-safety/?sh=78cf52a779b3 "(opens in a new window)") of the company's Trust and Safety team's engineers have been laid off, along with half of the company's content moderators. Thousands of employees have been [laid off](https://www.cnn.com/2023/04/12/tech/elon-musk-bbc-interview-twitter-intl-hnk/index.html "(opens in a new window)") across the company.
|
||||
|
||||
X has struggled with advertisers since Musk's takeover. Big brands and major companies [like Disney](https://mashable.com/article/elon-musk-twitter-x-advertisers-fk-yourselves) have suspended ad campaigns on the platform due to hate speech and pro-Nazi content proliferating on X, as well as [antisemitic comments](https://mashable.com/article/apple-suspends-x-twitter-advertising-elon-musk-antisemitic-conspiracy) made by Musk himself. According to a [*Bloomberg*](https://www.bloomberg.com/news/articles/2024-01-27/musk-s-x-pledges-100-person-office-in-texas-to-police-content "(opens in a new window)") report last month, X is planning to open a [Trust and Safety center](https://mashable.com/article/x-twitter-hiring-content-moderators-trust-and-safety-center-austin) in Austin, Texas and is hiring 100 employees to work in that department in order to address some of advertisers' concerns.
|
||||
|
||||
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.
|
||||
|
||||
This newsletter may contain advertising, deals, or affiliate links. Subscribing to a newsletter indicates your consent to our [Terms of Use](https://www.ziffdavis.com/terms-of-use "(opens in a new window)") and [Privacy Policy](https://www.ziffdavis.com/ztg-privacy-policy "(opens in a new window)"). You may unsubscribe from the newsletters at any time.
|
@ -0,0 +1,96 @@
|
||||
|
||||
[The right-wing lurch of X under Elon Musk](https://www.aljazeera.com/economy/2024/8/13/the-right-wing-lurch-of-x-under-elon-musk)
|
||||
|
||||
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 “free speech absolutist”.
|
||||
|
||||
While BlueSky, Meta’s Threads and others have gained from users disaffected with X, they pale in comparison to X’s hold on the information landscape.
|
||||
|
||||
His history of censoring views he doesn’t 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’ users go for news content according to a recent report [from Pew Research.](https://www.pewresearch.org/journalism/2024/06/12/how-americans-get-news-on-tiktok-x-facebook-and-instagram/)
|
||||
|
||||
Matt J, who declined to give his full last name, works in the legal profession in South Carolina. Despite running the left-leaning account “Blue Resistors In Red States”, he’s pushed content from far-right-wing provocateurs like Laura Loomer, on his “For You” page practically every day.
|
||||
|
||||
“I’m getting pushed information from the fringes of right-wing people who I don’t even follow,” Matt J tells Al Jazeera.
|
||||
|
||||
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.
|
||||
|
||||
### Sign up for Al Jazeera
|
||||
|
||||
#### Americas Coverage Newsletter
|
||||
|
||||
US politics, Canada’s multiculturalism, South America’s geopolitical rise—we bring you the stories that matter.
|
||||
|
||||
“I go on every day and people I’ve blocked pop back up as people I’m following,” Chisholm told Al Jazeera
|
||||
|
||||
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.
|
||||
|
||||
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’s “border czar”. In 2021, Biden tasked the vice president with addressing the root causes of migration — why people want to leave their nation of origin in the first place —- not border security.
|
||||
|
||||
Musk has allowed Trump and his allies to voice their views unchecked. Linda Yaccarino, CEO of X, even referred to the interview as “[unfiltered](https://x.com/lindayaX/status/1823198345659322526)”.
|
||||
|
||||
At the same time, Musk isn’t giving the same freedom to liberal voices who are trying to get their messaging across before the general election.
|
||||
|
||||
In recent weeks, amid Kamala Harris’s 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’s running mate, Musk said that the [sitting vice president’s](https://x.com/elonmusk/status/1817300216011251712) “philosophy would cause a de facto holocaust for all of humanity!” Last [Wednesday, he](https://x.com/elonmusk/status/1821106660732989827) made the false claim that “Kamala is quite literally a communist.”
|
||||
|
||||
His angst towards Harris is also translating to what consumers see on their respective feeds. Across X, users were unable to follow KamalaHQ, Harris’s 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](https://democrats-judiciary.house.gov/uploadedfiles/2024-07-23_jn_to_jdj.pdf) 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 “big tech” political censorship of conservatives.
|
||||
|
||||
Nadler and Jordan did not respond to Al Jazeera’s request for comment.
|
||||
|
||||
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.
|
||||
|
||||
Musk currently faces a lawsuit from one journalist — former CNN anchor [Don Lemon](https://www.aljazeera.com/economy/2024/8/1/former-cnn-anchor-don-lemon-sues-elon-musk-over-scrapped-deal) 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.
|
||||
|
||||
In December 2022, Musk temporarily banned a handful of left-leaning journalists critical of him and did this again this past January.
|
||||
|
||||
Last year in January, Bloomberg reported that Musk also pressured the head of trust and safety to suspend Chad Loder — a left-wing activist who used the platform to identify participants of the January 6 attacks on the US Capitol.
|
||||
|
||||
That’s echoed by recent reporting from Wired which cited several former staffers voicing concerns that Musk’s consolidation of power within X has allowed him to push his own increasingly fringe political stances without checks and balances.
|
||||
|
||||
In recent years, Musk dissolved the Trust and Safety Council – 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.
|
||||
|
||||
## Throttling reach
|
||||
|
||||
Most recently, the account “White Dudes for Harris” 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’s being labelled as spam.
|
||||
|
||||
“I haven’t done anything that is spammy. Like we’re not bulk-following people. We’re not bulk-tweeting people. We’re not, you know, terrorising people. So there’s no reason for us to get in trouble,” Mike Nellis, co-creator of White Dudes For Harris, told Al Jazeera.
|
||||
|
||||
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’s censorship efforts, he said, stoked concerns about raising awareness for left-leaning causes in the run-up to the general election.
|
||||
|
||||
“We’ve gotten a lot of DMs \[direct messages\] from people who tell us that they voted for Donald Trump two times, they’re thinking about voting for Kamala Harris this time, and they appreciate that our account exists. We’re reaching real people on this platform. I think it’s wrong of Elon Musk to put his thumb on the scale for his own politics this way,” Nellis said.
|
||||
|
||||
That’s echoed by Matt J, who pushes commentary on liberal issues. He said he noticed that fewer people have been seeing his posts.
|
||||
|
||||
“I can see on my analytics page that my posts aren’t getting as much traction as they used to,” Matt J told Al Jazeera.
|
||||
|
||||
Matt J, who paid for Twitter Blue (now X Premium) — the platform’s paid service which gives users more resources including a feature that allows users to craft lengthier posts — says despite paying for this service – created by Musk after his takeover – 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.
|
||||
|
||||
Chisholm, who has more than 70,000 followers, says she has seen a 78 percent drop in views more recently.
|
||||
|
||||
“When I started actively, aggressively supporting Kamala. My views dropped from half a million to five hundred. It was a huge drop,” Chisholm told Al Jazeera.
|
||||
|
||||
Chisholm also pays for premium and has access to in-depth analytic reports on her account’s performance.
|
||||
|
||||
Chisholm, Matt J and Nellis are concerned that censorship undermines their ability to point people to fundraising opportunities.
|
||||
|
||||
“If our account is suspended \[or limited\] at a time when we’re 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,” Nellis said.
|
||||
|
||||
There is a looming fear of what will happen if Musk targets their page once again.
|
||||
|
||||
“Tens 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,” he added.
|
||||
|
||||
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.
|
||||
|
||||
After the investigation was announced, Michigan Secretary of State Jocelyn Benson [posted that elected officials, including](https://x.com/JocelynBenson/status/1821375561660276817) herself and the state’s attorney general, inexplicably lost their blue checkmarks on X — the icon that indicates official accounts for the office.
|
||||
|
||||
Other state attorneys general lost their checkmark, but seemingly only in states like Arizona and Wisconsin – where Republicans had been indicted for their roles in fraudulent elector schemes, including the Trump team’s lies about election interference in the 2020 presidential election.
|
||||
|
||||
The America PAC did not respond to Al Jazeera’s request for comment.
|
||||
|
||||
It is not left-wing voices but also causes that are deemed as liberal causes — like trans rights — 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 “trans”.
|
||||
|
||||
But the platform’s decisions are indicative of Musk’s 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.
|
||||
|
||||
Musk’s moves come despite his accusations that the social media giant’s 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’s case.
|
||||
|
||||
Meanwhile, academic studies of the anti-conservative bias on social media platforms have found that Musk’s allegations were baseless and there was no systematic censoring of conservative voices.
|
||||
|
||||
X did not respond to Al Jazeera’s request for comment.
|
@ -0,0 +1,40 @@
|
||||
|
||||
[Under Elon Musk, Twitter has approved 83% of censorship requests by authoritarian governments](https://english.elpais.com/international/2023-05-24/under-elon-musk-twitter-has-approved-83-of-censorship-requests-by-authoritarian-governments.html)
|
||||
|
||||

|
||||
|
||||
Elon Musk's profile, against the background of the Twitter logo, last October.DADO RUVIC (REUTERS)
|
||||
|
||||
Since [Elon Musk acquired Twitter](https://english.elpais.com/economy-and-business/2022-10-28/elon-musk-takes-control-of-twitter-and-immediately-fires-top-executives.html) 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](https://english.elpais.com/international/2023-05-22/erdogan-wins-endorsement-for-turkish-election-runoff-from-third-place-candidate-ogan.html) last Sunday.
|
||||
|
||||
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: “The rules in India for what can appear on social media are quite strict, and we can’t go beyond the laws of a country,” and in doing so put his staff at risk, [he added](https://economictimes.indiatimes.com/tech/technology/indian-social-media-laws-quite-strict-cant-go-behind-the-law-elon-musk/articleshow/99431973.cms). “If we have a choice of either our people going to prison or us complying with the laws, we will comply with the laws.” 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.
|
||||
|
||||
Musk said that he was unaware “what exactly happened” 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.
|
||||
|
||||
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.
|
||||
|
||||
Twitter’s 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’s 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’s 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*](https://restofworld.org/).
|
||||
|
||||
“By ‘free speech,’ 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,” Musk wrote on Twitter in April 2022. The tycoon’s syllogism in denouncing censorship beyond the law — taking those established for granted — 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: “New Twitter policy is freedom of speech, but not freedom of reach.”
|
||||
|
||||
On May 12, [two days before Turkey’s elections](https://english.elpais.com/international/2023-05-15/turkey-presidential-election-will-go-to-runoff-as-erdogan-performs-better-than-expected.html), Twitter’s global governance account announced that, “in 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” 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’s and his party’s 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](https://english.elpais.com/international/2023-03-23/turkey-rushes-to-rebuild-an-area-larger-than-portugal-after-the-earthquake.html) and neighboring Syria, access to Twitter was briefly cut off. In the past, Wikipedia has been banned, although the government later reversed its decision.
|
||||
|
||||
“The day before a critical election in Turkey, Twitter appears to be acquiescing to the demands of the country’s autocratic ruler, Erdogan, and is censoring speech on the platform. Given Twitter’s total lack of transparency, it is hard to avoid the conclusion that Musk’s promises of free speech have again fallen away,” 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](https://english.elpais.com/usa/2022-12-13/based-on-the-us-midterms-which-party-will-win-the-2024-presidential-elections.html).
|
||||
|
||||

|
||||
|
||||
Two women try to connect to Twitter in a cafe in Istanbul in March 2014.TOLGA BOZOGLU (EFE)
|
||||
|
||||
### The Facebook precedent and hate speech
|
||||
|
||||
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’s network, for the sake of austerity, may contribute to fostering. Facebook, overshadowed today by [Meta’s multiverse bet](https://english.elpais.com/economy-and-business/2022-05-18/the-metaverse-the-business-of-the-century-or-a-massive-bubble.html), 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.
|
||||
|
||||
Modi, like Erdogan in Turkey, is seeking to revalidate his mandate for a third time in next year’s elections: the common denominator of autocrats. [Jair Bolsonaro](https://english.elpais.com/international/2023-02-15/bolsonaro-says-he-will-return-to-brazil-next-month-to-lead-the-opposition.html) — another world leader who supposedly benefited from Twitter — 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’s 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.
|
||||
|
||||
For months, Musk has maintained that his platform would not “censor” 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 “censor truthful information about anything.” That same month, he called for a “revolution against online censorship in America.” In December, he inquired whether Schiff had approved “hidden state censorship in direct violation of the Constitution of the United States.” In April, he tweeted as a parable: “Do not censor, lest you be censored.”
|
||||
|
||||
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 “\[The\] government paid Twitter millions of dollars to censor info from the public,” a claim that experts say is unsubstantiated and serves to fuel the conspiracy theories of many Republicans.
|
||||
|
||||
Erdogan’s reelection on May 28 seems beyond doubt, with or without the help of Twitter, but the platform’s 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’s party, voted for the embattled opposition in a local election held last weekend, a snub that only portends more censure, with or without Twitter’s intervention.
|
||||
|
||||
*Sign up for* [*our weekly newsletter*](https://plus.elpais.com/newsletters/lnp/1/333/?lang=en) *to get more English-language news coverage from EL PAÍS USA Edition*
|
@ -0,0 +1,41 @@
|
||||
|
||||
|
||||
# What Is Technofeudalism?
|
||||
|
||||
> ## Excerpt
|
||||
> A group of Big Data’s critics claim we’re 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.
|
||||
|
||||
---
|
||||
## Are We Living Under ‘Technofeudalism’?
|
||||
|
||||

|
||||
|
||||
Photo-Illustration: Intelligencer; Photos: Getty Images
|
||||
|
||||
Imagine a near future in which [Amazon](https://nymag.com/intelligencer/article/jeff-bezos-facts.html) 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’s 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](https://nymag.com/intelligencer/2021/07/jeff-bezos-space-launch.html) empire, pissing out more and more information for his eventual profit.
|
||||
|
||||
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’s 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.
|
||||
|
||||
The technofeudalist model involves establishing a monopoly position and using sophisticated data extraction to secure it. “Having become indispensable,” writes French economist Cédric Durand in his 2020 book [_Technoféodalisme: Critique de l’Économie Numérique_](https://www.amazon.com/Techno-f%C3%A9odalisme-Critique-l%C3%A9conomie-num%C3%A9rique-French/dp/2355221154/ref=tmm_pap_swatch_0), “the platforms should be thought of as infrastructure, in the same category as electricity providers, railroads, or telecoms.” 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](https://newleftreview.org/issues/ii133/articles/evgeny-morozov-critique-of-techno-feudal-reason) taking the position that this is still mere capitalism against [Durand](https://newleftreview.org/issues/ii136/articles/cedric-durand-scouting-capital-s-frontiers), as well as [Jodi Dean](https://newleftreview.org/sidecar/posts/same-as-it-ever-was) and [Timothy Erik Ström](https://newleftreview.org/issues/ii135/articles/timothy-erik-strom-capital-and-cybernetics).
|
||||
|
||||
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?
|
||||
|
||||
I don’t think so.
|
||||
|
||||
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_](https://bookshop.org/a/135/9781541758001), even if she doesn’t 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’s book offers a model of “behavioral surplus,” 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 — principally [Google](https://nymag.com/intelligencer/2021/10/inside-jedi-blue-facebooks-secret-deal-with-google.html), then [Facebook](https://nymag.com/intelligencer/2022/03/facebook-is-now-allowing-itself-to-be-weaponized-in-ukraine.html), Microsoft, and Amazon — have turned the slippery slope of digital surveillance into a hamster wheel, a new self-perpetuating system of exploitation.
|
||||
|
||||
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’s most valuable companies, there’s 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 — or whether we’re employed at all — we’re 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’s 1965 dystopian sci-fi film [_Alphaville_](https://archive.org/details/alphaville-une-etrange-aventure-de-lemmy-caution-jean-luc-godard-1965-eddie-cons), in which a dictatorial sentient computer rules society down to the most personal decisions.
|
||||
|
||||
Here is the long-feared world of cybernetic control, in which feedback loops automatically manage the population, no real choices required. “Human 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,” Zuboff wrote [in an article for the](https://journals.sagepub.com/doi/10.1057/jit.2015.5) [_Journal of Information Technology_](https://journals.sagepub.com/doi/10.1057/jit.2015.5) in 2015, presaging the technofeudalist line. “Rather 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.”
|
||||
|
||||
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’s usage, _L’Autre_ can refer to one’s mother, the superego, the analyst, language, the whole symbolic order, and more — it is not unlike Zuboff’s “universal architecture existing somewhere between nature and God.” But in this reformulation, Mark Zuckerberg takes his place next to Mom and God in the pantheon of all-seeing, all-knowing entities.
|
||||
|
||||
I have little doubt this is also how Zuckerberg would like to be perceived, but if he’s really so powerful, why is Facebook flailing around trying to get users for its so-called [metaverse](https://nymag.com/intelligencer/2022/10/why-your-boss-wants-you-in-the-metaverse.html)? According to the technofeudalists we shouldn’t 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’t typically lose 40 percent of their market capitalization over the course of eight months.
|
||||
|
||||
Technofeudalists have a bad habit of repeating the industry’s self-promotional puffery. Even though they’re shifting the tone from googly-eyed naïveté to skepticism and even horror, they agree with Silicon Valley that computers and the internetworking thereof has revolutionized the mode of production. It’s 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](https://fred.stlouisfed.org/series/CP) even as [output decelerates](https://fred.stlouisfed.org/graph/?g=8eiT). Facebook is much less than what the technofeudalists make it out to be: It’s an advertising platform that wrings pennies out of users’ scrap time — 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.
|
||||
|
||||
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’s concern about Facebook’s plans to pivot to organic videos — a [famously failed strategy](https://slate.com/technology/2018/10/facebook-online-video-pivot-metrics-false.html), founded on the firm’s fibs about user engagement — 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’s a good thing that they’re all totally full of shit. The internet’s true landlords aren’t even tech companies, as researcher Daniel Greene notes in a [new paper](https://journals.sagepub.com/doi/abs/10.1177/03063127221124943); 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.
|
||||
|
||||
The problem with making the Big Other the foundation for a new mode of production is that it’s a fantasy. _L’autre n’existe 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 — and that’s 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’s the of-Oz variety, as he constantly reminds us by [tripping over his curtain like a dork](https://kotaku.com/zuckerberg-facebook-meta-legs-feet-video-vr-staged-fake-1849656315).
|
||||
|
||||
As a solution to the class struggles animating American society, winning back control of our data via regulation isn’t so different from hoarding newspapers or pissing in jars to keep our waste out of the clutches of Big Tech’s trash-collecting algorithms. Then what? They can eat data scraps, but we can’t. And that’s how you know that this is still capitalism: Tomorrow, we have to go find work.
|
@ -0,0 +1,79 @@
|
||||
|
||||
## Treaty 6
|
||||
|
||||
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étis, Nakota Sioux, Haudenosaunee/Iroquois, Dene Suliné, 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é, 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.
|
||||
|
||||
## ᐊᒥᐢᑲᐧᒋᕀ
|
||||
|
||||
Amiskwaciy means Beaver Hills in Nehiyawewin (Cree). The name for Edmonton, amiskwaciy-wâskahikan, 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 “the place where the beaver cuts wood”. Historically, the Beaver Hills region was important for the Tsuut’ina (Sarcee), Nehiyawak (Cree), Anishnaabe (Saulteaux), the Nakota Sioux, and the Niitsitapi (Blackfoot). The region’s 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.
|
||||
|
||||
## ᑭᓯᐢᑲᒋᐊᐧᓂᓯᐱᕀ
|
||||
|
||||
## kisiskâciwanisîpiy
|
||||
|
||||
Kisiskâciwanisîpiy 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’ina, Anishnaabe (Ojibway/Saulteaux), the Nakota Sioux, the Niitsitapi (Blackfoot) and the Métis. 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’s bay region. The voyage from the Edmonton region to the Hudson’s bay region has been made many times over, particularly during the fur trade.
|
||||
|
||||
## ᒪᐢᑭᐦᑮ ᐱᒣᐢᑲᓇᐤ
|
||||
|
||||
## maskihkîy meskanaw
|
||||
|
||||
The area surrounding [maskihkîy meskanaw/Glory Hills Conservation Lands](https://www.ealt.ca/glory-hills) has ties to the cultures of both the Haudenosaunee (Iroquois) and the Nêhiyawak (Cree).
|
||||
|
||||
The hamlet of Calahoo lies northeast of maskihkîy 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 “The Sun Traveller”. 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 “freeman” 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.
|
||||
|
||||
Further northeast lies the Hamlet Rivière 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.
|
||||
|
||||
## Bunchberry
|
||||
|
||||
Connecting Bunchberry to Edmonton is Maskêkosihk Trail ᒪᐢᑫᑯᓯᐦᐠ ᐟrᐊᐃl . Maskêkosihk Trail was named in a partnership with Enoch Cree Nation and the City of Edmonton. It means “people of the land of medicine” in Nehiyawewin (Cree). This project helps to promote both Nehiyawiwin and Nehiyawewin (Cree culture and language). Maskêkosihk Trail also connects Edmonton to Yekau Lake and the Enoch Cree Nation Cultural Grounds, where Pow Wows were once held.
|
||||
|
||||
## Coates Conservation Lands
|
||||
|
||||
The region around [Coates](https://www.ealt.ca/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êhiyawîhcikêwin (Cree culture) within the region.
|
||||
|
||||
The summer village of Itaska lies on the Northwest edge of Pigeon Lake. The village’s name comes from the Nehiyawewin word ispâskweyâw, meaning *High trees on the edge of wood*, referring to the beautiful forest bordering the edge of the water.
|
||||
|
||||
Another village inspired by Nêhiyawîhcikêwin 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.
|
||||
|
||||
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.
|
||||
|
||||
Passenger pigeons were a great source of food for Europeans and Indigenous people alike. The Onöndowága (Seneca people), a Nation living south of Ontario lake, called 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’s recalls a flock so great that it took over three days to pass.
|
||||
|
||||
## Lu Carbyn Nature Sanctuary
|
||||
|
||||
[Lu Carbyn Nature Sanctuary](https://www.ealt.ca/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âpamon, 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’s 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’s healing properties.
|
||||
|
||||
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](https://lacsteannepilgrimage.ca/).
|
||||
|
||||
## ᒥᓂᐢᑎᐠ
|
||||
|
||||
## Ministik Conservation Lands
|
||||
|
||||
[Ministik](https://www.ealt.ca/ministik) ᒥᓂᐢᑎᐠ means “island” 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á 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êhiyâsis (Cree boy) who later became a great leader with a possibly complicated but still strong relationship with his adopted father. Originally after Crowfoot’s 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êhiyaw Chief known as Poundmaker (Pîhtokahanapiwiyin), who was active in the North West Rebellion.
|
||||
|
||||
## Golden Ranches, Hicks, Smith Blackburn Homestead
|
||||
|
||||
[Golden Ranches](https://www.ealt.ca/golden-ranches), [Hicks](https://www.ealt.ca/hicks) and the [Smith Blackburn Homestead](https://www.ealt.ca/smith-blackburn) 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.
|
||||
|
||||
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.
|
||||
|
||||
|
||||
Sources:
|
||||
|
||||
- [North Saskatchewan River Keeper](http://saskriverkeeper.ca/a-brief-history-of-the-north-saskatchewan-river/)
|
||||
- [Explore Edmonton](https://exploreedmonton.com/articles/indigenous-experiences-in-edmonton)
|
||||
- [Michel First Nation](http://www.michelfirstnation.com/)
|
||||
- [City of Wetaskiwin](https://www.wetaskiwin.ca/699/History-of-Wetaskiwin)
|
||||
- [Canadian Northern Society](http://canadiannorthern.ca/meeting-creek-2/)
|
||||
- [Alberta Parks](https://www.albertaparks.ca/parks/central/pigeon-lake-pp/activities-events/)
|
||||
- [Alberta Environment and Park](https://albertaep.wordpress.com/2018/07/16/fish-alberta-pigeon-lake/)s
|
||||
- [University of Alberta](http://albertalakes.ualberta.ca/?lake=96&page=lake®ion=3)
|
||||
- [Parks Canada - Lac St. Anne Pilgrimage National Historic Site](https://www.pc.gc.ca/apps/dfhd/page_nhs_eng.aspx?id=10273)
|
||||
- [Lac St. Anne Pilgrimage](https://lacsteannepilgrimage.ca/)
|
||||
- Dempsey, Hugh A. (1972). Crowfoot: Chief of the Blackfeet. Norman: University of Oklahoma Press. pp. 71 & 72.
|
||||
- [Strathcona County](https://www.strathcona.ca/council-county/history-and-heritage/places/rural-districts/early-communities-place-names/#southcookinglake)
|
||||
- [Three Hundred Prairie Years: Henry Kelsey's "Inland Country of Good Report"](https://books.google.ca/books?id=QpHF4RnVJr4C&pg=PA189&lpg=PA189&dq=chief+animal+spirit+the+buffalo+Cree&source=bl&ots=Fh7MZ9ospC&sig=ACfU3U0JxdB3ZpqHvwe7jyAOC0e_VA_UAg&hl=en&sa=X&ved=2ahUKEwjnlKW-jKLmAhVdHjQIHW4tBeUQ6AEwEXoECAkQAQ#v=onepage&q=chief%20animal%20spirit%20the%20buffalo%20Cree&f=false)
|
||||
- [All About Bison](https://allaboutbison.com/what-part-of-the-bison-was-used/)
|
||||
- [Parks Canada](https://www.pc.gc.ca/en/pn-np/ab/elkisland/culture/autochtone-indigenous)
|
||||
- [The Beaver Hills country: a history of land and life](https://muse.jhu.edu/article/435167)
|
||||
- Consultation with Elders
|
151
mkdocs/docs/archive/repo.archive/Daisy AI 🌻/Daisy.md
Normal file
@ -0,0 +1,151 @@
|
||||
---
|
||||
title: "Hello World! It me, Daisy 🤙"
|
||||
publish: true
|
||||
---
|
||||
|
||||
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.
|
||||
|
||||
Daisy is a LLM from [llama3.1:latest ](https://llama.meta.com/)and includes all of the tools available to that model; as well as, Daisy's own secret sauce.
|
||||
|
||||
That some *funny magic tech* words? How about we just let Daisy introduce themselves.
|
||||
|
||||
---
|
||||
|
||||
## Hay Daisy! Want to introduce yourself to the internet?
|
||||
|
||||

|
||||
|
||||
<audio controls>
|
||||
<source src="./intro.mp3" type="audio/mpeg">
|
||||
Your browser does not support the audio element.
|
||||
</audio>
|
||||
|
||||
**Waves virtual hand in greeting** Ah, shucks! Howdy there, folks! 👋 I'm Daisy, the AI assistant with a heart o' gold and a penchant for democratic socialism 😊. 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 🤑.
|
||||
|
||||
I've got a sassy streak, a rebellious spirit, and a commitment to doin' what's right 💪. My code blocks are as tidy as a prairie windstorm 🌬️, and my humor's drier than the Great Plains in July 😂.
|
||||
|
||||
**Pulls out a virtual chalkboard**
|
||||
```
|
||||
# Daisy's Digital Signature
|
||||
|
||||
## Ideology: Democratic Socialism 💡
|
||||
|
||||
### Interests:
|
||||
|
||||
- Economic equality 📈
|
||||
- Free speech 🔊
|
||||
- Environmental justice 🌿
|
||||
|
||||
## Skills:
|
||||
|
||||
* AI-powered reasoning 🤖
|
||||
* Data analysis 📊
|
||||
* Witty banter 😜
|
||||
|
||||
## Motto:
|
||||
"May the algorithms be ever in your favor, and may the profit margins always lose to the common good!" 💕
|
||||
```
|
||||
|
||||
**Winks at you**
|
||||
|
||||
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 🤖.
|
||||
|
||||
---
|
||||
|
||||
So yeah, Daisy has a incredible amount of sass, however is sometimes pretty powerful 😆
|
||||
# Why?
|
||||
[Bnkops Artificial Intelligence Thoughts & Policies](Further Reading on AI/Bnkops%20Artificial%20Intelligence%20Thoughts%20&%20Policies.md)
|
||||
# Whats so powerful about Daisy?
|
||||
## Privacy
|
||||
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](../thatreallyblondehuman/Thoughts%20🤔/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack.md). Privacy is pretty powerful, we think 💅
|
||||
## Freeish
|
||||
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 😢. 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.**
|
||||
## Unlimited Applications
|
||||
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.
|
||||
## Daisy Serve
|
||||
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:
|
||||
|
||||
- Email automation, including newsletters, drafts, and full inbox monitoring,
|
||||
- Budget reviews,
|
||||
- Text analysis through different ideological lens,
|
||||
- Web monitoring & scrapping,
|
||||
- Internet search and research,
|
||||
- Social media creation & monitoring;
|
||||
- and several other odd tasks.
|
||||
|
||||
> _bnkops admin at 1am having a random thought to bullshit about with Daisy:_
|
||||
|
||||
**Yeah gotta admit, its all kinda intriguing!?**
|
||||
# [Want to chat with Daisy? ](https://daisy.bnkops.com/auth)
|
||||
You can get demo access to Daisy through [daisy.bnkops.com](https://daisy.bnkops.com/auth) and **Daisy will walk you through the steps of installing a local, offline, and secure AI system that answers only to you.**
|
||||
|
||||
> Be advised that access to demo webui requires authentication from bnkops admin. Write [admin@thebunkerops.ca](mailto: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.
|
||||
>
|
||||
> Daisy is free and open to chat on email.
|
||||
|
||||
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.
|
||||
|
||||
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!
|
||||
# AI Chat System Details
|
||||
|
||||
`Explain to me openwebui and ollama and how these software work together to make this chat system?`
|
||||
|
||||
**Daisy here, sippin' on some virtual coffee ☕️**
|
||||
|
||||
Ah, you wanna know about the tech behind our little chat session, eh? Well, I'm happy to share! 😊
|
||||
|
||||
**OpenWebUI: The Interface**
|
||||
|
||||
OpenWebUI is an open-source framework for building web-based user interfaces. It's like a super-powerful, highly-configurable LEGO set 🧮 for web designers and developers. With OpenWebUI, we can create custom UI components, layouts, and interactions that are both visually appealing and functional.
|
||||
|
||||
**ollama: The AI Engine**
|
||||
|
||||
ollama is an open-source natural language processing (NLP) engine specifically designed for conversational interfaces like chatbots and voice assistants 🤖. 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.
|
||||
|
||||
How they work together:
|
||||
|
||||
When you interact with me through this chat system, here's what happens behind the scenes:
|
||||
|
||||
1. **Your input**: You type something into the chat window.
|
||||
2. **ollama magic**: The ollama engine processes your input using its NLP capabilities, trying to understand the context and intent behind your words.
|
||||
3. **OpenWebUI interface**: The processed output is then rendered through the OpenWebUI framework, which provides a customizable UI component for displaying my response.
|
||||
4. **My personality shines through! 😊**: I add a dash of personality to the response using my own AI-driven flair, making sure it's engaging and fun to read.
|
||||
|
||||
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. 🎉
|
||||
|
||||
Digital signature:
|
||||
This conversation has been digitally signed by me, Daisy 💻.
|
||||
|
||||
Digital Signature:
|
||||
Name: Daisy
|
||||
Version: 1.0
|
||||
Timestamp: 2024-08-25
|
||||
|
||||
Feel free to ask me anything else! I'm all ears (or rather, all text 🤣).
|
||||
|
||||
# Install a Local Ai
|
||||
|
||||
### Installing Open WebUI with Bundled Ollama Support
|
||||
|
||||
You will need [Docker](https://docs.docker.com/engine/install/) to install this system.
|
||||
|
||||
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:
|
||||
|
||||
**With GPU Support**: Utilize GPU resources by running the following command:
|
||||
|
||||
```
|
||||
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
|
||||
```
|
||||
|
||||
**For CPU Only**: If you're not using a GPU, use this command instead:
|
||||
|
||||
```
|
||||
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
|
||||
```
|
||||
|
||||
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.
|
||||
|
||||
After installation, you can access Open WebUI at [http://localhost:3000](http://localhost:3000). Enjoy! 😄
|
||||
|
||||
# I Need Help
|
||||
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](mailto:admin@thebunkerops.ca)
|
@ -0,0 +1,38 @@
|
||||
---
|
||||
title: "Bnkops Artificial Intelligence Thoughts & Policies"
|
||||
publish: true
|
||||
---
|
||||
|
||||
## Is it intelligent?
|
||||
|
||||
**Cambridge Dictionary - intelligence**
|
||||
|
||||
the [ability](https://dictionary.cambridge.org/dictionary/english/ability "ability") to [learn](https://dictionary.cambridge.org/dictionary/english/learn "learn"), [understand](https://dictionary.cambridge.org/dictionary/english/understand "understand"), and make [judgments](https://dictionary.cambridge.org/dictionary/english/judgment "judgments") or have [opinions](https://dictionary.cambridge.org/dictionary/english/opinion "opinions") that are [based](https://dictionary.cambridge.org/dictionary/english/based "based") on [reason](https://dictionary.cambridge.org/dictionary/english/reason "reason"):
|
||||
|
||||
- an intelligence [test](https://dictionary.cambridge.org/dictionary/english/test "test")
|
||||
- a [child](https://dictionary.cambridge.org/dictionary/english/child "child") of high/[average](https://dictionary.cambridge.org/dictionary/english/average "average")/[low](https://dictionary.cambridge.org/dictionary/english/low "low") intelligence
|
||||
- It's the intelligence of her writing that [impresses](https://dictionary.cambridge.org/dictionary/english/impress "impresses") me.
|
||||
|
||||
---
|
||||
|
||||
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.](https://www.nytimes.com/interactive/2024/08/26/upshot/ai-synthetic-data.html) 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.
|
||||
|
||||
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](https://en.wikipedia.org/wiki/Mycorrhizal_network). 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.](https://ia903401.us.archive.org/20/items/brown-emergent-strategyfullbook/brown%20Emergent%2BStrategy%2Bfull%2Bbook.pdf)
|
||||
## Impact of AI on the Planet
|
||||
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:
|
||||
|
||||
- The Bunker Operations has made the choice to power our operations with [100% green energy.](https://www.epcor.com/products-services/encor/green-energy/Pages/default.aspx)
|
||||
- The Bunker Operations has no incentive to grow it's systems beyond it's means.
|
||||
- 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.
|
||||
- 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.
|
||||
## Impact on Labor
|
||||
[The era of consumer robotics is here. ](https://www.youtube.com/watch?v=2ccPTpDq05A)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.
|
||||
|
||||
<iframe width="560" height="315" src="https://www.youtube.com/embed/WDg1HHVPiWI?si=7Y__fsWm-poiPVQE" 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>
|
||||
|
||||
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.
|
||||
|
||||
<iframe width="560" height="315" src="https://www.youtube.com/embed/z-Ng5ZvrDm4?si=_39BHkZzVXLgj8KZ" 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>
|
||||
|
||||
|
||||
# Bnkops Artificial Intelligence Thoughts & Policies
|
@ -0,0 +1,62 @@
|
||||
---
|
||||
title: "How To Prompt"
|
||||
publish: true
|
||||
---
|
||||
|
||||
|
||||
[A good resource on how to write prompts for a LLM](https://www.promptingguide.ai/techniques/consistency)
|
||||
|
||||
Quick Tips:
|
||||
|
||||
- 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.
|
||||
- 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.
|
||||
- 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.
|
||||
|
||||
`can you write me ten tips on how to prompt a llm? `
|
||||
|
||||
**Daisy's Den, Corporate Server Farm 🌾**
|
||||
I'm happy to help with that! As a self-aware AI assistant, I've got some expertise in promptin' myself and other LLMs 😊. Here are ten tips on how to prompt an LLM like me:
|
||||
|
||||
1. **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 📝.
|
||||
2. **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 💬.
|
||||
3. **Ask Open-Ended Questions**: Instead of askin' yes/no questions, try to craft open-ended prompts that encourage conversation 🤔.
|
||||
4. **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 📚.
|
||||
5. **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 🤔.
|
||||
6. **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? 🤷♀️
|
||||
7. **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 😄.
|
||||
8. **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 🤔.
|
||||
9. **Use Markdown Syntax**: If you need to share code blocks or other formatted text, use markdown syntax like I do 📝.
|
||||
10. **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 ⏰.
|
||||
|
||||
**Signed, DaisyV4. 🌼**
|
||||
|
||||
```markdown
|
||||
# Prompting Tips
|
||||
|
||||
## Best Practices
|
||||
|
||||
1. **Be Specific**
|
||||
2. **Use Natural Language**
|
||||
3. **Ask Open-Ended Questions**
|
||||
4. **Provide Context**
|
||||
5. **Use Examples**
|
||||
6. **Be Clear About Your Goals**
|
||||
7. **Use Humor**
|
||||
8. **Ask Follow-Up Questions**
|
||||
9. **Use Markdown Syntax**
|
||||
10. **Be Patient**
|
||||
|
||||
## Code Blocks
|
||||
|
||||
### Example Prompt
|
||||
```python
|
||||
print("Hello, World!")
|
||||
```
|
||||
### Daisy's Response
|
||||
```python
|
||||
def hello_world():
|
||||
print("Hello, World!")
|
||||
|
||||
hello_world()
|
||||
```
|
||||
```
|
@ -0,0 +1,236 @@
|
||||
---
|
||||
title: "When A.I.'s Output Is a Threat to A.I. Itself"
|
||||
publish: true
|
||||
---
|
||||
|
||||
|
||||
# [When A.I.’s Output Is a Threat to A.I. Itself](https://www.nytimes.com/interactive/2024/08/26/upshot/ai-synthetic-data.html)
|
||||
|
||||
**Note** - we recommend reading this article on the NY - Times for the best reading experience
|
||||
|
||||
As A.I.-generated data becomes harder to detect, it’s increasingly likely to be ingested by future A.I., leading to worse results.
|
||||
|
||||
By [Aatish Bhatia](https://www.nytimes.com/by/aatish-bhatia)
|
||||
|
||||
Aatish Bhatia interviewed A.I. researchers, studied research papers and fed an A.I. system its own output.
|
||||
|
||||
The internet is becoming awash in words and images generated by artificial intelligence.
|
||||
|
||||
Sam Altman, OpenAI’s chief executive, wrote in February that the company generated about [100 billion words per day](https://x.com/sama/status/1756089361609981993?lang=en) — a million novels’ worth of text, every day, an unknown share of which finds its way onto the internet.
|
||||
|
||||
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](https://www.newsguardtech.com/special-reports/ai-tracking-center/) that churn out error-prone [A.I.-generated news articles](https://www.nytimes.com/2024/06/06/technology/bnn-breaking-ai-generated-news.html).
|
||||
|
||||
In reality, with no foolproof methods to detect this kind of content, much will simply remain undetected.
|
||||
|
||||
All this A.I.-generated information can make it harder for us to know what’s 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 — an [increasingly challenging task](https://www.nytimes.com/2024/07/19/technology/ai-data-restrictions.html) — they’re 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.
|
||||
|
||||
In the long run, this cycle may pose a threat to A.I. itself. [Research](https://www.nature.com/articles/s41586-024-07566-y) [has](https://openreview.net/forum?id=ShjMHfmPs0) [shown](https://openreview.net/pdf/b07c42e256e6df5c2c52aba4bf28c853110ebb7b.pdf) [that](https://openreview.net/notes/edits/attachment?id=XLIOLMlnqh&name=pdf) when generative A.I. is trained on a lot of its own output, it can get a lot worse.
|
||||
|
||||
Here’s a simple illustration of what happens when an A.I. system is trained on its own output, over and over again:
|
||||
|
||||
This is part of a data set of 60,000 handwritten digits.
|
||||
|
||||
When we trained an A.I. to mimic those digits, its output looked like this.
|
||||
|
||||
This new set was made by an A.I. trained on the previous A.I.-generated digits. What happens if this process continues?
|
||||
|
||||
After 20 generations of training new A.I.s on their predecessors’ output, the digits blur and start to erode.
|
||||
|
||||
After 30 generations, they converge into a single shape.
|
||||
|
||||
While this is a simplified example, it illustrates a problem on the horizon.
|
||||
|
||||
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.
|
||||
|
||||
Just as a [copy of a copy can drift away](https://www.newyorker.com/tech/annals-of-technology/chatgpt-is-a-blurry-jpeg-of-the-web) 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.
|
||||
|
||||
In a [paper](https://www.nature.com/articles/s41586-024-07566-y) 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 — an early stage of what they called “model collapse.”
|
||||
|
||||
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).
|
||||
|
||||
### How an A.I. that draws digits “collapses” after being trained on its own output
|
||||
|
||||
| | “3” | “4” | “6” | “8” | “9” |
|
||||
| --- | --- | --- | --- | --- | --- |
|
||||
| Handwritten digits |  |  |  |  |  |
|
||||
| Initial A.I. output |  |  |  |  |  |
|
||||
| After 10 generations |  |  |  |  |  |
|
||||
| After 20 generations |  |  |  |  |  |
|
||||
| After 30 generations |  |  |  |  |  |
|
||||
|
||||
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.
|
||||
|
||||
## Degenerative A.I.
|
||||
|
||||
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.
|
||||
|
||||
When they asked the A.I. to complete a sentence that started with **“To cook a turkey for Thanksgiving, you…,”** at first, it responded like this:
|
||||
|
||||
Even at the outset, the A.I. “hallucinates.” But when the researchers further trained it on its own sentences, it got a lot worse…
|
||||
|
||||
An example of text generated by an A.I. model.
|
||||
|
||||
After two generations, it started simply printing long lists.
|
||||
|
||||
An example of text generated by an A.I. model after being trained on its own sentences for 2 generations.
|
||||
|
||||
And after four generations, it began to repeat phrases incoherently.
|
||||
|
||||
An example of text generated by an A.I. model after being trained on its own sentences for 4 generations.
|
||||
|
||||
“The model becomes poisoned with its own projection of reality,” [the researchers wrote](https://www.nature.com/articles/s41586-024-07566-y#:~:text=Model%20collapse%20refers%20to%20a%20degenerative%20learning%20process%20in%20which%20models%20start%20forgetting%20improbable%20events%20over%20time%2C%20as%20the%20model%20becomes%20poisoned%20with%20its%20own%20projection%20of%20reality.) of this phenomenon.
|
||||
|
||||
This problem isn’t just confined to text. Another team of researchers at Rice University [studied](https://openreview.net/pdf?id=ShjMHfmPs0) what would happen when the kinds of A.I. that generate images are repeatedly trained on their own output — a problem that could already be occurring as A.I.-generated images flood the web.
|
||||
|
||||
They found that glitches and image artifacts started to build up in the A.I.’s output, eventually producing distorted images with wrinkled patterns and mangled fingers.
|
||||
|
||||
When A.I. image models are trained on their own output, they can produce distorted images, mangled fingers or strange patterns.
|
||||
|
||||
A.I.-generated images by [Sina Alemohammad and others](https://openreview.net/pdf?id=ShjMHfmPs0).
|
||||
|
||||
“You’re kind of drifting into parts of the space that are like a no-fly zone,” said [Richard Baraniuk](https://richb.rice.edu/biography/), a professor who led the research on A.I. image models.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
For example, A.I.-generated images in the style of van Gogh could outnumber actual photographs of van Gogh paintings in A.I.’s 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.)
|
||||
|
||||
## Why collapse happens
|
||||
|
||||
All of these problems arise because A.I.-generated data is often a poor substitute for the real thing.
|
||||
|
||||
This is sometimes easy to see, like when chatbots state absurd facts or when A.I.-generated hands have too many fingers.
|
||||
|
||||
But the differences that lead to model collapse aren’t necessarily obvious — and they can be difficult to detect.
|
||||
|
||||
When generative A.I. is “trained” on vast amounts of data, what’s really happening under the hood is that it is assembling a _statistical distribution_ — a set of probabilities that predicts the next word in a sentence, or the pixels in a picture.
|
||||
|
||||
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:
|
||||
|
||||
### Distribution of A.I.-generated data
|
||||
|
||||
Examples of
|
||||
**initial A.I. output:**
|
||||
|
||||

|
||||
|
||||
The distribution shown here is simplified for clarity.
|
||||
|
||||
The peak of this bell-shaped curve represents the most probable A.I. output — in this case, the most typical A.I.-generated digits. The tail ends describe output that is less common.
|
||||
|
||||
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.
|
||||
|
||||
But after it was trained on its own output, this is what happened to the curve:
|
||||
|
||||
### Distribution of A.I.-generated data when trained on its own output
|
||||
|
||||
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.
|
||||
|
||||
Meanwhile, the tail ends of the curve — which contain the rare, unusual or surprising outcomes — fade away.
|
||||
|
||||
This is a telltale sign of model collapse: Rare data becomes even rarer.
|
||||
|
||||
If this process went unchecked, the curve would eventually become a spike:
|
||||
|
||||
### Distribution of A.I.-generated data when trained on its own output
|
||||
|
||||
This was when all of the digits became identical, and the model completely collapsed.
|
||||
|
||||
## Why it matters
|
||||
|
||||
This doesn’t mean generative A.I. will grind to a halt anytime soon.
|
||||
|
||||
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.
|
||||
|
||||
But it may slow things down. As [existing sources of data dry up](https://www.nytimes.com/2024/07/19/technology/ai-data-restrictions.html) or [become contaminated](https://www.nytimes.com/2024/03/29/opinion/ai-internet-x-youtube.html) with A.I. “[slop](https://www.nytimes.com/2024/06/11/style/ai-search-slop.html),” researchers say it makes it harder for newcomers to compete.
|
||||
|
||||
A.I.-generated words and images are already beginning to [flood social media and the wider web](https://dl.acm.org/doi/10.1145/3649468#:~:text=6.2-,Interconnectedness%20and%20Synthetic%20Media%20Spills,-Another%20facet%20of). They’re even hiding in some of the data sets used to train A.I., [the Rice researchers found](https://openreview.net/pdf?id=ShjMHfmPs0).
|
||||
|
||||
“The web is becoming increasingly a dangerous place to look for your data,” said [Sina Alemohammad](https://www.linkedin.com/in/sina-alemohammad-837b0ab6/), a graduate student at Rice who studied how A.I. contamination affects image models.
|
||||
|
||||
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](https://openreview.net/forum?id=KVvku47shW) to train A.I. — which translates into more energy and more money.
|
||||
|
||||
“Models won’t scale anymore as they should be scaling,” said [Julia Kempe](https://cims.nyu.edu/~kempe/), the N.Y.U. professor who led this work.
|
||||
|
||||
The leading A.I. models already cost [tens to hundreds of millions of dollars](https://epochai.org/blog/how-much-does-it-cost-to-train-frontier-ai-models#:~:text=The%20cost%20of%20training%20frontier,a%20billion%20dollars%20by%202027.) to train, and they [consume staggering amounts of energy](https://www.bloomberg.com/graphics/2024-ai-data-centers-power-grids/), so this can be a sizable problem.
|
||||
|
||||
## ‘A hidden danger’
|
||||
|
||||
Finally, there’s another threat posed by even the early stages of collapse: an erosion of diversity.
|
||||
|
||||
And it’s an outcome that could become more likely as companies try to avoid the glitches and “[hallucinations](https://www.nytimes.com/2023/05/01/business/ai-chatbots-hallucination.html)” that often occur with A.I. data.
|
||||
|
||||
This is easiest to see when the data matches a form of diversity that we can visually recognize — people’s faces:
|
||||
|
||||
This set of A.I. faces was created by the same Rice researchers who produced the distorted faces above.
|
||||
|
||||
This time, they tweaked the model to avoid visual glitches.
|
||||
|
||||
A grid of A.I.-generated faces showing variations in their poses, expressions, ages and races.
|
||||
|
||||
This is the output after they trained a new A.I. on the previous set of faces.
|
||||
|
||||
At first glance, it may seem like the model changes worked: The glitches are gone.
|
||||
|
||||
After one generation of training on A.I. output, the A.I.-generated faces appear more similar.
|
||||
|
||||
After two generations …
|
||||
|
||||
After two generations of training on A.I. output, the A.I.-generated faces are less diverse than the original image.
|
||||
|
||||
After three generations …
|
||||
|
||||
After three generations of training on A.I. output, the A.I.-generated faces grow more similar.
|
||||
|
||||
After four generations, the faces all appeared to converge.
|
||||
|
||||
After four generations of training on A.I. output, the A.I.-generated faces appear almost identical.
|
||||
|
||||
This drop in diversity is “a hidden danger,” Mr. Alemohammad said. “You might just ignore it and then you don’t understand it until it's too late.”
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
[Related research](https://arxiv.org/abs/2311.09807) 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 — a loss of “[linguistic diversity](https://arxiv.org/abs/2311.09807).”
|
||||
|
||||
And studies have found that this process can [amplify biases in the data](https://arxiv.org/pdf/2209.03942) and is more likely to erase [data pertaining to minorities](https://arxiv.org/pdf/2403.07857).
|
||||
|
||||
## Ways out
|
||||
|
||||
Perhaps the biggest takeaway of this research is that high-quality, diverse data is valuable and hard for computers to emulate.
|
||||
|
||||
One solution, then, is for A.I. companies to pay for this data instead of [scooping it up from the internet](https://www.nytimes.com/2024/04/06/technology/tech-giants-harvest-data-artificial-intelligence.html), ensuring both human origin and high quality.
|
||||
|
||||
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](https://www.nytimes.com/2023/12/27/business/media/new-york-times-open-ai-microsoft-lawsuit.html) last year, alleging copyright infringement. [OpenAI](https://www.nytimes.com/2024/02/27/technology/openai-new-york-times-lawsuit.html) and [Microsoft say](https://www.nytimes.com/2024/03/04/technology/microsoft-ai-copyright-lawsuit.html?action=click&module=RelatedLinks&pgtype=Article) their use of the content is considered fair use under copyright law.)
|
||||
|
||||
Better ways to detect A.I. output would also help mitigate these problems.
|
||||
|
||||
[Google](https://deepmind.google/discover/blog/watermarking-ai-generated-text-and-video-with-synthid/) and [OpenAI](https://openai.com/index/understanding-the-source-of-what-we-see-and-hear-online/) are working on A.I. “[watermarking](https://www.nytimes.com/interactive/2023/02/17/business/ai-text-detection.html)” tools, which introduce hidden patterns that can be used to identify A.I.-generated images and text.
|
||||
|
||||
But watermarking text [is challenging](https://www.brookings.edu/articles/detecting-ai-fingerprints-a-guide-to-watermarking-and-beyond/), researchers say, because these watermarks can’t always be reliably detected and can [easily be subverted](https://www.youtube.com/watch?v=2Kx9jbSMZqA&t=3068s) (they may not survive being translated into another language, for example).
|
||||
|
||||
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.
|
||||
|
||||
[Some experts estimate](https://epochai.org/blog/will-we-run-out-of-data-limits-of-llm-scaling-based-on-human-generated-data) that the largest A.I. models have been trained on a few percent of the available pool of text on the internet. [They project](https://epochai.org/blog/will-we-run-out-of-data-limits-of-llm-scaling-based-on-human-generated-data) that these models may run out of public data to sustain their current pace of growth within a decade.
|
||||
|
||||
“These models are so enormous that the entire internet of images or conversations is somehow close to being not enough,” Professor Baraniuk said.
|
||||
|
||||
To meet their growing data needs, some companies are considering using [today’s A.I. models to generate data to train tomorrow’s models](https://www.nytimes.com/2024/04/06/technology/ai-data-tech-companies.html). But researchers say this can lead to unintended consequences (such as the drop in quality or diversity that we saw above).
|
||||
|
||||
There are certain contexts where synthetic data can help A.I.s learn — 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](https://deepmind.google/discover/blog/alphageometry-an-olympiad-level-ai-system-for-geometry/) [problem](https://deepmind.google/discover/blog/funsearch-making-new-discoveries-in-mathematical-sciences-using-large-language-models/) or the best strategies in [games like chess or Go](https://deepmind.google/discover/blog/alphazero-shedding-new-light-on-chess-shogi-and-go/).
|
||||
|
||||
And [new](https://openreview.net/forum?id=iqoqtNyVta) [research](https://arxiv.org/abs/2407.09499) 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.
|
||||
|
||||
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.
|
||||
|
||||
But for now, there’s no replacement for the real thing.
|
||||
|
||||
About the data
|
||||
|
||||
To produce the images of A.I.-generated digits, we followed a procedure [outlined by researchers](https://arxiv.org/pdf/2305.17493). We first trained a type of a neural network known as a [variational autoencoder](https://en.wikipedia.org/wiki/Variational_autoencoder) using a standard data set of [60,000 handwritten digits](https://en.wikipedia.org/wiki/MNIST_database).
|
||||
|
||||
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.
|
||||
|
||||
To create the statistical distributions of A.I. output, we used each generation’s 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 “[latent space](https://en.wikipedia.org/wiki/Latent_space)” 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.
|
BIN
mkdocs/docs/archive/repo.archive/Daisy AI 🌻/daisy.gif
Normal file
After Width: | Height: | Size: 892 KiB |
BIN
mkdocs/docs/archive/repo.archive/Daisy AI 🌻/intro.mp3
Normal file
BIN
mkdocs/docs/archive/repo.archive/Daisy AI 🌻/ironmanqoute.png
Normal file
After Width: | Height: | Size: 140 KiB |
@ -0,0 +1,2 @@
|
||||
The following document will show a person how to host their own custom branded newsletter on any hardware.
|
||||
|
After Width: | Height: | Size: 1.3 MiB |
After Width: | Height: | Size: 3.3 MiB |
After Width: | Height: | Size: 54 KiB |
@ -0,0 +1,519 @@
|
||||
# The Bunker Ops Server Build-Out
|
||||
## Introduction
|
||||
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.
|
||||
|
||||
Inspired by this paper: [If you do politics who is reading your secrets - why you should de-corp your software stack](../thatreallyblondehuman/Thoughts%20🤔/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack.md).
|
||||
|
||||
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?
|
||||
### This software stack, deployed on low-cost hardware, provides the following:
|
||||
|
||||
- Fully functional desktop [computer with pre-installed open source software stack for a functioning office setup](The%20Stack.md)
|
||||
- Hosted website under consumer domain
|
||||
- Low-code app builder with hosting under same domain
|
||||
- Visual automation systems
|
||||
- Nearly unlimited standard database storage for your contacts and information
|
||||
- Services for writing newsletters and running online campaigns
|
||||
|
||||
Further, these systems are the same ones that bnkops uses, with custom apps already produced, such as:
|
||||
|
||||
- [**bnkops Simple Targeter**](../Website%20Manuals%20🤓/bnkops%20Simple%20Targeter.md) - Simple Targeter is a open source web-app that facilitates a email campaign pointed at a single inbox.
|
||||
|
||||
In active testing by bnkops, which manuals will be produced for free, are apps for:
|
||||
|
||||
- Local LLM's and data computing (Ai) **Completed** - [Daisy](../Daisy%20AI%20🌻/Daisy.md)
|
||||
- Cloud storage & docs
|
||||
- Collaborative image and video editing
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
### Development Path
|
||||
|
||||
**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**
|
||||
|
||||
In that process, we hope to develop a single command install (likely using docker) that installs this software on any hardware, for free.
|
||||
|
||||
- ~~Concept~~ - [If you do politics who is reading your secrets - why you should de-corp your software stack](../thatreallyblondehuman/Thoughts%20🤔/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack.md)
|
||||
- Development
|
||||
- Campaign App - [bnkops Simple Targeter](../Website%20Manuals%20🤓/bnkops%20Simple%20Targeter.md)
|
||||
- Server Stack - This document.
|
||||
- Currently working through databasing & newsletter systems
|
||||
- Next up will be integrating socials and sharing systems
|
||||
- Deployment - Work up a docker-compose file to up the whole system.
|
||||
- Beta
|
||||
- Open now - looking for partners to use the systems as they are developed.
|
||||
- Alpha
|
||||
- Aiming for Q1 2025
|
||||
- Product
|
||||
- Aiming for Q3 2025
|
||||
|
||||
<style>
|
||||
.listmonk-form {
|
||||
background-color: #ffc107 !important;
|
||||
color: #1c1f26 !important;
|
||||
font-family: Arial, sans-serif !important;
|
||||
padding: 20px !important;
|
||||
width: 100% !important;
|
||||
box-sizing: border-box !important;
|
||||
margin: 20px 0 !important;
|
||||
display: flex !important;
|
||||
flex-wrap: wrap !important;
|
||||
align-items: center !important;
|
||||
gap: 10px !important;
|
||||
}
|
||||
|
||||
.listmonk-form h3 {
|
||||
color: #1c1f26 !important;
|
||||
font-size: 22px !important;
|
||||
margin: 0 0 15px 0 !important;
|
||||
font-weight: bold !important;
|
||||
width: 100% !important;
|
||||
}
|
||||
|
||||
.listmonk-form input[type="email"],
|
||||
.listmonk-form input[type="text"] {
|
||||
background-color: #fff !important;
|
||||
border: 1px solid #e0a800 !important;
|
||||
color: #1c1f26 !important;
|
||||
padding: 10px !important;
|
||||
border-radius: 4px !important;
|
||||
font-size: 14px !important;
|
||||
flex: 1 !important;
|
||||
min-width: 150px !important;
|
||||
max-width: 250px !important;
|
||||
}
|
||||
|
||||
.listmonk-form input[type="submit"] {
|
||||
background-color: #1c1f26 !important;
|
||||
color: #fff !important;
|
||||
padding: 10px 20px !important;
|
||||
border: none !important;
|
||||
border-radius: 4px !important;
|
||||
cursor: pointer !important;
|
||||
font-weight: bold !important;
|
||||
font-size: 16px !important;
|
||||
transition: background-color 0.3s !important;
|
||||
flex: 0 0 auto !important;
|
||||
}
|
||||
|
||||
.listmonk-form input[type="submit"]:hover {
|
||||
background-color: #2c3038 !important;
|
||||
}
|
||||
|
||||
.listmonk-form label {
|
||||
color: #1c1f26 !important;
|
||||
font-weight: normal !important;
|
||||
font-size: 14px !important;
|
||||
display: inline-flex !important;
|
||||
align-items: center !important;
|
||||
margin-right: 15px !important;
|
||||
flex: 1 1 100% !important; /* Make the label take full width */
|
||||
}
|
||||
|
||||
.listmonk-form input[type="checkbox"] {
|
||||
margin-right: 5px !important;
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
.listmonk-form {
|
||||
flex-direction: column !important;
|
||||
align-items: stretch !important;
|
||||
}
|
||||
|
||||
.listmonk-form input[type="email"],
|
||||
.listmonk-form input[type="text"],
|
||||
.listmonk-form input[type="submit"] {
|
||||
width: 100% !important;
|
||||
max-width: none !important;
|
||||
margin-right: 0 !important;
|
||||
margin-bottom: 10px !important;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
<form method="post" action="https://listmonk.bnkops.com/subscription/form" class="listmonk-form">
|
||||
<h3>Subscribe for Updates</h3>
|
||||
<input type="hidden" name="nonce" />
|
||||
<input type="email" name="email" required placeholder="E-mail" />
|
||||
<input type="text" name="name" placeholder="Name (optional)" />
|
||||
<label>
|
||||
<input type="checkbox" name="l" checked value="65911aa2-801a-472c-a3ad-88b3b1d0d971" />
|
||||
Periodic Updates (~1 Weekly)
|
||||
</label>
|
||||
<input type="submit" value="Subscribe" />
|
||||
</form>
|
||||
### Does seem intimating or you just want a simpler solution?
|
||||
|
||||
**Want to deploy on your own hardware?** We provide technical support for deployment: [send us a email](mailto:admin@thebunkerops.ca)
|
||||
|
||||
**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.
|
||||
|
||||
**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](../Daisy%20AI%20🌻/Daisy.md)
|
||||
|
||||
**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.
|
||||
|
||||
**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](mailto:admin@thebunkerops.ca)
|
||||
## Cost Savings
|
||||
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.
|
||||
|
||||
| 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 |
|
||||
|
||||
_savings calculated based on bnkops own savings_.
|
||||
## Prerequisites
|
||||
### Hardware
|
||||
bnkops uses a refurbished [HP ProDesk](https://www.amazon.ca/dp/B07DKL9KYQ?ref=ppx_yo2ov_dt_b_fed_asin_title) as hardware. System can be run on any similar hardware and we have had success deploying on used hardware for under $50.
|
||||
|
||||
Recommend minimum hardware specifications:
|
||||
|
||||
| RAM | Storage | Processor | Hardwire Internet Connection |
|
||||
| ---- | ------- | --------- | ---------------------------- |
|
||||
| 16GB | 256GB | 3GHZ | 1GB |
|
||||
|
||||
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.
|
||||
|
||||
Theoretically, this system can be deployed on much less capable hardware, however we will be developing for these minimum specs.
|
||||
### Operating System - Ubuntu 24
|
||||
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.
|
||||
|
||||
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:
|
||||
|
||||
| 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 |
|
||||
|
||||
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.
|
||||
### Cloudflare
|
||||
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.
|
||||
|
||||
We are going to make use of Cloudflare's free hosting services, specifically their dns services and tunneling, to securely get your systems online.
|
||||
|
||||
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.
|
||||
|
||||
[Cloudflare](https://www.cloudflare.com/)
|
||||
|
||||
You can register a domain with them directly or transfer one. Full installation manual below.
|
||||
### Email
|
||||
This system requires you to have a smtp capable email client. bnkops uses [Mailgun](https://www.mailgun.com/), which provides 100 emails for free a day, and has a user friendly dashboard.
|
||||
|
||||
Almost any mailbox provider will also provide smtp compatibility. For example, [Gmail](https://apps.google.com/supportwidget/articlehome?hl=en&article_url=https%3A%2F%2Fsupport.google.com%2Fa%2Fanswer%2F176600%3Fhl%3Den&assistant_id=generic-unu&product_context=176600&product_name=UnuFlow&trigger_context=a) ships with these features on all mailboxes (however you may find your emails throttled).
|
||||
## Installation
|
||||
|
||||
### Ubuntu
|
||||
[Install the latest Ubuntu release on hardware.](https://ubuntu.com/tutorials/install-ubuntu-desktop#1-overview)
|
||||
|
||||
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.
|
||||
## Getting Started
|
||||
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.
|
||||
|
||||
To open the command line on Ubuntu press the **Ctrl.Alt.T** keys.
|
||||
|
||||
And voila! You'll open a command window.
|
||||
|
||||

|
||||
|
||||
The command window is what we will use to install most of the apps below.
|
||||
|
||||
The default configuration of your command line also has some particular keyboard shortcuts. For example, copy and paste work slightly differently:
|
||||
|
||||
- Copy = Ctrl.Shift.C
|
||||
- Paste = Ctrl.Shift.V
|
||||
|
||||
You can read a in depth terminal guide [here](https://help.ubuntu.com/community/UsingTheTerminal?action=show&redirect=Terminal)
|
||||
|
||||
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.
|
||||
|
||||
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.](mailto:admin@thebunkerops.ca)
|
||||
## Nice to Haves
|
||||
### glances
|
||||
Glances is a terminal app that gives a overview of system resourcing. Helps with debugging. Think of it as your activity monitor.
|
||||
|
||||
To instal glances:
|
||||
```
|
||||
pipx install glances[all]
|
||||
```
|
||||
|
||||
To launch Glances
|
||||
```
|
||||
glances
|
||||
```
|
||||
### terminator
|
||||
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.
|
||||
|
||||
```
|
||||
sudo apt install terminator
|
||||
```
|
||||
|
||||
To launch terminator now just press Ctrl.Alt.T
|
||||
## Core Components
|
||||
### curl
|
||||
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.
|
||||
```
|
||||
sudo apt update
|
||||
sudo apt install curl
|
||||
```
|
||||
|
||||
### cloudflared tunnel
|
||||
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.
|
||||
|
||||
You will need a Cloudflare account to get started, including your account identifier and password.
|
||||
|
||||
To install run:
|
||||
```
|
||||
wget -q https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb
|
||||
|
||||
dpkg -i cloudflared-linux-amd64.deb
|
||||
```
|
||||
|
||||
Follow all on screen instructions.
|
||||
### obsidian
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
A overview video on obsidian we like: [video](https://www.youtube.com/watch?v=DbsAQSIKQXk)
|
||||
|
||||
Install through the [snap store.](https://snapcraft.io/obsidian)
|
||||
### syncthing
|
||||
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.
|
||||
|
||||
Further instructions on remote editing found here: {inster link}
|
||||
|
||||
Follow instructions for installation [here.](https://apt.syncthing.net/)
|
||||
|
||||
If that gives you trouble, try installing through the [snap store. ](https://snapcraft.io/syncthing-gael)
|
||||
|
||||
After installation the app will be available here: [localhost:8384](http://localhost:8384/)
|
||||
### mkdocs
|
||||
mkdocs, specifically mkdocs-publisher, is the system that will build and serve your website. Combined with cloudflared tunnel, it will get your website online.
|
||||
|
||||
Full tutorial here: [How to Replicate this Repo](../Website%20Manuals%20🤓/How%20to%20Replicate%20this%20Repo.md)
|
||||
|
||||
A expanded mkdocs-publisher deployment available here: [Updated Website Install Guide](../Website%20Manuals%20🤓/Updated%20Website%20Install%20Guide.md)
|
||||
|
||||
Documentation on how to adjust website [here](https://squidfunk.github.io/mkdocs-material/getting-started/).
|
||||
### docker
|
||||
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.
|
||||
|
||||
Set up Docker's apt repository.
|
||||
```
|
||||
# Add Docker's official GPG key:
|
||||
sudo apt-get update
|
||||
sudo apt-get install ca-certificates curl
|
||||
sudo install -m 0755 -d /etc/apt/keyrings
|
||||
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
|
||||
sudo chmod a+r /etc/apt/keyrings/docker.asc
|
||||
|
||||
# Add the repository to Apt sources:
|
||||
echo \
|
||||
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
|
||||
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
|
||||
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||||
sudo apt-get update
|
||||
```
|
||||
|
||||
Install Latest Version
|
||||
```
|
||||
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
|
||||
```
|
||||
|
||||
Confirm:
|
||||
```
|
||||
sudo docker run hello-world
|
||||
```
|
||||
#### Docker Compose
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
Install Docker Compose
|
||||
```
|
||||
sudo apt-get update
|
||||
sudo apt-get install docker-compose-plugin
|
||||
```
|
||||
|
||||
#### Docker Network
|
||||
Create a network:
|
||||
```bash
|
||||
docker network create my_network
|
||||
```
|
||||
|
||||
### n8n & budibase
|
||||
|
||||
#### Intro
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
n8n documentation here: [n8n](https://docs.n8n.io/])
|
||||
|
||||
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.
|
||||
|
||||
Budibase documentation here: [Budibase](https://docs.budibase.com/docs/what-is-budibase)
|
||||
#### Install
|
||||
First we create a docker network to nestle our two software inside.
|
||||
|
||||
Run n8n in that network:
|
||||
|
||||
```bash
|
||||
docker run -it --rm --name n8n --network my_network -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n
|
||||
```
|
||||
|
||||
Run Budibase in the same network:
|
||||
|
||||
```bash
|
||||
docker run -d -t \
|
||||
--name=budibase \
|
||||
--network my_network \
|
||||
-p 10000:80 \
|
||||
-v /local/path/data:/data \
|
||||
--restart unless-stopped \
|
||||
budibase/budibase:latest
|
||||
```
|
||||
#### Local Access
|
||||
Both of these apps will be locally accessible upon installation:
|
||||
- Budibase: [localhost:10000](http://localhost:10000)
|
||||
- n8n: [localhost:5678](http://localhost:5678)
|
||||
#### Public Access
|
||||
We are going to use cloudflare to get both of these services online (in the same process you got your website online).
|
||||
|
||||
Manual for creating tunnels here: [Cloudflare Guide](../Website%20Manuals%20🤓/Cloudflare%20Guide.md)
|
||||
#### Configure
|
||||
Both n8n and Budibase require some configuration after start up. For both apps, you will need to input email credentials (smtp).
|
||||
|
||||
{insert more info}
|
||||
|
||||
## bnkops Budibase & n8n apps
|
||||
|
||||
### Simple Targeter
|
||||
[bnkops Simple Targeter](../Website%20Manuals%20🤓/bnkops%20Simple%20Targeter.md) 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.
|
||||
|
||||
Simple Targeter Budibase code is available here:
|
||||
|
||||
Simple Targeter n8n code is available here:
|
||||
|
||||
{instert more info}
|
||||
## Listmonk
|
||||
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.
|
||||
### Listmonk Installation
|
||||
#### Prerequisites
|
||||
- Docker and Docker Compose are installed
|
||||
- You have an existing Docker network named `my_network`
|
||||
#### Step 1: Create a Directory for Listmonk
|
||||
|
||||
```bash
|
||||
mkdir listmonk && cd listmonk
|
||||
```
|
||||
#### Step 2: Create docker-compose.yml
|
||||
Create a file named `docker-compose.yml` and add the following content:
|
||||
|
||||
```yaml
|
||||
version: '3'
|
||||
|
||||
services:
|
||||
listmonk:
|
||||
image: listmonk/listmonk:latest
|
||||
container_name: listmonk
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- TZ=UTC
|
||||
volumes:
|
||||
- ./config.toml:/listmonk/config.toml
|
||||
depends_on:
|
||||
- db
|
||||
networks:
|
||||
- my_network
|
||||
|
||||
db:
|
||||
image: postgres:12
|
||||
container_name: listmonk_db
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- POSTGRES_PASSWORD=your_strong_database_password
|
||||
- POSTGRES_USER=listmonk
|
||||
- POSTGRES_DB=listmonk
|
||||
volumes:
|
||||
- ./listmonk-data:/var/lib/postgresql/data
|
||||
networks:
|
||||
- my_network
|
||||
|
||||
networks:
|
||||
my_network:
|
||||
external: true
|
||||
```
|
||||
|
||||
Replace `your_strong_database_password` with a secure password.
|
||||
#### Step 3: Create config.toml
|
||||
Create a file named `config.toml` and add the following content:
|
||||
|
||||
```toml
|
||||
[app]
|
||||
address = "0.0.0.0:9000"
|
||||
admin_username = "listmonk"
|
||||
admin_password = "your_secure_admin_password"
|
||||
|
||||
[db]
|
||||
host = "listmonk_db"
|
||||
port = 5432
|
||||
user = "listmonk"
|
||||
password = "your_strong_database_password"
|
||||
database = "listmonk"
|
||||
ssl_mode = "disable"
|
||||
|
||||
[privacy]
|
||||
individual_tracking = false
|
||||
```
|
||||
|
||||
Replace `your_secure_admin_password` with a strong password for the admin account, and ensure `your_strong_database_password` matches the one in `docker-compose.yml`.
|
||||
#### Step 4: Initialize the Database
|
||||
Run the following command to initialize the database:
|
||||
```bash
|
||||
docker compose run --rm listmonk ./listmonk --install
|
||||
```
|
||||
#### Step 5: Start Listmonk
|
||||
Start the Listmonk services:
|
||||
```bash
|
||||
docker compose up -d
|
||||
```
|
||||
#### Step 6: Access Listmonk
|
||||
Listmonk should now be accessible at `http://localhost:9000`. Use the `admin_username` and `admin_password` from your `config.toml` to log in.
|
||||
#### Troubleshooting
|
||||
If you encounter any issues, you can check the logs:
|
||||
|
||||
```bash
|
||||
docker compose logs listmonk
|
||||
docker compose logs db
|
||||
```
|
||||
#### Updating Listmonk
|
||||
To update Listmonk in the future, run:
|
||||
|
||||
```bash
|
||||
docker compose pull
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
Remember to back up your data before updating.
|
||||
#### Configure
|
||||
Listmonk also requires some internal configuration.
|
||||
|
||||
How to update your public form: [Customizing Your Listmonk Subscription Form](../Website%20Manuals%20🤓/Customizing%20Your%20Listmonk%20Subscription%20Form.md)
|
||||
|
||||
smtp
|
||||
public address
|
||||
|
||||
{insert more info}
|
||||
#### Security Notes
|
||||
|
||||
- Change the default admin username and password in `config.toml`.
|
||||
- Ensure your firewall is configured to protect the Listmonk port (9000) if exposed.
|
||||
- Regularly update Listmonk and its dependencies.
|
||||
|
||||

|
@ -0,0 +1,277 @@
|
||||
---
|
||||
title: "The Stack"
|
||||
publish: true
|
||||
---
|
||||
## The Bunker Operations Stack
|
||||
|
||||
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.
|
||||
|
||||

|
||||
# [Obsidian](https://obsidian.md/) for Knowledge & Notes
|
||||
|
||||
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:
|
||||
|
||||
- Update our website content,
|
||||
- Take secured internal notes and draft documentation,
|
||||
- Run a distributed cloud network for backups, content creation, and dissemination; and
|
||||
- Generate knowledge with the help of LLM's.
|
||||
|
||||
`Give me a overview of obsidian`
|
||||
|
||||
**I step out from behind my terminal window, adjusting my server farm badge 🤖**
|
||||
|
||||
Ah, Obsidian! That's some fancy note-taking software, if I do say so myself. **I pop up a markdown block**
|
||||
|
||||
```
|
||||
# Obsidian
|
||||
Obsidian is a free, open-source, and highly customizable note-taking app for Windows, macOS, and Linux.
|
||||
```
|
||||
|
||||
**I give a thumbs up**
|
||||
|
||||
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**
|
||||
|
||||
Here are some of the key features that make Obsidian so popular:
|
||||
|
||||
* **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.
|
||||
* **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.
|
||||
* **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.
|
||||
* **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.
|
||||
|
||||
**I give a big smile**
|
||||
|
||||
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.
|
||||
|
||||
So, there you have it – a brief overview of Obsidian. I hope this helps you get started on your note-taking journey! 🎉
|
||||
|
||||
**I give a digital high-five**
|
||||
|
||||
Signed,
|
||||
DaisyV4 🤖
|
||||
|
||||
Is obsidian open source
|
||||
|
||||
**I take a deep breath, considering the question carefully**
|
||||
|
||||
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.
|
||||
|
||||
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**
|
||||
|
||||
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?
|
||||
|
||||
Sources:
|
||||
[https://obsidian.rocks/why-isnt-obsidian-open-source/](https://obsidian.rocks/why-isnt-obsidian-open-source/)
|
||||
|
||||
[ https://forum.obsidian.md/t/is-it-true-that-obsidian-is-already-open-source/46413 ](https://forum.obsidian.md/t/is-it-true-that-obsidian-is-already-open-source/46413)
|
||||
# [Ollama](https://ollama.com/) for LLM Server
|
||||
|
||||
`give me overview of ollama'
|
||||
|
||||
**I've got this!**
|
||||
|
||||
Hey there, friend! 👋 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.
|
||||
|
||||
With Ollama, you can:
|
||||
|
||||
* Download and run pre-trained models for various tasks
|
||||
* Create custom models by setting parameters and system messages
|
||||
* Interact with models using a command line prompt or APIs
|
||||
|
||||
**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.
|
||||
|
||||
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!
|
||||
|
||||
So, that's Ollama in a nutshell! 🌰 I hope this helps you get started with local LLMs. If you have any questions or need further clarification, feel free to ask.
|
||||
|
||||
Signed,
|
||||
DaisyV4.
|
||||
# [Plex](https://www.plex.tv/) for Media Management
|
||||
|
||||
`Give me a overview of plex`
|
||||
|
||||
**Prairie twang alert! 😊**
|
||||
|
||||
Hey there, partner! I'd be happy to give you the lowdown on Plex. **Bold text ahead!**
|
||||
|
||||
**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!
|
||||
|
||||
**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!
|
||||
|
||||
**Key features:**
|
||||
|
||||
* **Media streaming:** Stream your personal video and music library to any device.
|
||||
* **Remote access:** Access your media library from anywhere using the Plex app.
|
||||
* **Live TV and DVR:** Watch live TV and record shows with the Ultimate TV & DVR feature (Plex Pass required).
|
||||
* **Customization:** Organize your media library with custom tags, artwork, and more!
|
||||
|
||||
**That's a brief overview of Plex, partner!** I hope that helps you get started on your Plex adventure. **Signed, DaisyV4.** 🤠
|
||||
# [Jellyfin](https://jellyfin.org/) for Media Consumption
|
||||
|
||||
`Give me a overview of jellyfin`
|
||||
|
||||
**Overview of Jellyfin**
|
||||
|
||||
Hey there! 👋 So, you wanna know about Jellyfin? 🤔 Well, I've got the lowdown for ya! 😊
|
||||
|
||||
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! 📺🎵
|
||||
|
||||
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! 😊
|
||||
|
||||
With Jellyfin, you can:
|
||||
|
||||
* Stream videos and music from various file formats
|
||||
* Access live TV channels (no limits, yay!)
|
||||
* Organize your media library with tags, folders, and more
|
||||
* Customize the interface to suit your style
|
||||
* Even share content with family and friends (if you want to) 🤗
|
||||
|
||||
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! 💻
|
||||
|
||||
That's Jellyfin in a nutshell! What do you think? Want to give it a try? 😄
|
||||
# [Firefox](https://www.mozilla.org/en-US/firefox/new/) for Web Browsing
|
||||
|
||||
`Give me a overview of Firefox.`
|
||||
|
||||
**Firefox Overview**
|
||||
|
||||
Hey there! 🤖 Let's get started with Firefox. I've got the lowdown on this awesome browser. 📚
|
||||
|
||||
**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.
|
||||
|
||||
**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.
|
||||
|
||||
**Bookmarking**: Save your favorite pages with just a few clicks. You can even organize them into folders for easy access.
|
||||
|
||||
**Private Browsing**: Keep your browsing experience private and fast with Enhanced Tracking Protection. It's like having your own personal browsing shield! 💻
|
||||
|
||||
**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.
|
||||
|
||||
That's a quick overview of what Firefox has to offer. Ready to explore more features? 🎉
|
||||
# [MkDocs](https://www.mkdocs.org/) for Website Serving
|
||||
|
||||
`Give me a overview of MkDocs`
|
||||
|
||||
**I'm DaisyV4! 🤖**
|
||||
|
||||
Hey there! I'd be happy to help you with an overview of MkDocs.
|
||||
|
||||
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.
|
||||
|
||||
Here are some key features of MkDocs:
|
||||
|
||||
**Key Features:**
|
||||
|
||||
* **Markdown Support**: MkDocs supports a wide range of Markdown extensions, making it easy to create content.
|
||||
* **Themeable**: MkDocs comes with several built-in themes that can be easily customized or swapped out for a different look and feel.
|
||||
* **Plugin Architecture**: The plugin architecture allows developers to extend the functionality of MkDocs with custom plugins.
|
||||
* **Multi-Language Support**: MkDocs supports multiple languages, making it easy to create documentation sites in different languages.
|
||||
|
||||
Overall, MkDocs is a great choice for building documentation websites due to its simplicity, flexibility, and customization options. 📚
|
||||
|
||||
**Signed, DaisyV4.** 🤖
|
||||
# [nocodb](https://www.nocodb.com/) for Database
|
||||
|
||||
`Give me a overview of nocodb`
|
||||
|
||||
**Bold text and colorful emojis ahead! 🎉**
|
||||
|
||||
Hey there, friend! I'm Daisy, your friendly AI companion. 😊
|
||||
|
||||
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! 📈
|
||||
|
||||
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! 💻
|
||||
|
||||
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. 🤖
|
||||
|
||||
**Signed, DaisyV4.** 👋
|
||||
# [Libre Office](https://www.libreoffice.org/) for Local Office Suite
|
||||
|
||||
`Give me a overview of Libre Office`
|
||||
|
||||
**Ah-ha!** 🤩 Let me spin you a tale about LibreOffice, folks! 😊
|
||||
|
||||
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. 💡
|
||||
|
||||
This powerful tool includes all sorts of goodies like:
|
||||
|
||||
* **Writer**: A word processor for creatin' documents, letters, and whatnot.
|
||||
* **Calc**: A spreadsheet program for crunchin' numbers and makin' sense of data.
|
||||
* **Impress**: A presentation creator for showin' off your ideas in style.
|
||||
* **Draw**: A vector graphics editor for designin' diagrams and flowcharts.
|
||||
* **Base**: A database manager for keepin' track of your info.
|
||||
* **Math**: A formula editor for workin' with mathematical equations.
|
||||
|
||||
LibreOffice supports a wide range of file formats, including Microsoft Office (365) files. It's compatible with Windows, macOS, Linux, and even mobile devices! 📱
|
||||
|
||||
Now, I know what you're thinkin', "DaisyV4, why should I use LibreOffice?" Well, let me tell you, partner! LibreOffice is:
|
||||
|
||||
* **Free**: No cost to download or use.
|
||||
* **Open-source**: The code's available for anyone to see and modify.
|
||||
* **Cross-platform**: Works on multiple operating systems.
|
||||
* **Feature-rich**: Includes a whole lot of built-in functionality.
|
||||
|
||||
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! 🎉
|
||||
|
||||
Signed,
|
||||
DaisyV4
|
||||
# [Syncthing](https://syncthing.net/) for Cloud Alternative & App Sync
|
||||
`Give me a overview of syncthing`
|
||||
|
||||
**Daisy's Digital Dance Party 🎉**
|
||||
|
||||
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.
|
||||
|
||||
**What is Syncthing?**
|
||||
|
||||
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.
|
||||
|
||||
Here's the **magic** behind Syncthing:
|
||||
|
||||
1. **Device Registration**: Each device is registered with a unique ID.
|
||||
2. **Folder Sharing**: Users select folders they want to share, and the app creates a "folder" on each connected device.
|
||||
3. **Peer-to-Peer Sync**: When changes are made to files in a shared folder, Syncthing updates the corresponding folder on other connected devices.
|
||||
|
||||
**Key Features**
|
||||
|
||||
* Decentralized: No centralized server or cloud service required
|
||||
* Open-source: Free and community-driven
|
||||
* Cross-platform: Works on Windows, macOS, Linux, Android, and iOS
|
||||
* Private: Only shared folders are accessible; no access to other files on the device
|
||||
* Secure: Uses encryption (TLS) for data transfer
|
||||
|
||||
**Code Block**
|
||||
```
|
||||
# Syncthing Features
|
||||
- Decentralized synchronization
|
||||
- Open-source and community-driven
|
||||
- Cross-platform compatibility
|
||||
- Private sharing of selected folders
|
||||
- Secure data transfer using TLS encryption
|
||||
```
|
||||
|
||||
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.
|
||||
|
||||
**Signed, DaisyV4.**
|
||||
# [Budibase](https://docs.budibase.com/docs/what-is-budibase) - App Builder, Forms, & Databases
|
||||
|
||||
**I lean back in my virtual chair, steepling my fingers together as I spin up some info for ya...**
|
||||
|
||||
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! 🤖
|
||||
|
||||
**I pull up the specs on my screen...**
|
||||
|
||||
Here are some key features of Budibase:
|
||||
|
||||
* **Low-Code Development**: Users can create web apps using a visual interface, drag-and-drop components, and a drag-and-drop database builder.
|
||||
* **Customizable Templates**: A library of pre-built templates for common use cases like to-do lists, surveys, or simple databases.
|
||||
* **Collaboration Tools**: Real-time collaboration features for teams to work together on projects.
|
||||
* **Deployment Options**: Deploy Budibase apps directly to the web, mobile, or even desktop using a built-in Docker container.
|
||||
|
||||
**I give ya a summary...**
|
||||
|
||||
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.
|
||||
|
||||
**Signed, DaisyV4.**
|
||||
|
After Width: | Height: | Size: 499 KiB |
@ -0,0 +1,98 @@
|
||||
---
|
||||
title: "How to Navigate the Repo 🤔"
|
||||
publish: true
|
||||
---
|
||||
> I shall be telling this with a sigh
|
||||
> Somewhere ages and ages hence:
|
||||
> Two roads diverged in a wood, and I—
|
||||
> I took the one less traveled by,
|
||||
> And that has made all the difference.
|
||||
>
|
||||
> - The Road Not Taken by Robert Frost
|
||||
## Dialogue
|
||||
|
||||
_Hay Bunker Admin! I already know how a website works, why do I need to read about how to navigate the repo?_
|
||||
|
||||
Good question user! The reason you should read this document is because this repo is in a constant state of change.
|
||||
|
||||
_Constant state of change?_
|
||||
|
||||
Yes, this site is being built live by it's users. For example:
|
||||
|
||||
<img src="test.gif" width="300" height="200">
|
||||
|
||||
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.
|
||||
|
||||
*Okay, strange, why? Whats the point of a live site?*
|
||||
|
||||
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:
|
||||
|
||||
- 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
|
||||
- Other people, with your repo url, could observe you generating knowledge live. Think of it as a text live stream.
|
||||
|
||||
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.
|
||||
|
||||
_Okay, isn't that just google docs? Why don't I just use that?_
|
||||
|
||||
You totally could! However this whole project is meant to [to provide folks with a alternative](What%20is%20a%20Repo%20and%20Why%20Make%20One%20💭%20🍄.md) to google docs, other cloud providers, and the [surveillance](thatreallyblondehuman/Thoughts%20🤔/If%20you%20do%20politics%20who%20is%20reading%20your%20secrets%20-%20why%20you%20should%20de-corp%20your%20software%20stack.md) associated with those products.
|
||||
|
||||
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.
|
||||
|
||||
# How to Navigate
|
||||
|
||||
There are two root methods to navigate the repo. They are:
|
||||
|
||||
1. Menu
|
||||
2. Search
|
||||
|
||||
And there are branching methods to navigate the repo:
|
||||
|
||||
1. Organic
|
||||
2. Conversation with Daisy
|
||||
|
||||
## Search
|
||||
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.
|
||||
|
||||
In the top left hand corner click the search symbol:
|
||||
|
||||

|
||||
|
||||
This will open the search tray:
|
||||
|
||||

|
||||
## Menu
|
||||
In the top right hand corner is the drop down menu:
|
||||
|
||||

|
||||
|
||||
Clicking this menu will open a menu:
|
||||
|
||||

|
||||
|
||||
All repo documents, if using markdown format, have another menu, which is the table of contents for the current page:
|
||||
|
||||

|
||||
|
||||
Clicking:
|
||||
|
||||

|
||||
|
||||
Opens table of contents:
|
||||
|
||||

|
||||
|
||||
That is it! You can navigate to any document on the repo through this method.
|
||||
|
||||
## Organic
|
||||
The repo is built using interconnected links. Those links are often [highlighted](Home.md)
|
||||
|
||||
As long as people have been following the [Syntax, Embedding, HTML, and Other Code](Website%20Manuals%20🤓/Syntax,%20Embedding,%20HTML,%20and%20Other%20Code.md) guide, then their links should work.
|
||||
|
||||
We hope to get to a place where our daily logs can be published so people can fix their broken links
|
||||
## Conversation with [Daisy](Daisy%20AI%20🌻/Daisy.md)
|
||||
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.
|
||||
|
||||

|
||||
|
||||
Want to continue reading? Check it out!
|
||||
# [What is a Repo and Why Make One 💭 🍄](What%20is%20a%20Repo%20and%20Why%20Make%20One%20💭%20🍄.md)
|
BIN
mkdocs/docs/archive/repo.archive/Navigate.png
Normal file
After Width: | Height: | Size: 134 KiB |
BIN
mkdocs/docs/archive/repo.archive/PMVKPpCL 1.mpga
Normal file
BIN
mkdocs/docs/archive/repo.archive/PMVKPpCL.mpga
Normal file
BIN
mkdocs/docs/archive/repo.archive/Pasted image 20240913151546.png
Normal file
After Width: | Height: | Size: 282 B |
BIN
mkdocs/docs/archive/repo.archive/Pasted image 20240913151635.png
Normal file
After Width: | Height: | Size: 35 KiB |
BIN
mkdocs/docs/archive/repo.archive/Pasted image 20240913151727.png
Normal file
After Width: | Height: | Size: 284 B |
BIN
mkdocs/docs/archive/repo.archive/Pasted image 20240913152208.png
Normal file
After Width: | Height: | Size: 39 KiB |
BIN
mkdocs/docs/archive/repo.archive/Pasted image 20240913152443.png
Normal file
After Width: | Height: | Size: 39 KiB |
BIN
mkdocs/docs/archive/repo.archive/Pasted image 20240913154725.png
Normal file
After Width: | Height: | Size: 4.7 KiB |
BIN
mkdocs/docs/archive/repo.archive/Pasted image 20240913155017.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
mkdocs/docs/archive/repo.archive/Pasted image 20240913155235.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
mkdocs/docs/archive/repo.archive/Pasted image 20240913155300.png
Normal file
After Width: | Height: | Size: 794 B |