Repository files navigation

AOS Collective Website

Technology for Human Thriving

Edit with Shakespeare

A simple, fast, and accessible static website for AOS Collective - building freedom tech that enhances, enables, and extends human liberty.

Project Info

URL: https://andotherstuff.org

Type: Static HTML website with unified layout

Website Structure

The website uses a unified layout system with consistent header and footer across all pages:

  • index.html - Home page
  • about-us.html - About Us (Purpose, Practices, Hubs)
  • express-interest.html - Join Us / Express Interest form
  • public/hubs.html - Detailed hub information

Shared Components

  • Header: Sticky navigation with logo, site title, and main navigation links
  • Footer: GitHub link and footer navigation
  • Styles: Shared CSS in styles.css with page-specific styles as needed

See LAYOUT_SYSTEM.md for detailed documentation.

Build System

The project uses an automated sync process to keep source files (root directory) in sync with deployment files (public/ directory). See BUILD_PROCESS.md for detailed documentation on how this works.

Local Development

# Install dependencies
npm install
# Start development server
npm run dev

This will start a Vite development server at http://localhost:8000 with hot module reloading. Changes to HTML files will automatically refresh the browser.

Important: Editing HTML and CSS Files

The website uses a dual-directory structure:

  • Root directory (*.html, *.css) - Source files for editing
  • public/ directory - Deployed files (auto-synced from root)

When editing HTML or CSS files:

  1. Edit files in the root directory (e.g., express-interest.html, styles.css)
  2. The files will automatically sync to public/ during:
    • Build process (npm run build)
    • Deployment (npm run deploy)
    • Manual sync (npm run sync)

Note: The GitHub Actions workflow automatically syncs files before deployment, so you don't need to manually sync before pushing to the main branch. However, if you're testing locally or deploying manually, the sync will happen automatically.

Deployment

Automated Deployment (GitHub Actions)

This project is configured for automatic deployment to Cloudflare Pages via GitHub Actions.

Setup:

  1. Create a Cloudflare Pages project:

    • Log into your Cloudflare account
    • Go to Pages > Create a project
    • Note your Account ID and create an API token
  2. Add secrets to your GitHub repository:

    • Go to Settings > Secrets and variables > Actions
    • Add CLOUDFLARE_API_TOKEN
    • Add CLOUDFLARE_ACCOUNT_ID
  3. Push to the main branch:

    git add .
    git commit -m "Update website"
    git push origin main

The GitHub Action will automatically deploy the public/ directory to Cloudflare Pages.

Manual Deployment

You can also deploy manually using Wrangler (Cloudflare's CLI):

# Install Wrangler (one time)
npm install -g wrangler
# Login to Cloudflare
wrangler login
# Deploy
npm run deploy

Alternatively, you can build the project and deploy the dist folder:

# Build the project (outputs to dist/)
npm run build
# Deploy the dist folder
wrangler pages deploy dist --project-name=nostr-future-collective

Contributing

We welcome contributions! To contribute:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/your-feature)
  3. Make your changes to files in the root directory (not in public/)
  4. Test locally with npm run dev
  5. Commit your changes (git commit -m 'Add some feature')
  6. Push to the branch (git push origin feature/your-feature)
  7. Open a Pull Request

Note: You don't need to manually sync files to the public/ directory - this happens automatically during the build and deployment process.

License

MIT

Contact

For questions or to get involved with AOS Collective:


Built with ❤️ for human thriving by AOS Collective

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

AOS Collective Website

Technology for Human Thriving

Edit with Shakespeare

A simple, fast, and accessible static website for AOS Collective - building freedom tech that enhances, enables, and extends human liberty.

Project Info

URL: https://andotherstuff.org

Type: Static HTML website with unified layout

Website Structure

The website uses a unified layout system with consistent header and footer across all pages:

  • index.html - Home page
  • about-us.html - About Us (Purpose, Practices, Hubs)
  • express-interest.html - Join Us / Express Interest form
  • public/hubs.html - Detailed hub information

