Skip to content

Yosshy-123/KAeRU-Log

Repository files navigation

KAeRU Log

Lightweight Node.js and WebSocket Chat App

English 日本語

Directory structure

├── .github/
│   ├── logo.png
│   ├── README.ja.md
│   └── README.md
├── lib/
│   ├── redisHelpers.js
│   └── redisKeys.js
├── lua/
│   ├── spamService.lua
│   └── tokenBucket.lua
├── public/
│   ├── css/
│   │   └── style.css
│   ├── images/
│   │   ├── favicon-16x16.png
│   │   ├── favicon-32x32.png
│   │   ├── favicon-96x96.png
│   │   └── logo.png
│   ├── js/
│   │   ├── api.js
│   │   ├── config.js
│   │   ├── dom.js
│   │   ├── index.js
│   │   ├── init.js
│   │   ├── modal.js
│   │   ├── render.js
│   │   ├── room.js
│   │   ├── services.js
│   │   ├── socket.io.min.js
│   │   ├── socket.js
│   │   ├── state.js
│   │   ├── toast.js
│   │   └── utils.js
│   └── index.html
├── routes/
│   ├── apiAdmin.js
│   ├── apiAuth.js
│   ├── apiMessages.js
│   └── apiUsername.js
├── services/
│   └── spamService.js
├── src/
│   └── render.gs
├── utils/
│   ├── logger.js
│   ├── redisUtils.js
│   ├── socketWrapper.js
│   ├── time.js
│   └── tokenBucket.js
├── app.js
├── auth.js
├── LICENSE
├── package.json
├── redis.js
├── render.yaml
├── securityHeaders.js
├── server.js
└── socket.js

Deployment

1. Configure Redis

KAeRU Log uses Redis for chat logs and state management.

Prepare a Redis instance by one of the following methods.

Use Render's Redis (recommended)

  1. In the Render dashboard choose NewKey Value.
  2. Give the service a name of your choice.
  3. Set Maxmemory Policy to noeviction.
  4. Select region and plan.
  5. After creation, save the Redis Internal Key Value URL.

Use an external Redis service

You may also use an external provider such as:

In any case, obtain the Redis connection URL.

2. Deploy the application

  1. In the Render dashboard choose NewWeb Service.
  2. Set the GitHub repository to https://github.com/Yosshy-123/KAeRU-Log.git.
  3. Give the service a name.
  4. Select region and plan.
  5. Set Environment to Node (v22+).
  6. Set the Build Command:
npm install
  1. Set the Start Command:
npm start
  1. Configure environment variables:
REDIS_URL=<Redis connection URL>
FRONTEND_URL=<Frontend origin URL>
ADMIN_PASS=<Administrator password>

Important

For FRONTEND_URL, specify an origin without a trailing slash, e.g. https://example.com.


Live demo

https://kaeru-log.onrender.com/


Bug reports & feedback

For bug reports or suggestions for improvement, please open an Issue or contact Yosshy_123@proton.me.

Note

If you contact by email, replies may be delayed. If possible, prefer creating an Issue as it is easier to track.


License

This project is provided under the MIT License.

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •