├── images
├── README.md
└── app_preview_image.png
├── .gitignore
├── blobchat.png
├── public
├── icon.png
├── 1_index_screenshot.png
├── 2_posts_screenshot.png
├── 3_chat_screenshot.png
├── blobchat_thumbnail.jpeg
├── sample_posts.json
├── icon.svg
└── style.css
├── docker-compose.yml
├── package.json
├── LICENSE
├── marketplace.json
├── views
├── index.ejs
├── posts.ejs
└── chat.ejs
├── README.md
└── server.js
/images/README.md:
--------------------------------------------------------------------------------
1 | # Images
2 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .idea
2 | node_modules
3 |
--------------------------------------------------------------------------------
/blobchat.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/redis-developer/BlobChat/main/blobchat.png
--------------------------------------------------------------------------------
/public/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/redis-developer/BlobChat/main/public/icon.png
--------------------------------------------------------------------------------
/images/app_preview_image.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/redis-developer/BlobChat/main/images/app_preview_image.png
--------------------------------------------------------------------------------
/public/1_index_screenshot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/redis-developer/BlobChat/main/public/1_index_screenshot.png
--------------------------------------------------------------------------------
/public/2_posts_screenshot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/redis-developer/BlobChat/main/public/2_posts_screenshot.png
--------------------------------------------------------------------------------
/public/3_chat_screenshot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/redis-developer/BlobChat/main/public/3_chat_screenshot.png
--------------------------------------------------------------------------------
/public/blobchat_thumbnail.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/redis-developer/BlobChat/main/public/blobchat_thumbnail.jpeg
--------------------------------------------------------------------------------
/docker-compose.yml:
--------------------------------------------------------------------------------
1 | version: '3'
2 | services:
3 | redis:
4 | image: redislabs/redisearch:latest
5 | ports:
6 | - 6379:6379
7 |
8 | redis-commander:
9 | hostname: redis-commander
10 | image: rediscommander/redis-commander:latest
11 | restart: always
12 | environment:
13 | - REDIS_HOSTS=local:redis:6379
14 | ports:
15 | - "8081:8081"
16 |
--------------------------------------------------------------------------------
/public/sample_posts.json:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "username": "CookieMonster",
4 | "content": "A brown fox jumps over the fence."
5 | },
6 | {
7 | "username": "SpongeBob",
8 | "content": "A green fox said wow."
9 | },
10 | {
11 | "username": "Ninja123",
12 | "content": "It's a very nice day out there. Want to take a walk?"
13 | },
14 | {
15 | "username": "PlaidShirt",
16 | "content": "The light from the stars finally shines through the clouds in the night sky. How pretty."
17 | }
18 | ]
19 |
--------------------------------------------------------------------------------
/public/icon.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "BlobChat",
3 | "version": "1.0.0",
4 | "description": "A minimalist and elegant chat app.",
5 | "main": "server.js",
6 | "scripts": {
7 | "start": "nodemon server.js"
8 | },
9 | "repository": {
10 | "type": "git",
11 | "url": "git+https://github.com/pumpkiny9120/BlobChat.git"
12 | },
13 | "keywords": [],
14 | "author": "",
15 | "license": "ISC",
16 | "bugs": {
17 | "url": "https://github.com/pumpkiny9120/BlobChat/issues"
18 | },
19 | "homepage": "https://github.com/pumpkiny9120/BlobChat#readme",
20 | "dependencies": {
21 | "ejs": "^3.1.6",
22 | "express": "^4.17.1",
23 | "redis": "^3.1.2",
24 | "redis-redisearch": "^1.0.1",
25 | "socket.io": "^4.0.2"
26 | },
27 | "devDependencies": {
28 | "nodemon": "^2.0.7"
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2021 Redis Developer
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/marketplace.json:
--------------------------------------------------------------------------------
1 | {
2 | "app_name": "BlobChat",
3 | "description": "Finding Like-Minded people in Chat App using Search and Query feature of Redis",
4 | "type": "Building Block",
5 | "contributed_by": "Community",
6 | "repo_url": "https://github.com/redis-developer/BlobChat",
7 | "preview_image_url": "https://raw.githubusercontent.com/redis-developer/BlobChat/main/images/app_preview_image.png",
8 | "download_url": "https://github.com/redis-developer/BlobChat/archive/refs/heads/main.zip",
9 | "hosted_url": "",
10 | "quick_deploy": "false",
11 | "deploy_buttons": [],
12 | "language": [
13 | "JavaScript"
14 | ],
15 | "redis_commands": [
16 | "FT.CREATE",
17 | "HSET",
18 | "FT.SEARCH",
19 | "RPUSH",
20 | "EXPIRE",
21 | "LRANGE"
22 | ],
23 | "redis_use_cases": [
24 | "Caching"
25 | ],
26 | "redis_features": [
27 | "Search and Query"
28 | ],
29 | "app_image_urls": [],
30 | "youtube_url": "https://www.youtube.com/watch?v=OOWw_tPG9ls",
31 | "special_tags": [
32 | "Hackathon"
33 | ],
34 | "verticals": [
35 | "Retail"
36 | ],
37 | "markdown": "https://raw.githubusercontent.com/redis-developer/BlobChat/main/README.md"
38 | }
--------------------------------------------------------------------------------
/views/index.ejs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Welcome to BlobChat!
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 | BlobChat Demo
18 | Here you can have fun starting a chat with a similar-minded person.
19 | And don't worry about saying bye if the conversation gets boring, the app will end it for
20 | you.
21 | Step 1: Type a username and anything to start.
22 |