Shared Components

  • Header: Sticky navigation with logo, site title, and main navigation links
  • Footer: GitHub link and footer navigation
  • Styles: Shared CSS in styles.css with page-specific styles as needed

See LAYOUT_SYSTEM.md for detailed documentation.

Build System

The project uses an automated sync process to keep source files (root directory) in sync with deployment files (public/ directory). See BUILD_PROCESS.md for detailed documentation on how this works.

Local Development

# Install dependencies
npm install
# Start development server
npm run dev

This will start a Vite development server at http://localhost:8000 with hot module reloading. Changes to HTML files will automatically refresh the browser.

Important: Editing HTML and CSS Files

The website uses a dual-directory structure:

  • Root directory (*.html, *.css) - Source files for editing
  • public/ directory - Deployed files (auto-synced from root)

When editing HTML or CSS files:

  1. Edit files in the root directory (e.g., express-interest.html, styles.css)
  2. The files will automatically sync to public/ during:
    • Build process (npm run build)
    • Deployment (npm run deploy)
    • Manual sync (npm run sync)

Note: The GitHub Actions workflow automatically syncs files before deployment, so you don't need to manually sync before pushing to the main branch. However, if you're testing locally or deploying manually, the sync will happen automatically.

Deployment

Automated Deployment (GitHub Actions)

This project is configured for automatic deployment to Cloudflare Pages via GitHub Actions.

Setup:

  1. Create a Cloudflare Pages project:

    • Log into your Cloudflare account
    • Go to Pages > Create a project
    • Note your Account ID and create an API token
  2. Add secrets to your GitHub repository:

    • Go to Settings > Secrets and variables > Actions
    • Add CLOUDFLARE_API_TOKEN
    • Add CLOUDFLARE_ACCOUNT_ID
  3. Push to the main branch:

    git add .
    git commit -m "Update website"
    git push origin main

The GitHub Action will automatically deploy the public/ directory to Cloudflare Pages.

Manual Deployment

You can also deploy manually using Wrangler (Cloudflare's CLI):

# Install Wrangler (one time)
npm install -g wrangler
# Login to Cloudflare
wrangler login
# Deploy
npm run deploy

Alternatively, you can build the project and deploy the dist folder:

# Build the project (outputs to dist/)
npm run build
# Deploy the dist folder
wrangler pages deploy dist --project-name=nostr-future-collective

Contributing

We welcome contributions! To contribute:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/your-feature)
  3. Make your changes to files in the root directory (not in public/)
  4. Test locally with npm run dev
  5. Commit your changes (git commit -m 'Add some feature')
  6. Push to the branch (git push origin feature/your-feature)
  7. Open a Pull Request

Note: You don't need to manually sync files to the public/ directory - this happens automatically during the build and deployment process.

License

MIT

Contact

For questions or to get involved with AOS Collective:


Built with ❤️ for human thriving by AOS Collective

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

AOS Collective Website

Technology for Human Thriving

Edit with Shakespeare

A simple, fast, and accessible static website for AOS Collective - building freedom tech that enhances, enables, and extends human liberty.

Project Info

URL: https://andotherstuff.org

Type: Static HTML website with unified layout

Website Structure

The website uses a unified layout system with consistent header and footer across all pages:

  • index.html - Home page
  • about-us.html - About Us (Purpose, Practices, Hubs)
  • express-interest.html - Join Us / Express Interest form
  • public/hubs.html - Detailed hub information

Shared Components

  • Header: Sticky navigation with logo, site title, and main navigation links
  • Footer: GitHub link and footer navigation
  • Styles: Shared CSS in styles.css with page-specific styles as needed

See LAYOUT_SYSTEM.md for detailed documentation.

Build System

The project uses an automated sync process to keep source files (root directory) in sync with deployment files (public/ directory). See BUILD_PROCESS.md for detailed documentation on how this works.

