{"id":13403071,"url":"https://github.com/maxpert/raspchat","last_synced_at":"2025-04-05T01:08:05.221Z","repository":{"id":2992532,"uuid":"48005353","full_name":"maxpert/raspchat","owner":"maxpert","description":"A chat server that can run on Raspberry Pi","archived":false,"fork":false,"pushed_at":"2024-06-12T19:29:26.000Z","size":8372,"stargazers_count":419,"open_issues_count":6,"forks_count":40,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-03-29T00:08:52.109Z","etag":null,"topics":["chat","demo","node","node-js","nodejs","raspberry-pi","server","slack","uwebsockets"],"latest_commit_sha":null,"homepage":"http://beta.raspchat.com/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/maxpert.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":null,"funding":null,"license":"license","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-12-14T22:38:17.000Z","updated_at":"2024-10-05T23:54:09.000Z","dependencies_parsed_at":"2023-01-11T16:13:41.847Z","dependency_job_id":"50e2521d-b168-4926-9dbb-ee039dff5bce","html_url":"https://github.com/maxpert/raspchat","commit_stats":{"total_commits":177,"total_committers":10,"mean_commits":17.7,"dds":0.5593220338983051,"last_synced_commit":"fafd18b32f82acca1fd000cd7e7793796f660ce3"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxpert%2Fraspchat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxpert%2Fraspchat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxpert%2Fraspchat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxpert%2Fraspchat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/maxpert","download_url":"https://codeload.github.com/maxpert/raspchat/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247271530,"owners_count":20911587,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chat","demo","node","node-js","nodejs","raspberry-pi","server","slack","uwebsockets"],"created_at":"2024-07-30T19:01:25.026Z","updated_at":"2025-04-05T01:08:05.190Z","avatar_url":"https://github.com/maxpert.png","language":"JavaScript","funding_links":[],"categories":["JavaScript","computer stuffs"],"sub_categories":["assistants"],"readme":"# An IRC like chat system written in Node.js\n\n[![Build Status](https://semaphoreci.com/api/v1/projects/bb232bf4-f866-4d30-a526-218e9f3aed5b/647934/badge.svg)](https://semaphoreci.com/maxpert/raspchat)\n\n# Project Status\n\n \u003e 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.\n\n## Why?\nI 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 (\u003c $50 hardware) forever and free!\n\n## Requirements\nFor compiling you need:\n * Node 8+ (with npm5)\n * libsqlite3\n * OpenSSL 1.x.x (for uWebsockets)\n * zlib 1.x (for uWebsockets)\n * libuv 1.3+ or Boost.Asio 1.x (both optional on Linux)\n\nYou can use following commands to install them:\n * Fedora: `sudo dnf install openssl-devel zlib-devel`\n * Homebrew: `brew install openssl zlib libuv`\n * Vcpkg: `vcpkg install openssl zlib libuv and/or vcpkg install openssl:x64-windows zlib:x64-windows libuv:x64-windows`\n\nOnce you have installed dependencies above just do `npm install \u0026\u0026 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.\n\n## Configurations\n\nYou can use a `.env` file or environment variables to configure the server, here are the environment variables you can change:\n\n * `RC_URL` (default `http://localhost:3000/`) **R**asp**c**hat **URL** where server would start listening\n * `DB_PATH` (default `chat-log.db`) **D**ata**b**ase **path** for SQLite database\n * `WS_URL` (default `ws://localhost:3000/chat`) **W**eb**s**ocket **URL** if you are running it behind some proxy\n * `WSS_URL` (default `wss://localhost:3000/chat`) **W**eb**s**ocket **s**ecure **URL** if you are running it behind some proxy\n\nYou can read about `.env` file [here](https://www.npmjs.com/package/dotenv) \n\n## Features:\n\n * Basic GIF support\n * Basic nick support\n * Channel (join/leave/list-members) support\n * Markdown support\n * Message history on group join\n\n## Pending:\n\n * Refactor frontend using hyperapp\n * Scrollable history\n * Unit tests\n * Introduce admin panel with:\n   * Reserved alias authorization\n   * IP limiting/banning\n   * Fixed alias with passwords\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaxpert%2Fraspchat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmaxpert%2Fraspchat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaxpert%2Fraspchat/lists"}