]> jfr.im git - irc/unrealircd/unrealircd-webpanel.git/blob - README.md
05925773abb09a4e7d11673ed4a6b450df9f5bb0
[irc/unrealircd/unrealircd-webpanel.git] / README.md
1 ## UnrealIRCd Administration WebPanel
2
3 [![Version](https://img.shields.io/badge/UnrealIRCd-6.0.6_or_later-darkgreen.svg)]()
4 [![Version](https://img.shields.io/badge/Version-Beta-blue.svg)]()
5 [![Maintained](https://img.shields.io/badge/Maintained-yes-darkgreen.svg)]()
6 [![Unreal](https://img.shields.io/badge/PHP-8.0_or_later-darkgreen.svg)](https://unrealircd.org)
7
8 Are you tired of managing your IRC network through a command line interface? Do you wish there was a more user-friendly way to keep track of your servers, channels, and users? Look no further than the UnrealIRCd Web Panel!
9
10 This web-based tool provides a comprehensive overview of your IRC network, including all channels and users, as well as detailed information about individual servers and users. With the UnrealIRCd Web Panel, you can easily add and remove server bans and spamfilter entries, rehash your entire network, and filter lists of information based on input criteria, all from the convenience of your web browser.
11
12 One of the key features of the UnrealIRCd Web Panel is its user-friendly interface. The panel is designed to be easy to navigate, with all the information you need displayed in an organized and easy-to-understand format. This makes it much easier to manage your network, especially if you have multiple servers or a large number of users.
13
14 Additionally, the UnrealIRCd Web Panel is a great tool for keeping track of your network's activity. You can view detailed information about the channels and users on your network as well as manage your servers. This allows you to quickly identify and address any issues that may arise.
15
16 Overall, the UnrealIRCd Web Panel is a must-have tool for any administrator managing an IRC network. Its user-friendly interface and powerful management capabilities make it easy to keep track of your network and ensure that everything is running smoothly. So why not give it a try and see how it can improve your IRC network management experience?
17
18 ## Example Overview from Desktop
19 <img src="https://i.ibb.co/7SdFZnk/Screenshot-from-2023-01-14-07-26-21.png">
20
21 ## Example Overview from Mobile
22 <img src="https://i.ibb.co/KGLdB43/Screenshot-20230123-233804-Chrome.jpg">
23
24 ## Prerequisites ##
25 - PHP 8 or later
26 - A webserver
27 - UnrealIRCd 6.0.6-git recommended. Minimal functionality available with UnrealIRCd 6.0.5.
28
29 Note: PHP 8 may require special installation instructions.
30 Here are some instructions for:
31 - Ubuntu 22.04: `apt-get install apache2 libapache2-mod-php`
32 - [Ubuntu 20.04](https://linuxhint.com/install-php-ubuntu/)
33 - [Debian](https://www.vultr.com/docs/how-to-install-php-8-on-debian-11/)
34 - [CentOS](https://www.tecmint.com/install-php-8-on-centos/)
35
36 For more installation methods for PHP 8, make a websearch for how to install PHP 8 on your operating system.
37 ## Installation ##
38
39 Note: This instructional assumes this is going to be hosted in the webroot directory `/var/www/` (html/) directory.
40
41 Please make sure you have [correctly setup UnrealIRCd for use with JSON-RPC](https://www.unrealircd.org/docs/JSON-RPC) before you continue.
42
43 - Go to your webserver root, for example `/var/www/html/`, and clone
44 this repository:
45 ```
46 cd /var/www/html
47 git clone https://github.com/unrealircd/unrealircd-webpanel
48 ```
49
50 - Go into the directory and run composer to install the dependencies
51 (If you don't have composer, then [install it](https://getcomposer.org/download/) first):
52 ```
53 cd unrealircd-webpanel
54 composer install
55 ```
56
57 - Edit the configuration file
58 ```
59 cp config.php.sample config.php
60 nano config.php
61 ```
62 Edit the configuration file to match your UnrealIRCd's RPC credentials and save
63
64 NOTE: You most likely want to put the webpanel behind a login, using a
65 `.htaccess` file or similar.
66
67 ## Updating for end-users ##
68 For end-users, when you want to update to the latest version:
69 ```bash
70 git pull
71 composer install
72 ```
73
74 ## Authentication
75 There will be at least two methods of authentication. Currently in
76 development:
77
78 - SQL (available but still in development!)
79 - Local File DB (not public yet)
80
81 ### SQL Authentication (Work In Progress)
82 <img width="130" height="100" src="https://cdn.shopify.com/s/files/1/1140/2002/products/UV-10073Cautionuseatyourownrisk-01_1024x1024.png?v=1588174823">
83 In order to use the SQL Authentication plugin you must first make
84 sure you have an SQL database which UnrealIRCd Admin Panel can
85 access.
86
87 Make sure you've put your SQL details in `config.php` and that you
88 have `"sql_auth",` in the plugins section of the config.
89
90 You can create the first user by following the example in `config.php`.
91 After you've logged in, you will have two new tabs: `Panel Access` and `Logout`.
92 You will be able to add and delete users from the `Panel Access` tab.
93
94 ### Local File DB
95 <img width="27" height="27" src="https://media2.giphy.com/media/3o7TKtnuHOHHUjR38Y/giphy.gif?cid=6c09b95281771195a917f87730a56bcdcfa5b6f418dcaf5e&rid=giphy.gif&ct=s"> This might take a while. Please wait a few days.
96
97
98 ## Developers ##
99 Developers of the webpanel will naturally use the same procedure as
100 above. However, sometimes you will want to update to a newer version
101 of the unrealircd-rpc-php library. You then need to run:
102 ```bash
103 # For devs only!
104 composer update
105 git commit composer.lock
106 ```
107 Commiting the composer.lock file updates the dependency for all
108 other users, that way a `composer update` by end-users will update
109 to exactly the version that `composer install` just installed.