https://github.com/outadoc/woolly-server
Application server for the Woolly app.
https://github.com/outadoc/woolly-server
ktor-server mastodon
Last synced: 22 days ago
JSON representation
Application server for the Woolly app.
- Host: GitHub
- URL: https://github.com/outadoc/woolly-server
- Owner: outadoc
- Created: 2021-05-14T18:21:22.000Z (about 5 years ago)
- Default Branch: develop
- Last Pushed: 2021-05-15T18:35:44.000Z (about 5 years ago)
- Last Synced: 2026-04-27T12:14:03.676Z (about 1 month ago)
- Topics: ktor-server, mastodon
- Language: Kotlin
- Homepage:
- Size: 85.9 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# woolly-auth-proxy
Mastodon authentication middleware server.
## Description
On Twitter, you could just register your app on their website, get a `client_id` and `client_secret`, and embed those in
your app to authenticate your users.
Mastodon being a decentralized network, OAuth clients cannot be setup once and for all; this app setup process can be
automated, and should be done once per instance.
This necessitates a central server that will proxy the app's OAuth-related requests to the proper instance and add the
proper `client_id` and `client_secret` to calls, registering the app automatically if needed, or picking from its
database of already known instances.
## Configuration
Run this as a standard Java application. The settings JSON file will be loaded from `/etc/woolly/server_config.json` by
default, but this path can be overridden with the `WOOLLY_CONFIG_PATH` environment variable.
The JSON file should be structure like this:
```json
{
"application": {
"name": "Woolly",
"website": "https://woolly.app",
"scopes": [
"read",
"write",
"follow",
"push"
],
"redirectUris": [
"urn:ietf:wg:oauth:2.0:oob",
"woolly://oauth/callback",
"https://woolly.app/oauth/callback"
]
},
"mysql": {
"connectionString": "jdbc:mysql://localhost:3306/test",
"username": "root",
"password": "root"
}
}
```