summaryrefslogtreecommitdiff
path: root/README.md
blob: 95af72a34e8c6ad750aef9813def92ef005f2de8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
# ![](/icon.png) TinyEmotes

Free, easy-to-install custom emote provider for IRC (and Twitch) platforms!
The main goal of the project is to replicate full functionality of other emote providers *(7TV, BetterTTV and FrankerFaceZ)* and make it free for everyone. The design is inspired by booru imageboards.

## Features

+ Emote upload (GIF/WebP support, automatic resizing)
+ Moderation system (Reports, emote approval)

> The project is in public beta. See [TODO list](https://github.com/users/ilotterytea/projects/11) for upcoming features.

## Public TinyEmotes Instances

| URL | Description | SFW/NSFW | Category |
|-----|-------------|----------|----------|
| [alright.party](https://alright.party) | Official TinyEmotes instance | NSFW | Mixed

> PR if you know any instances running TinyEmotes.

## Software supporting TinyEmotes

+ [Tinyrino](https://github.com/ilotterytea/tinyrino) - a Chatterino fork made by the author of TinyEmotes.

> PR if you know any software supporting TinyEmotes.

## Installation guide

> It is not recommended to install right now before version 1.0 is released, as there may be breaking updates.

### Prerequisites

+ PHP >= 8.3
+ ImageMagick >= 7.0
+ cURL
+ MySQL/MariaDB

### Step-by-step

1. Clone the repository.
2. Use reverse proxy *(Nginx, Apache, etc.)* for the project. See [configuration examples](#reverse-proxy-configurations).
3. Go to `/` (or `/system/config.php`) in your browser to configure the instance.
4. ???
5. Profit! It should work.

### Reverse proxy configurations

<details>
<summary>Basic Nginx configuration</summary>

```nginx
server {
    server_name tinyemotesinstance.com;

    root /www/tinyemotesinstance/public;
    index index.php;

    location / {
	    try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php$ {
	    include fastcgi_params;
	    fastcgi_pass unix:/run/php/php-fpm.sock;
	    fastcgi_index index.php;
	    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

    location ~* \.(js|css|png|jpg|jpeg|gif|webp|ico)$ {
        expires 6M;
        access_log off;
        add_header Cache-Control "public";
    }

    location ~ /\. {
        deny all;
    }
}
```

</details>

## License

This project is under MPL-2.0 license. See [LICENSE](/LICENSE)