Cadence + jacksonchen666: readme enhancements
This commit is contained in:
parent
1447406ed6
commit
fd9c742529
1 changed files with 18 additions and 17 deletions
35
readme.md
35
readme.md
|
@ -38,7 +38,6 @@ Most features you'd expect in both directions, plus a little extra spice:
|
||||||
|
|
||||||
* Embeds don't work yet.
|
* Embeds don't work yet.
|
||||||
* This bridge is not designed for puppetting.
|
* This bridge is not designed for puppetting.
|
||||||
* Some aspects of this bridge are customised for my homeserver. I'm working over time to make it more general. Please please reach out to @cadence:cadence.moe if you would like to run this, and I'll work with you to get it running!
|
|
||||||
|
|
||||||
## Efficiency details
|
## Efficiency details
|
||||||
|
|
||||||
|
@ -48,36 +47,38 @@ The bridge uses a small SQLite database to store relationships like which Discor
|
||||||
|
|
||||||
Only necessary data and columns are queried from the database. We only contact the homeserver API if the database doesn't contain what we need.
|
Only necessary data and columns are queried from the database. We only contact the homeserver API if the database doesn't contain what we need.
|
||||||
|
|
||||||
# Development information
|
# Setup
|
||||||
|
|
||||||
## You will need
|
If you get stuck, you're welcome to message @cadence:cadence.moe to ask for help setting up OOYE!
|
||||||
|
|
||||||
|
You'll need:
|
||||||
|
|
||||||
* Administrative access to a homeserver
|
* Administrative access to a homeserver
|
||||||
* Discord bot
|
* Discord bot
|
||||||
* (For now) Help and support from @cadence:cadence.moe. Message me and tell me you're interested in OOYE!
|
* Custom emojis named `L1` and `L2` for replies sent to Discord (TODO: provide)
|
||||||
* The L1 and L2 emojis
|
|
||||||
|
|
||||||
## Initial setup
|
Follow these steps:
|
||||||
|
|
||||||
Node.js version 18 or later is required: https://nodejs.org/en/download/releases (the matrix-appservice dependency demands 18)
|
1. [Get Node.js version 18 or later](https://nodejs.org/en/download/releases) (the version is required by the matrix-appservice dependency)
|
||||||
|
|
||||||
Install dependencies: `npm install --save-dev` (only need --save-dev if you will run the automated tests)
|
2. Install dependencies: `npm install --save-dev` (omit --save-dev if you will not run the automated tests)
|
||||||
|
|
||||||
Copy `config.example.js` to `config.js` and fill in Discord token.
|
3. Copy `config.example.js` to `config.js` and fill in Discord token.
|
||||||
|
|
||||||
Copy `registration.example.yaml` to `registration.yaml` and fill in bracketed values. You could generate each hex string with `dd if=/dev/urandom bs=32 count=1 2> /dev/null | basenc --base16 | dd conv=lcase 2> /dev/null`. Register the registration in Synapse's `homeserver.yaml` through the usual appservice installation process, then restart Synapse.
|
4. Copy `registration.example.yaml` to `registration.yaml` and fill in bracketed values. You could generate each hex string with `dd if=/dev/urandom bs=32 count=1 2> /dev/null | basenc --base16 | dd conv=lcase 2> /dev/null`. Register the registration in Synapse's `homeserver.yaml` through the usual appservice installation process, then restart Synapse.
|
||||||
|
|
||||||
If developing on a different computer to the one running the homeserver, use SSH port forwarding so that Synapse can connect on its `localhost:6693` to reach the running bridge on your computer. Example: `ssh -T -v -R 6693:localhost:6693 me@matrix.cadence.moe`
|
5. Run `node scripts/seed.js` to check your setup, create the database and server state (only need to run this once ever)
|
||||||
|
|
||||||
Run `node scripts/seed.js` to check your setup, create the database and server state (only need to run this once ever)
|
6. Make sure the tests work by running `npm t`
|
||||||
|
|
||||||
Make sure the tests work: `npm t`
|
7. Start the bridge: `node start.js`
|
||||||
|
|
||||||
Start the bridge: `node start.js`
|
# Development information
|
||||||
|
|
||||||
Any files you change will automatically be reloaded, except for `stdin.js` and `d2m/discord-*.js`
|
* Be sure to install dependencies with `--save-dev` so you can run the tests.
|
||||||
|
* Any files you change will automatically be reloaded, except for `stdin.js` and `d2m/discord-*.js`.
|
||||||
I recommend developing in Visual Studio Code so that the JSDoc x TypeScript annotation comments work. I don't know which other editors or language servers support annotations and type inference.
|
* If developing on a different computer to the one running the homeserver, use SSH port forwarding so that Synapse can connect on its `localhost:6693` to reach the running bridge on your computer. Example: `ssh -T -v -R 6693:localhost:6693 me@matrix.cadence.moe`
|
||||||
|
* I recommend developing in Visual Studio Code so that the JSDoc x TypeScript annotation comments work. I don't know which other editors or language servers support annotations and type inference.
|
||||||
|
|
||||||
## Repository structure
|
## Repository structure
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue