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`.
|
||||
|
||||
Any violations of this Code of Conduct may be reported to the maintainers, as listed above.
|
||||
|
||||
## Purpose
|
||||
|
||||
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 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.
|
||||
("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
|
||||
|
||||
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
|
||||
contact [Amy Bowersox](https://links.inclusiveladyship.com/@amy) for access.
|
||||
reside on [the Erbosoft code hosting site](https://git.erbosoft.com/amy/amsterdam). This is to ensure long-term
|
||||
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
|
||||
|
||||
@@ -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.
|
||||
|
||||
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.
|
||||
|
||||
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`
|
||||
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 are managed using [Go Modules](https://go.dev/cmd/go/#hdr-Module_maintenance).
|
||||
|
||||
@@ -1,9 +1,19 @@
|
||||
# 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.
|
||||
Users on an Amsterdam site may be a member of multiple independent communities, all on the same site.
|
||||
## Description
|
||||
|
||||
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
|
||||
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
|
||||
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
|
||||
interaction at massive scale. They pushed smaller communities out of existence the way Walmart drove smaller shops out of business
|
||||
in cities and towns across America.
|
||||
A live version of Amsterdam may be found at [https://electricminds.org](https://electricminds.org). This site, "Electric Minds Reborn,"
|
||||
includes actual community data from Electric Minds circa 2006.
|
||||
|
||||
## 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:
|
||||
|
||||
@@ -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
|
||||
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
|
||||
|
||||
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.
|
||||
* 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.
|
||||
* 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.
|
||||
* Contribution quality over ideology or factionalism. Contributors of _all backgrounds_ are welcome, with a focus on the quality
|
||||
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
|
||||
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
|
||||
|
||||
From the root of the source tree, just run `go build` to build the `amsterdam` executable.
|
||||
|
||||
Reference in New Issue
Block a user