All Projects → maxpert → Raspchat

maxpert / Raspchat

Licence: mit
A chat server that can run on Raspberry Pi

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Raspchat

Ha Bt Proximity
Distributed Bluetooth Room Presence Sensor for Home Assistant
Stars: ✭ 77 (-81.58%)
Mutual labels:  raspberry-pi, node-js
Workbase Server
Slack alternative, email integrated, build with Meteor
Stars: ✭ 284 (-32.06%)
Mutual labels:  chat, slack
Qtswissarmyknife
QSAK (Qt Swiss Army Knife) is a multi-functional, cross-platform debugging tool based on Qt.
Stars: ✭ 196 (-53.11%)
Mutual labels:  raspberry-pi, server
Solarthing
Monitors an Outback MATE and a Renogy Rover - MPPT Charge Controller. Integrates with Grafana, PVOutput and more!
Stars: ✭ 33 (-92.11%)
Mutual labels:  raspberry-pi, slack
Cuberite
A lightweight, fast and extensible game server for Minecraft
Stars: ✭ 3,984 (+853.11%)
Mutual labels:  raspberry-pi, server
Pendulum
ROS, ROS2, real-time, control, pendulum
Stars: ✭ 37 (-91.15%)
Mutual labels:  raspberry-pi, demo
React Ssd1306
📟 A React Renderer for SSD1306 OLED chip on Raspberry Pi.
Stars: ✭ 273 (-34.69%)
Mutual labels:  raspberry-pi, demo
Demo Twilio Backend Nodejs
A sample backend that demonstrates how to generate a Virgil JWT and Twilio token used for authentication with the Virgil and Twilio services
Stars: ✭ 128 (-69.38%)
Mutual labels:  demo, chat
Pode
Pode is a Cross-Platform PowerShell web framework for creating REST APIs, Web Sites, and TCP/SMTP servers
Stars: ✭ 329 (-21.29%)
Mutual labels:  raspberry-pi, server
Organizr
HTPC/Homelab Services Organizer - Written in PHP
Stars: ✭ 3,605 (+762.44%)
Mutual labels:  chat, server
Pigallery2
A directory-first photo gallery website, witch rich UI, optimised for running on low resource servers (especially on raspberry pi)
Stars: ✭ 470 (+12.44%)
Mutual labels:  raspberry-pi, node-js
Desktopify
Convert Ubuntu Server for Raspberry Pi into a Desktop
Stars: ✭ 400 (-4.31%)
Mutual labels:  raspberry-pi, server
Pervane
Plain text file based note taking and knowledge base building tool, markdown editor, simple browser IDE.
Stars: ✭ 159 (-61.96%)
Mutual labels:  demo, server
Security Camera
🔦 Motion detecting security camera using a raspberry pi, webcam, and slack
Stars: ✭ 76 (-81.82%)
Mutual labels:  raspberry-pi, slack
Mmtexturechat
AsyncDisplayKit(Texture) Smooth Scroll Chat Simulation for Whatsapp and iMessage
Stars: ✭ 149 (-64.35%)
Mutual labels:  demo, chat
Cordova Plugin Native Keyboard
🎹 Add a Slack / WhatsApp - style chat keyboard to your Cordova app!
Stars: ✭ 271 (-35.17%)
Mutual labels:  chat, slack
Server Components Mdx Demo
React server components + MDX
Stars: ✭ 102 (-75.6%)
Mutual labels:  demo, server
Redux Framework
Redux is a simple, truly extensible options framework for WordPress themes and plugins!
Stars: ✭ 1,602 (+283.25%)
Mutual labels:  demo, slack
Ngircd
Free, portable and lightweight Internet Relay Chat server
Stars: ✭ 292 (-30.14%)
Mutual labels:  chat, server
Picluster
A Simplified Docker Swarm or Kubernetes Alternative to Container Scheduling and Orchestration
Stars: ✭ 390 (-6.7%)
Mutual labels:  raspberry-pi, node-js

An IRC like chat system written in Node.js

Build Status

Project Status

The original goal of the project was to build fun little project to let people build their local communities. It was fun talking to many folks, getting contributions, and a journey from Go to Node. Maintaining an opensource project, is not an easy chore. It requires immense energy, and hours of careful thinking. Unfortunately I no longer have the time or energy to continue doing that. With the limited success, I feel leaving this project in it's current state is the most prudent thing I can do. I am still reachable by email, and maintainance PRs are welcome.

Why?

I had a spare Raspberry Pi and I wanted to use it! One of ideas in my head was to have your own on-premise chat server that you can use for cheap and own your data (< $50 hardware) forever and free!

Requirements

For compiling you need:

  • Node 8+ (with npm5)
  • libsqlite3
  • OpenSSL 1.x.x (for uWebsockets)
  • zlib 1.x (for uWebsockets)
  • libuv 1.3+ or Boost.Asio 1.x (both optional on Linux)

You can use following commands to install them:

  • Fedora: sudo dnf install openssl-devel zlib-devel
  • Homebrew: brew install openssl zlib libuv
  • Vcpkg: vcpkg install openssl zlib libuv and/or vcpkg install openssl:x64-windows zlib:x64-windows libuv:x64-windows

Once you have installed dependencies above just do npm install && gulp (creates a dist folder that you can upload to your machine). Project can run on almost any machine that nodejs supports. I have successfully tested it on Raspberry Pi, Orange Pi etc.

Configurations

You can use a .env file or environment variables to configure the server, here are the environment variables you can change:

  • RC_URL (default http://localhost:3000/) Raspchat URL where server would start listening
  • DB_PATH (default chat-log.db) Database path for SQLite database
  • WS_URL (default ws://localhost:3000/chat) Websocket URL if you are running it behind some proxy
  • WSS_URL (default wss://localhost:3000/chat) Websocket secure URL if you are running it behind some proxy

You can read about .env file here

Features:

  • Basic GIF support
  • Basic nick support
  • Channel (join/leave/list-members) support
  • Markdown support
  • Message history on group join

Pending:

  • Refactor frontend using hyperapp
  • Scrollable history
  • Unit tests
  • Introduce admin panel with:
    • Reserved alias authorization
    • IP limiting/banning
    • Fixed alias with passwords
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].