Skip to content

An API server to support your Chat application frontend.

Notifications You must be signed in to change notification settings

the-real-i9/i9chat-server

Repository files navigation

i9chat (API Server)

Build your Chat Application

Intro

i9chat-server is a REST API server for a Chat Application, built in Go. It supports major chat application features that can be used to implement a mordern chat application.

Who is this project for?

If you're a frontend developer looking to build a Chat Application UI, not just to have it static, but to also make it function.

The goal of this API server is to support as many Chat Application features as possible.

The API documentation provides a detailed integration guide. It doesn't follow the Open API specification, rather it follows Google's API documentation style sturcured in a simple markdown table, which I consider easier to work with.

Open to suggestions

If you need a feature this API server does not currently support, feel free to suggest them, and it will be added as soon as possible.

Technologies

go go go postgresql nodejs go nodejs

More

  • ozzo-validator

Table of Contents

Features

The following is a summary of the features supported by this API. Visit the API documentation to see the full features and their implementation details.

DM Chat

  • Message of different types including text, voice, video, audio, photo, and file attachments.
  • React to Messages
  • Unsend Messages
  • Delete Messages

Group Chat

  • Start a Group, Add members, Make Admins etc.
  • Join Group, Leave Group etc.
  • Everything in DM Chat

Make friends (*)

  • Search for people you know by their username, email, or phone number and send friend requests
  • Use your contact list to find those on the app.
  • Accept friend requests

Moments (*)

  • A say for statuses on WhatsApp, and Stories on Messenger

API Documentation

Notable Features and their Algorithms

Building & Running the Application (Locally)

Deploying the Application