https://github.com/tomosfps/aeri
Display anime, manga or user information, straight to Discord.
https://github.com/tomosfps/aeri
caching discord discord-bot rust-backend typescript
Last synced: 10 months ago
JSON representation
Display anime, manga or user information, straight to Discord.
- Host: GitHub
- URL: https://github.com/tomosfps/aeri
- Owner: tomosfps
- License: mit
- Created: 2024-10-19T06:15:31.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-05-29T12:32:55.000Z (about 1 year ago)
- Last Synced: 2025-05-29T14:08:24.348Z (about 1 year ago)
- Topics: caching, discord, discord-bot, rust-backend, typescript
- Language: TypeScript
- Homepage:
- Size: 6.04 MB
- Stars: 3
- Watchers: 2
- Forks: 1
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Aeri
## Aeri, an all in one Anime/Manga bot.
> [!IMPORTANT]
> ### COMMANDS
> If you want to just use the bot, I'm currently hosting one which you can [invite from this link](https://discord.com/oauth2/authorize?client_id=795916241193140244)
> You can find all of the commands at [aeri's website](https://aeri.live)
> If you want to use any of the packages, ensure that you follow the Licencse of that package.
> And read the README for anything important
## Features
- [x] Display information from my own Rust API, with automatic caching.
- [x] Setup user accounts to display scores (which also get cached), or unlink
- [x] Wide spread use, can be used across multiple servers and only needs one setup!
- [x] Extremely fast and built in logging
- [x] Covers anime, manga, users, staff, studio, character and more to come
- [x] Includes OAuth
## Using Aeri
### Prequiries
- Docker (v27.3.1)
- Docker Compose (v2.32.4)
- Rust (2024 edition)
- Node (v23.7.0)
- PNPM (v9.9.0)
> [!CAUTION]
> It's likely to work on older versions, these are the ones that were used and tested.
> Use older versions at your own caution. If they don't proceed to work, try the same versions as us.
### Hosting Locally
1. Use the `.env.example` as a base, you can do `cat .env.example > .env` and then use your preffered text editor to edit it.
2. Ensure that the following values are set in your .env
`POSTGRES_HOST` and `REDIS_HOST` are both `"localhost"`
`API_HOST` is set to `"0.0.0.0"` or `"localhost` (either one should work, but test them both in case.)
`WEBSITE_URL` is set to `http://localhost:5173`
`ANILIST_REDIRECT_URL` is set to `http://0.0.0.0:8080/oauth/anilist`
3. Once you have them set, just run the following commands and you're good to go.
`docker compose -f docker-compose.local.yml up`, `pnpm api`, `pnpm gateway`, `pnpm handler`, `pnpm website`
### Hosting On A Server
1. Use the `.env.example` as a base, you can do `cat .env.example > .env` and then use your preffered text editor to edit it.
2. Simply run `pnpm all` and it will build for docker and use the `.env` you created recently.
## Contributing to Aeri
If you feel like Aeri is missing certain features, or would like to see more stuff implemented
Feel free to open a pull requests or issue.
1. Fork the repository
2. Create a new branch: `git checkout -b ''`
3. Make your changes and commit them: `git commit -m ''`
4. Push to the original branch: `git push origin '/'`
5. Create the pull request
## License
This project uses the following license: [MIT LICENSE](https://github.com/tomosfps/aeri/blob/main/LICENSE.md).