extensive changes to docs
This commit is contained in:
@@ -4,12 +4,16 @@ _(January 25, 2026)_
|
|||||||
|
|
||||||
For purposes of this document, the sole maintainer of the Amsterdam project is Amy G. Bowersox, `amy@erbosoft.com`.
|
For purposes of this document, the sole maintainer of the Amsterdam project is Amy G. Bowersox, `amy@erbosoft.com`.
|
||||||
|
|
||||||
|
Any violations of this Code of Conduct may be reported to the maintainers, as listed above.
|
||||||
|
|
||||||
## Purpose
|
## Purpose
|
||||||
|
|
||||||
Amsterdam is a collaborative software project. Its primary purpose is to build, maintain, and improve a system for hosting human-scale online communities.
|
Amsterdam is a collaborative software project. Its primary purpose is to build, maintain, and improve a system for hosting human-scale online communities.
|
||||||
|
|
||||||
This Code of Conduct exists to support productive collaboration, respectful technical discussion, and a healthy working environment for everyone involved.
|
This Code of Conduct exists to support productive collaboration, respectful technical discussion, and a healthy working environment for everyone involved.
|
||||||
|
|
||||||
|
This Code of Conduct shall apply to all project spaces including repositories, issue trackers, discussion forums, and official communications channels.
|
||||||
|
|
||||||
As a general principle, anyone who adheres to this Code of Conduct and provides quality contributions to the project is welcome to participate.
|
As a general principle, anyone who adheres to this Code of Conduct and provides quality contributions to the project is welcome to participate.
|
||||||
("Contributions" may include but are not limited to code, documentation, testing, or fundraising.)
|
("Contributions" may include but are not limited to code, documentation, testing, or fundraising.)
|
||||||
|
|
||||||
|
|||||||
+25
-3
@@ -7,8 +7,10 @@ This document explains how to contribute changes to the Amsterdam project.
|
|||||||
## Development Location
|
## Development Location
|
||||||
|
|
||||||
While you may have found this project on GitHub or another site, the "source of truth" for the project will always
|
While you may have found this project on GitHub or another site, the "source of truth" for the project will always
|
||||||
reside on [the Erbosoft code hosting site](https://git.erbosoft.com/amy/amsterdam). Serious contributors should
|
reside on [the Erbosoft code hosting site](https://git.erbosoft.com/amy/amsterdam). This is to ensure long-term
|
||||||
contact [Amy Bowersox](https://links.inclusiveladyship.com/@amy) for access.
|
independence from platforms controlled by third parties; the mirrors to GitHub and/or other sites are for visibility.
|
||||||
|
|
||||||
|
Serious contributors should contact [Amy Bowersox](https://links.inclusiveladyship.com/@amy) for access.
|
||||||
|
|
||||||
## AI Contribution Policy
|
## AI Contribution Policy
|
||||||
|
|
||||||
@@ -21,7 +23,7 @@ Contributors should indicate AI-generated content in issue and pull request desc
|
|||||||
|
|
||||||
Do _not_ use AI to reply to questions about your issue or pull request. The questions are for _you,_ the human, not an AI model.
|
Do _not_ use AI to reply to questions about your issue or pull request. The questions are for _you,_ the human, not an AI model.
|
||||||
|
|
||||||
All project contributions must be submitted by _identifiable human participants_ who accept full responibility for their content.
|
All project contributions must be submitted by _identifiable human participants_ who accept full responsibility for their content.
|
||||||
Automated agents, bots, or autonomous AI systems _may not_ independently submit issues, pull requests, or other contributions.
|
Automated agents, bots, or autonomous AI systems _may not_ independently submit issues, pull requests, or other contributions.
|
||||||
|
|
||||||
Project maintainers retain _full discretion_ to close pull requests and issues that appear to be low-quality AI-generated content.
|
Project maintainers retain _full discretion_ to close pull requests and issues that appear to be low-quality AI-generated content.
|
||||||
@@ -36,6 +38,26 @@ To regenerate the `tailwind.css` file (located in `ui/static/css`), you will nee
|
|||||||
Download it from [the Tailwind GitHub](https://github.com/tailwindlabs/tailwindcss/releases/) and install it as `tailwindcss`
|
Download it from [the Tailwind GitHub](https://github.com/tailwindlabs/tailwindcss/releases/) and install it as `tailwindcss`
|
||||||
in your `PATH`. Then run `go generate` to regenerate the CSS file before you run `go build` to build the executable.
|
in your `PATH`. Then run `go generate` to regenerate the CSS file before you run `go build` to build the executable.
|
||||||
|
|
||||||
|
## Contribution Workflow
|
||||||
|
|
||||||
|
1. [Open an issue](https://git.erbosoft.com/amy/amsterdam/issues/new) describing the problem or proposed feature.
|
||||||
|
2. Discuss the design with [maintainers](MAINTAINERS).
|
||||||
|
3. Submit a pull request referencing the issue.
|
||||||
|
4. Participate in code review.
|
||||||
|
|
||||||
|
## Versioning
|
||||||
|
|
||||||
|
Amsterdam employs [semantic versioning](https://semver.org/), with version numbers in the "major.minor.bugfix" format. Please see
|
||||||
|
the linked specification for further details.
|
||||||
|
|
||||||
|
## Git Branching
|
||||||
|
|
||||||
|
Amsterdam employs the [GitHub Flow](https://docs.github.com/en/get-started/using-github/github-flow) style of branch management.
|
||||||
|
|
||||||
|
One thing to remember: when working on a feature branch, and seeking to merge new changes from `main` into your branch, _never_ use `git merge`,
|
||||||
|
but _always_ use `git rebase` to rebase your feature branch off the tip of `main`. The rule to remember is, changes flowing "inward"
|
||||||
|
_from_ feature branches _to_ `main` use `git merge`, but changes flowing "outward" _from_ `main` _to_ feature branches use `git rebase`.
|
||||||
|
|
||||||
## Dependencies
|
## Dependencies
|
||||||
|
|
||||||
Dependencies are managed using [Go Modules](https://go.dev/cmd/go/#hdr-Module_maintenance).
|
Dependencies are managed using [Go Modules](https://go.dev/cmd/go/#hdr-Module_maintenance).
|
||||||
|
|||||||
@@ -1,9 +1,19 @@
|
|||||||
# The Amsterdam Web Communities System
|
# The Amsterdam Web Communities System
|
||||||
|
|
||||||
## Purpose
|
A self-hosted platform for running _thoughtful, human-scale_ online communities.
|
||||||
|
|
||||||
Amsterdam is a web-based system allowing for the hosting of multiple virtual communities, each with services such as conferencing.
|
## Description
|
||||||
Users on an Amsterdam site may be a member of multiple independent communities, all on the same site.
|
|
||||||
|
Amsterdam is a self-hosted platform for running multiple virtual communities.
|
||||||
|
|
||||||
|
It provides:
|
||||||
|
* Multiple communities hosted on a single site
|
||||||
|
* A discussion system featuring the linear conferencing model
|
||||||
|
* Long-form conversation spaces
|
||||||
|
* User identities shared acrioss communities
|
||||||
|
* Moderation and community management tools
|
||||||
|
|
||||||
|
It is designed for _human-scale communities_ - hundreds or thousands of users, rather than millions.
|
||||||
|
|
||||||
Amsterdam is intended to become a modern platform styled after the first generation of online communities, designed for
|
Amsterdam is intended to become a modern platform styled after the first generation of online communities, designed for
|
||||||
resilience, autonomy, and human-scale interaction.
|
resilience, autonomy, and human-scale interaction.
|
||||||
@@ -12,11 +22,18 @@ The first public version of Amsterdam has feature parity with the platform that
|
|||||||
community from 2000-2006, but rebuilt in a modern environment with updated rendering. Future versions will extend the functionality
|
community from 2000-2006, but rebuilt in a modern environment with updated rendering. Future versions will extend the functionality
|
||||||
from there.
|
from there.
|
||||||
|
|
||||||
### Why now?
|
## Live Demo
|
||||||
|
|
||||||
Communities like Electric Minds were largely supplanted by the major social media sites, which built huge systems for global
|
A live version of Amsterdam may be found at [https://electricminds.org](https://electricminds.org). This site, "Electric Minds Reborn,"
|
||||||
interaction at massive scale. They pushed smaller communities out of existence the way Walmart drove smaller shops out of business
|
includes actual community data from Electric Minds circa 2006.
|
||||||
in cities and towns across America.
|
|
||||||
|
## Why This Exists
|
||||||
|
|
||||||
|
Communities from the early days of the Web, like Electric Minds, began as small, independent, and deeply conversational sites.
|
||||||
|
People gathered in discussion spaces that felt more like shared living rooms than global broadcast platforms.
|
||||||
|
|
||||||
|
Over time, most of these communities were largely supplanted by the major social media sites, which displaced many smaller,
|
||||||
|
community-run spaces by optimizing for a massive, global scale, engagement metrics, and advertising.
|
||||||
|
|
||||||
Now we're seeing what happens as a result:
|
Now we're seeing what happens as a result:
|
||||||
|
|
||||||
@@ -30,6 +47,8 @@ We need _human-scale_ community again. Amsterdam can be a baseline for bringing
|
|||||||
older systems that _worked,_ and sustained _real communities_ in the process. It was built by someone who's _been there,_ who not
|
older systems that _worked,_ and sustained _real communities_ in the process. It was built by someone who's _been there,_ who not
|
||||||
only wrote the code, but was an active participant in the community that used it.
|
only wrote the code, but was an active participant in the community that used it.
|
||||||
|
|
||||||
|
Electric Minds Reborn is both a historical preservation project and a living experiment into whether those ideas can work in a modern Web.
|
||||||
|
|
||||||
### Project Vision & Values
|
### Project Vision & Values
|
||||||
|
|
||||||
Amsterdam as a project intends to prioritize certain things:
|
Amsterdam as a project intends to prioritize certain things:
|
||||||
@@ -37,6 +56,8 @@ Amsterdam as a project intends to prioritize certain things:
|
|||||||
* Human-scale over global scale. Hundreds or thousands of users, not billions.
|
* Human-scale over global scale. Hundreds or thousands of users, not billions.
|
||||||
* Resilience over growth, and _especially_ over growth for growth's sake.
|
* Resilience over growth, and _especially_ over growth for growth's sake.
|
||||||
* Many smaller sites, not one big one. These sites should work _together,_ not act as more silos.
|
* Many smaller sites, not one big one. These sites should work _together,_ not act as more silos.
|
||||||
|
* Future versions of Amsterdam may support this directly, allowing interaction between independent sites while still providing
|
||||||
|
for autonomous, self-hosted communities.
|
||||||
* Tools that serve _community members, moderators, and hosts,_ not shareholders.
|
* Tools that serve _community members, moderators, and hosts,_ not shareholders.
|
||||||
* Contribution quality over ideology or factionalism. Contributors of _all backgrounds_ are welcome, with a focus on the quality
|
* Contribution quality over ideology or factionalism. Contributors of _all backgrounds_ are welcome, with a focus on the quality
|
||||||
of the final product.
|
of the final product.
|
||||||
@@ -52,6 +73,26 @@ during the Renaissance.
|
|||||||
This new implementation is named "Amsterdam," which was a center of community during the Age of Exploration, in particular, the
|
This new implementation is named "Amsterdam," which was a center of community during the Age of Exploration, in particular, the
|
||||||
Dutch Golden Age.
|
Dutch Golden Age.
|
||||||
|
|
||||||
|
## Key Features
|
||||||
|
|
||||||
|
* Multiple communities hosted on a single site
|
||||||
|
* A discussion system featuring the linear conferencing model
|
||||||
|
* Long-form conversation spaces
|
||||||
|
* User identities shared acrioss communities
|
||||||
|
* Moderation and community management tools
|
||||||
|
* Archival support for historic communities
|
||||||
|
* Modern HTML rendering
|
||||||
|
|
||||||
|
## Project status
|
||||||
|
|
||||||
|
Amsterdam is in its first (early) public release.
|
||||||
|
|
||||||
|
The software is capable of running a full community site, and is currently being used to host [Electric Minds Reborn](https://electricminds.org).
|
||||||
|
|
||||||
|
The project is under active development, and APIs and internal structures may change between releases.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## Building Amsterdam
|
## Building Amsterdam
|
||||||
|
|
||||||
From the root of the source tree, just run `go build` to build the `amsterdam` executable.
|
From the root of the source tree, just run `go build` to build the `amsterdam` executable.
|
||||||
|
|||||||
Reference in New Issue
Block a user