Technology for Human Thriving
A simple, fast, and accessible static website for AOS Collective - building freedom tech that enhances, enables, and extends human liberty.
URL: https://andotherstuff.org
Type: Static HTML website with unified layout
The website uses a unified layout system with consistent header and footer across all pages:
index.html- Home pageabout-us.html- About Us (Purpose, Practices, Hubs)express-interest.html- Join Us / Express Interest formpublic/hubs.html- Detailed hub information
- Header: Sticky navigation with logo, site title, and main navigation links
- Footer: GitHub link and footer navigation
- Styles: Shared CSS in
styles.csswith page-specific styles as needed
See LAYOUT_SYSTEM.md for detailed documentation.
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.
# Install dependencies
npm install
# Start development server
npm run devThis will start a Vite development server at http://localhost:8000 with hot module reloading. Changes to HTML files will automatically refresh the browser.
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:
- Edit files in the root directory (e.g.,
express-interest.html,styles.css) - The files will automatically sync to
public/during:- Build process (
npm run build) - Deployment (
npm run deploy) - Manual sync (
npm run sync)
- Build process (
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.
This project is configured for automatic deployment to Cloudflare Pages via GitHub Actions.
Setup:
-
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
-
Add secrets to your GitHub repository:
- Go to Settings > Secrets and variables > Actions
- Add
CLOUDFLARE_API_TOKEN - Add
CLOUDFLARE_ACCOUNT_ID
-
Push to the
mainbranch:git add . git commit -m "Update website" git push origin main
The GitHub Action will automatically deploy the public/ directory to Cloudflare Pages.
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 deployAlternatively, 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-collectiveWe welcome contributions! To contribute:
- Fork the repository
- Create a feature branch (
git checkout -b feature/your-feature) - Make your changes to files in the root directory (not in
public/) - Test locally with
npm run dev - Commit your changes (
git commit -m 'Add some feature') - Push to the branch (
git push origin feature/your-feature) - 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.
MIT
For questions or to get involved with AOS Collective:
- Visit our website: andotherstuff.org
- Fill out the interest form
- Check out our GitHub
Built with ❤️ for human thriving by AOS Collective