{"id":40016074,"url":"https://github.com/ether/etherpad-go","last_synced_at":"2026-01-19T03:04:25.062Z","repository":{"id":331497088,"uuid":"801165738","full_name":"ether/etherpad-go","owner":"ether","description":"Etherpad: A modern really-real-time collaborative document editor. Now written in Go!","archived":false,"fork":false,"pushed_at":"2026-01-16T23:02:39.000Z","size":6102,"stargazers_count":1,"open_issues_count":2,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-17T09:19:02.504Z","etag":null,"topics":["collaboration","collaborative-editing","etherpad","libreoffice","pdf","word"],"latest_commit_sha":null,"homepage":"https://docs.etherpad.org/","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ether.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-05-15T18:07:52.000Z","updated_at":"2026-01-16T21:46:53.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/ether/etherpad-go","commit_stats":null,"previous_names":["ether/etherpad-go"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/ether/etherpad-go","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ether%2Fetherpad-go","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ether%2Fetherpad-go/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ether%2Fetherpad-go/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ether%2Fetherpad-go/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ether","download_url":"https://codeload.github.com/ether/etherpad-go/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ether%2Fetherpad-go/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28559372,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-19T00:46:33.223Z","status":"online","status_checked_at":"2026-01-19T02:00:08.049Z","response_time":67,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["collaboration","collaborative-editing","etherpad","libreoffice","pdf","word"],"created_at":"2026-01-19T03:04:24.933Z","updated_at":"2026-01-19T03:04:25.049Z","avatar_url":"https://github.com/ether.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Etherpad-Go: A real-time collaborative editor for the web\n\nEtherpad-Go is a performance focused 1 to 1 rewrite of Etherpad-Lite in Go. The old implementation was written in NodeJS and was still in CommonJS. \nA new implementation in Go allows us to take advantage of Go's concurrency model, static typing, and performance optimizations.\n\n\n![Demo Etherpad Animated Jif](doc/public/etherpad_demo.gif \"Etherpad in action\")\n\n\nEtherpad is a real-time collaborative editor [scalable to thousands of\nsimultaneous real time users](http://scale.etherpad.org/). It provides [full\ndata export](https://github.com/ether/etherpad-lite/wiki/Understanding-Etherpad's-Full-Data-Export-capabilities)\n\n\n\n## Requirements to get started\n\n* [Go 1.20+](https://golang.org/dl/)\n* [NodeJS 22+](https://nodejs.org/en/download/)\n* [Pnpm](https://pnpm.io/installation)\n\n### Installation\n\n1. Clone the repository \n   ```bash\n   git clone https://github.com/ether/etherpad-go.git\n    cd etherpad-go\n    ```\n   \n2. Create the ui: \n\n    ```bash\n    cd ui\n    pnpm install\n    cd ../admin\n    pnpm install\n    node build.js\n    ```\n\n3. Build the Go server:\n    ```bash\n    go build -o etherpad-go ./main.go\n    ```\n4. Copy the binary where you want to run it\n5. For customization and configuration, copy the `settings.json.template` to `settings.json` and edit it to your needs.\n6. Run the server:\n    ```bash\n    ./etherpad-go\n    ```\n7. Etherpad should start within less than a second. Open your browser and navigate to `http://localhost:9001` to access the Etherpad interface.\n\n## Docker\n\nYou can also run Etherpad-Go using Docker. Here's how to do it:\n\n### Build it your own\n\n1. Build the Docker image:\n   ```bash\n   docker build -t etherpad-go .\n   ```\n\n2. Use a prebuilt one which is available at [GitHub Container Registry](ghcr.io/ether/etherpad-go:\u003cyour-desired-version\u003e)\n\n## Starting the Docker Container\n\nYou can start the Docker container with a postgres database with docker compose:\n\n```bash\ndocker compose up -d\n```\nThis will start both the Etherpad-Go server and a Postgres database. The server will be accessible at `http://localhost:9001`.\nYou can find the docker compose file in [docker-compose.yml](./docker-compose.yml)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fether%2Fetherpad-go","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fether%2Fetherpad-go","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fether%2Fetherpad-go/lists"}