ft_irc
is a programming project aimed at creating a custom IRC (Internet Relay Chat) server from scratch, using C++ 98.
This server will allow multiple clients to connect, communicate in real-time through text-based messages, either publicly or privately, and join group channels.
- Real-Time Communication: Support for multiple clients to chat in real-time.
- Custom Server: Built using C++ 98, adhering to fundamental programming practices.
- Channel and Private Messaging: Users can join channels or send private messages.
- Connection Authentication: Secure connections with a password.
- User Modes and Channel Operators: Implementation of standard IRC features.
- Non-Blocking I/O: The server uses non-blocking I/O operations.
- Polling Mechanism: Utilizes
poll()
(or similar functions likeselect()
,kqueue()
,epoll()
) for handling operations. - Stability: Designed to be robust against crashes or unexpected quits.
- Compiling: Use the provided Makefile for compiling.
- No External Libraries: Purely built with standard C++ libraries, no external or Boost libraries used.
To run the server:
./ircserv <port> <password>
<port>
: Port number for the IRC server.
<password>
: Connection password for clients.
Compatible with standard IRC clients.
Ensure smooth operation similar to conventional IRC servers.
This project was brought to life by a team of three 42 students !
Contributions were managed via Git, ensuring a collaborative and iterative approach to development, making good use of the Issues
system.