Local Development

# Install dependencies
npm install
# Start development server
npm run dev

This will start a Vite development server at http://localhost:8000 with hot module reloading. Changes to HTML files will automatically refresh the browser.

Important: Editing HTML and CSS Files

The website uses a dual-directory structure:

  • Root directory (*.html, *.css) - Source files for editing
  • public/ directory - Deployed files (auto-synced from root)

When editing HTML or CSS files:

  1. Edit files in the root directory (e.g., express-interest.html, styles.css)
  2. The files will automatically sync to public/ during:
    • Build process (npm run build)
    • Deployment (npm run deploy)
    • Manual sync (npm run sync)

Note: The GitHub Actions workflow automatically syncs files before deployment, so you don't need to manually sync before pushing to the main branch. However, if you're testing locally or deploying manually, the sync will happen automatically.

Deployment

Automated Deployment (GitHub Actions)

This project is configured for automatic deployment to Cloudflare Pages via GitHub Actions.

Setup:

  1. Create a Cloudflare Pages project:

    • Log into your Cloudflare account
    • Go to Pages > Create a project
    • Note your Account ID and create an API token
  2. Add secrets to your GitHub repository:

    • Go to Settings > Secrets and variables > Actions
    • Add CLOUDFLARE_API_TOKEN
    • Add CLOUDFLARE_ACCOUNT_ID
  3. Push to the main branch:

    git add .
    git commit -m "Update website"
    git push origin main

The GitHub Action will automatically deploy the public/ directory to Cloudflare Pages.

Manual Deployment

You can also deploy manually using Wrangler (Cloudflare's CLI):

# Install Wrangler (one time)
npm install -g wrangler
# Login to Cloudflare
wrangler login
# Deploy
npm run deploy

Alternatively, you can build the project and deploy the dist folder:

# Build the project (outputs to dist/)
npm run build
# Deploy the dist folder
wrangler pages deploy dist --project-name=nostr-future-collective

Contributing

We welcome contributions! To contribute:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/your-feature)
  3. Make your changes to files in the root directory (not in public/)
  4. Test locally with npm run dev
  5. Commit your changes (git commit -m 'Add some feature')
  6. Push to the branch (git push origin feature/your-feature)
  7. Open a Pull Request

Note: You don't need to manually sync files to the public/ directory - this happens automatically during the build and deployment process.

License

MIT

Contact

For questions or to get involved with AOS Collective:


Built with ❤️ for human thriving by AOS Collective

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

AOS Collective Website

Technology for Human Thriving

Edit with Shakespeare

A simple, fast, and accessible static website for AOS Collective - building freedom tech that enhances, enables, and extends human liberty.

Project Info

URL: https://andotherstuff.org

Type: Static HTML website with unified layout

Website Structure

The website uses a unified layout system with consistent header and footer across all pages:

  • index.html - Home page
  • about-us.html - About Us (Purpose, Practices, Hubs)
  • express-interest.html - Join Us / Express Interest form
  • public/hubs.html - Detailed hub information

Shared Components

  • Header: Sticky navigation with logo, site title, and main navigation links
  • Footer: GitHub link and footer navigation
  • Styles: Shared CSS in styles.css with page-specific styles as needed

See LAYOUT_SYSTEM.md for detailed documentation.

Build System

The project uses an automated sync process to keep source files (root directory) in sync with deployment files (public/ directory). See BUILD_PROCESS.md for detailed documentation on how this works.

Local Development

# Install dependencies
npm install
# Start development server
npm run dev

This will start a Vite development server at http://localhost:8000 with hot module reloading. Changes to HTML files will automatically refresh the browser.

Important: Editing HTML and CSS Files

The website uses a dual-directory structure:

  • Root directory (*.html, *.css) - Source files for editing
  • public/ directory - Deployed files (auto-synced from root)

When editing HTML or CSS files:

  1. Edit files in the root directory (e.g., express-interest.html, styles.css)
  2. The files will automatically sync to public/ during:
    • Build process (npm run build)
    • Deployment (npm run deploy)
    • Manual sync (npm run sync)

Note: The GitHub Actions workflow automatically syncs files before deployment, so you don't need to manually sync before pushing to the main branch. However, if you're testing locally or deploying manually, the sync will happen automatically.

Deployment

Automated Deployment (GitHub Actions)

This project is configured for automatic deployment to Cloudflare Pages via GitHub Actions.

Setup:

  1. Create a Cloudflare Pages project:

    • Log into your Cloudflare account
    • Go to Pages > Create a project
    • Note your Account ID and create an API token
  2. Add secrets to your GitHub repository:

    • Go to Settings > Secrets and variables > Actions
    • Add CLOUDFLARE_API_TOKEN
    • Add CLOUDFLARE_ACCOUNT_ID
  3. Push to the main branch:

    git add .
    git commit -m "Update website"
    git push origin main

The GitHub Action will automatically deploy the public/ directory to Cloudflare Pages.

Manual Deployment

You can also deploy manually using Wrangler (Cloudflare's CLI):

# Install Wrangler (one time)
npm install -g wrangler
# Login to Cloudflare
wrangler login
# Deploy
npm run deploy

Alternatively, you can build the project and deploy the dist folder:

# Build the project (outputs to dist/)
npm run build
# Deploy the dist folder
wrangler pages deploy dist --project-name=nostr-future-collective

Contributing

We welcome contributions! To contribute:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/your-feature)
  3. Make your changes to files in the root directory (not in public/)
  4. Test locally with npm run dev
  5. Commit your changes (git commit -m 'Add some feature')
  6. Push to the branch (git push origin feature/your-feature)
  7. Open a Pull Request

Note: You don't need to manually sync files to the public/ directory - this happens automatically during the build and deployment process.

License

MIT

Contact

For questions or to get involved with AOS Collective:


Built with ❤️ for human thriving by AOS Collective

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

AOS Collective Website

Technology for Human Thriving

Edit with Shakespeare

A simple, fast, and accessible static website for AOS Collective - building freedom tech that enhances, enables, and extends human liberty.

Project Info

URL: https://andotherstuff.org

Type: Static HTML website with unified layout

Website Structure

The website uses a unified layout system with consistent header and footer across all pages:

  • index.html - Home page
  • about-us.html - About Us (Purpose, Practices, Hubs)
  • express-interest.html - Join Us / Express Interest form
  • public/hubs.html - Detailed hub information

Shared Components

  • Header: Sticky navigation with logo, site title, and main navigation links
  • Footer: GitHub link and footer navigation
  • Styles: Shared CSS in styles.css with page-specific styles as needed

See LAYOUT_SYSTEM.md for detailed documentation.

Build System

The project uses an automated sync process to keep source files (root directory) in sync with deployment files (public/ directory). See BUILD_PROCESS.md for detailed documentation on how this works.

Local Development

# Install dependencies
npm install
# Start development server
npm run dev

This will start a Vite development server at http://localhost:8000 with hot module reloading. Changes to HTML files will automatically refresh the browser.

Important: Editing HTML and CSS Files

The website uses a dual-directory structure:

  • Root directory (*.html, *.css) - Source files for editing
  • public/ directory - Deployed files (auto-synced from root)

When editing HTML or CSS files:

  1. Edit files in the root directory (e.g., express-interest.html, styles.css)
  2. The files will automatically sync to public/ during:
    • Build process (npm run build)
    • Deployment (npm run deploy)
    • Manual sync (npm run sync)

Note: The GitHub Actions workflow automatically syncs files before deployment, so you don't need to manually sync before pushing to the main branch. However, if you're testing locally or deploying manually, the sync will happen automatically.

Deployment

Automated Deployment (GitHub Actions)

This project is configured for automatic deployment to Cloudflare Pages via GitHub Actions.

