Skip to content

Commit b07bd5b

Browse files
committed
chore: readme
1 parent 2bb2d7a commit b07bd5b

File tree

3 files changed

+86
-1
lines changed

3 files changed

+86
-1
lines changed

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2024 Buape Studios, Codeize
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 64 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,69 @@
11
<div align="center">
22
<img width="256" src="https://raw.githubusercontent.com/buape/.github/main/buape_circle.png" alt="Buape Logo"></a>
3+
</div>
34

45
# Buape Tags
56

6-
TODO
7+
Buape Tags is a simple Discord bot that allows you to save custom text snippets and use them for later. It's a great way to save time and effort when you're typing out the same thing over and over again.
8+
9+
Some of the use cases Tags might serve are:
10+
11+
- A bot support server where users ask the same questions often,
12+
- A server with frequent live moderation where rules may need to be quoted often,
13+
- A development server where you may need to share code snippets often,
14+
- Or even just a server where you want to share a funny meme or quote often
15+
16+
## Commands
17+
18+
| Command | Arguments | Description |
19+
| ----------- | -------------------------------------------------------------- | ------------------------------------------------------------------------------ |
20+
| /create-tag | private: true/false | Opens a modal where the user is asked for the tag trigger and tag content. |
21+
| /send-tag | tag: auto-populates, user: auto-populates, private: true/false | Replies to the command with the tag content, with an optional user to mention. |
22+
| /edit-tag | tag: auto-populates, private: true/false | Opens a modal where the user is asked for the new tag trigger and/or content. |
23+
| /delete-tag | tag: auto-populates, private: true/false | Deletes the tag. |
24+
| /list-tags | private: true/false | Lists all tags in the server and their usage count, author, last editor, etc. |
25+
26+
## Future Plans
27+
28+
- [ ] Move away from a HTTP based bot to a gateway based bot
29+
- [ ] Web dashboard to allow for a much better user experience
30+
- [ ] Setup repository with Buape standards for maintenance
31+
- [ ] Role, channel lock tags
32+
- [ ] Log actions
33+
34+
## Self Hosting
35+
36+
### Prerequisites
37+
38+
Right now the bot is pretty simple to setup and run. You'll need to have the following:
39+
40+
- A non-ancient version of Node.js
41+
- [pnpm](https://pnpm.io) installed globally
42+
- A Discord bot application
43+
- A CockroachDB database
44+
45+
### Setup
46+
47+
1. Clone the repository `git clone https://github.com/Buape/Tags.git`
48+
2. Run `pnpm install`
49+
3. Create a `.env` file in the root of the project based on `.env.example`, all `DISCORD_` variables can be found in the Discord Developer Portal, the `DATABASE_URL` variable can be found in the CockroachDB Console, `COMMANDS_DEBUG` and `DEVELOPMENT_GUILD_ID` aren't required but are useful for development, `PORT` can remain as it is, if you know you need to change it, you probably know how to change it.
50+
4. Run `pnpm run build`
51+
5. Run `pnpm run db:push`
52+
6. Run `pnpm run sync`
53+
7. Run `pnpm run start`
54+
55+
### Hosting
56+
57+
For the sake of transparency, the [public version of Tags](https://go.buape.com/tags) is hosted on [Hop.io](https://hop.io) but you can host it anywhere you want.
58+
59+
The main thing to keep in mind is that once your application is hosted on a public URL, you'll need to add it to the [Interactions Endpoint URL](https://discord.com/developers/docs/tutorials/upgrading-to-application-commands#adding-an-interactions-endpoint-url) in the Discord Developer Portal.
60+
61+
## License
62+
63+
This project is licensed under the [MIT License](https://choosealicense.com/licenses/mit/).
64+
65+
## Notes
66+
67+
No additional permissions are required for the bot to run, other than the base Send Messages permission.
68+
69+
If you have any questions, or similarly if you find any issues with the bot, feel free to [create an issue](https://github.com/Buape/Tags/issues/new) or join the [Buape Discord Server](https://go.buape.com/discord).

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
"start": "cd dist && node index.js",
1111
"build": "npx tsc && prisma generate",
1212
"dev": "npx tsc && slash-up sync && node dist/index.js",
13+
"db:push": "prisma db push",
1314
"lint": "npx eslint --ext .ts ./src",
1415
"lint:fix": "npx eslint --ext .ts ./src --fix"
1516
},

0 commit comments

Comments
 (0)