Setup:

  1. Create a Cloudflare Pages project:

    • Log into your Cloudflare account
    • Go to Pages > Create a project
    • Note your Account ID and create an API token
  2. Add secrets to your GitHub repository:

    • Go to Settings > Secrets and variables > Actions
    • Add CLOUDFLARE_API_TOKEN
    • Add CLOUDFLARE_ACCOUNT_ID
  3. Push to the main branch:

    git add .
    git commit -m "Update website"
    git push origin main

The GitHub Action will automatically deploy the public/ directory to Cloudflare Pages.

Manual Deployment

You can also deploy manually using Wrangler (Cloudflare's CLI):

# Install Wrangler (one time)
npm install -g wrangler
# Login to Cloudflare
wrangler login
# Deploy
npm run deploy

Alternatively, you can build the project and deploy the dist folder:

# Build the project (outputs to dist/)
npm run build
# Deploy the dist folder
wrangler pages deploy dist --project-name=nostr-future-collective

Contributing

We welcome contributions! To contribute:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/your-feature)
  3. Make your changes to files in the root directory (not in public/)
  4. Test locally with npm run dev
  5. Commit your changes (git commit -m 'Add some feature')
  6. Push to the branch (git push origin feature/your-feature)
  7. Open a Pull Request

Note: You don't need to manually sync files to the public/ directory - this happens automatically during the build and deployment process.

License

MIT

Contact

For questions or to get involved with AOS Collective:


Built with ❤️ for human thriving by AOS Collective

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

AOS Collective Website

Technology for Human Thriving

Edit with Shakespeare

A simple, fast, and accessible static website for AOS Collective - building freedom tech that enhances, enables, and extends human liberty.

Project Info

URL: https://andotherstuff.org

Type: Static HTML website with unified layout

Website Structure

The website uses a unified layout system with consistent header and footer across all pages:

  • index.html - Home page
  • about-us.html - About Us (Purpose, Practices, Hubs)
  • express-interest.html - Join Us / Express Interest form
  • public/hubs.html - Detailed hub information

Shared Components

  • Header: Sticky navigation with logo, site title, and main navigation links
  • Footer: GitHub link and footer navigation
  • Styles: Shared CSS in styles.css with page-specific styles as needed

See LAYOUT_SYSTEM.md for detailed documentation.

Build System

The project uses an automated sync process to keep source files (root directory) in sync with deployment files (public/ directory). See BUILD_PROCESS.md for detailed documentation on how this works.

Local Development

# Install dependencies
npm install
# Start development server
npm run dev

This will start a Vite development server at http://localhost:8000 with hot module reloading. Changes to HTML files will automatically refresh the browser.

Important: Editing HTML and CSS Files

The website uses a dual-directory structure:

  • Root directory (*.html, *.css) - Source files for editing
  • public/ directory - Deployed files (auto-synced from root)

When editing HTML or CSS files:

  1. Edit files in the root directory (e.g., express-interest.html, styles.css)
  2. The files will automatically sync to public/ during:
    • Build process (npm run build)
    • Deployment (npm run deploy)
    • Manual sync (npm run sync)

Note: The GitHub Actions workflow automatically syncs files before deployment, so you don't need to manually sync before pushing to the main branch. However, if you're testing locally or deploying manually, the sync will happen automatically.

Deployment

Automated Deployment (GitHub Actions)

This project is configured for automatic deployment to Cloudflare Pages via GitHub Actions.

Setup:

  1. Create a Cloudflare Pages project:

    • Log into your Cloudflare account
    • Go to Pages > Create a project
    • Note your Account ID and create an API token
  2. Add secrets to your GitHub repository:

    • Go to Settings > Secrets and variables > Actions
    • Add CLOUDFLARE_API_TOKEN
    • Add CLOUDFLARE_ACCOUNT_ID
  3. Push to the main branch:

    git add .
    git commit -m "Update website"
    git push origin main

The GitHub Action will automatically deploy the public/ directory to Cloudflare Pages.

Manual Deployment

You can also deploy manually using Wrangler (Cloudflare's CLI):

# Install Wrangler (one time)
npm install -g wrangler
# Login to Cloudflare
wrangler login
# Deploy
npm run deploy

Alternatively, you can build the project and deploy the dist folder:

# Build the project (outputs to dist/)
npm run build
# Deploy the dist folder
wrangler pages deploy dist --project-name=nostr-future-collective

Contributing

We welcome contributions! To contribute:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/your-feature)
  3. Make your changes to files in the root directory (not in public/)
  4. Test locally with npm run dev
  5. Commit your changes (git commit -m 'Add some feature')
  6. Push to the branch (git push origin feature/your-feature)
  7. Open a Pull Request

Note: You don't need to manually sync files to the public/ directory - this happens automatically during the build and deployment process.

License

MIT

Contact

For questions or to get involved with AOS Collective:


Built with ❤️ for human thriving by AOS Collective

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

AOS Collective Website

Technology for Human Thriving

Edit with Shakespeare

A simple, fast, and accessible static website for AOS Collective - building freedom tech that enhances, enables, and extends human liberty.

Project Info

URL: https://andotherstuff.org

Type: Static HTML website with unified layout

Website Structure

The website uses a unified layout system with consistent header and footer across all pages:

  • index.html - Home page
  • about-us.html - About Us (Purpose, Practices, Hubs)
  • express-interest.html - Join Us / Express Interest form
  • public/hubs.html - Detailed hub information

Shared Components

  • Header: Sticky navigation with logo, site title, and main navigation links
  • Footer: GitHub link and footer navigation
  • Styles: Shared CSS in styles.css with page-specific styles as needed

See LAYOUT_SYSTEM.md for detailed documentation.

Build System

The project uses an automated sync process to keep source files (root directory) in sync with deployment files (public/ directory). See BUILD_PROCESS.md for detailed documentation on how this works.

Local Development

# Install dependencies
npm install
# Start development server
npm run dev

This will start a Vite development server at http://localhost:8000 with hot module reloading. Changes to HTML files will automatically refresh the browser.

Important: Editing HTML and CSS Files

The website uses a dual-directory structure:

  • Root directory (*.html, *.css) - Source files for editing
  • public/ directory - Deployed files (auto-synced from root)

When editing HTML or CSS files:

  1. Edit files in the root directory (e.g., express-interest.html, styles.css)
  2. The files will automatically sync to public/ during:
    • Build process (npm run build)
    • Deployment (npm run deploy)
    • Manual sync (npm run sync)

Note: The GitHub Actions workflow automatically syncs files before deployment, so you don't need to manually sync before pushing to the main branch. However, if you're testing locally or deploying manually, the sync will happen automatically.

Deployment

Automated Deployment (GitHub Actions)

This project is configured for automatic deployment to Cloudflare Pages via GitHub Actions.

Setup:

  1. Create a Cloudflare Pages project:

    • Log into your Cloudflare account
    • Go to Pages > Create a project
    • Note your Account ID and create an API token
  2. Add secrets to your GitHub repository:

    • Go to Settings > Secrets and variables > Actions
    • Add CLOUDFLARE_API_TOKEN
    • Add CLOUDFLARE_ACCOUNT_ID
  3. Push to the main branch:

    git add .
    git commit -m "Update website"
    git push origin main

The GitHub Action will automatically deploy the public/ directory to Cloudflare Pages.

Manual Deployment

You can also deploy manually using Wrangler (Cloudflare's CLI):

# Install Wrangler (one time)
npm install -g wrangler
# Login to Cloudflare
wrangler login
# Deploy
npm run deploy

Alternatively, you can build the project and deploy the dist folder:

# Build the project (outputs to dist/)
npm run build
# Deploy the dist folder
wrangler pages deploy dist --project-name=nostr-future-collective

Contributing

We welcome contributions! To contribute:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/your-feature)
  3. Make your changes to files in the root directory (not in public/)
  4. Test locally with npm run dev
  5. Commit your changes (git commit -m 'Add some feature')
  6. Push to the branch (git push origin feature/your-feature)
  7. Open a Pull Request

Note: You don't need to manually sync files to the public/ directory - this happens automatically during the build and deployment process.

License

MIT

Contact

For questions or to get involved with AOS Collective:


Built with ❤️ for human thriving by AOS Collective

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

AOS Collective Website

Technology for Human Thriving

Edit with Shakespeare

A simple, fast, and accessible static website for AOS Collective - building freedom tech that enhances, enables, and extends human liberty.

Project Info

URL: https://andotherstuff.org

Type: Static HTML website with unified layout

Website Structure

The website uses a unified layout system with consistent header and footer across all pages:

  • index.html - Home page
  • about-us.html - About Us (Purpose, Practices, Hubs)
  • express-interest.html - Join Us / Express Interest form
  • public/hubs.html - Detailed hub information

Shared Components

  • Header: Sticky navigation with logo, site title, and main navigation links
  • Footer: GitHub link and footer navigation
  • Styles: Shared CSS in styles.css with page-specific styles as needed

See LAYOUT_SYSTEM.md for detailed documentation.

Build System

The project uses an automated sync process to keep source files (root directory) in sync with deployment files (public/ directory). See BUILD_PROCESS.md for detailed documentation on how this works.

Local Development

# Install dependencies
npm install
# Start development server
npm run dev

This will start a Vite development server at http://localhost:8000 with hot module reloading. Changes to HTML files will automatically refresh the browser.

Important: Editing HTML and CSS Files

The website uses a dual-directory structure:

  • Root directory (*.html, *.css) - Source files for editing
  • public/ directory - Deployed files (auto-synced from root)

When editing HTML or CSS files:

  1. Edit files in the root directory (e.g., express-interest.html, styles.css)
  2. The files will automatically sync to public/ during:
    • Build process (npm run build)
    • Deployment (npm run deploy)
    • Manual sync (npm run sync)

Note: The GitHub Actions workflow automatically syncs files before deployment, so you don't need to manually sync before pushing to the main branch. However, if you're testing locally or deploying manually, the sync will happen automatically.

Deployment

Automated Deployment (GitHub Actions)

This project is configured for automatic deployment to Cloudflare Pages via GitHub Actions.

Setup:

  1. Create a Cloudflare Pages project:

    • Log into your Cloudflare account
    • Go to Pages > Create a project
    • Note your Account ID and create an API token
  2. Add secrets to your GitHub repository:

    • Go to Settings > Secrets and variables > Actions
    • Add CLOUDFLARE_API_TOKEN
    • Add CLOUDFLARE_ACCOUNT_ID
  3. Push to the main branch:

    git add .
    git commit -m "Update website"
    git push origin main

The GitHub Action will automatically deploy the public/ directory to Cloudflare Pages.

Manual Deployment

You can also deploy manually using Wrangler (Cloudflare's CLI):

# Install Wrangler (one time)
npm install -g wrangler
# Login to Cloudflare
wrangler login
# Deploy
npm run deploy

Alternatively, you can build the project and deploy the dist folder:

# Build the project (outputs to dist/)
npm run build
# Deploy the dist folder
wrangler pages deploy dist --project-name=nostr-future-collective

Contributing

We welcome contributions! To contribute:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/your-feature)
  3. Make your changes to files in the root directory (not in public/)
  4. Test locally with npm run dev
  5. Commit your changes (git commit -m 'Add some feature')
  6. Push to the branch (git push origin feature/your-feature)
  7. Open a Pull Request

Note: You don't need to manually sync files to the public/ directory - this happens automatically during the build and deployment process.

License

MIT

Contact

For questions or to get involved with AOS Collective:


Built with ❤️ for human thriving by AOS Collective

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages