diff --git a/.nvmrc b/.nvmrc new file mode 100644 index 0000000..e44a38e --- /dev/null +++ b/.nvmrc @@ -0,0 +1 @@ +v18.12.1 diff --git a/index.html b/index.html new file mode 100644 index 0000000..5c1783b --- /dev/null +++ b/index.html @@ -0,0 +1,48 @@ + + + + Socket.IO chat + + + + +
+ +
+ + + + + \ No newline at end of file diff --git a/index.js b/index.js new file mode 100644 index 0000000..20deba5 --- /dev/null +++ b/index.js @@ -0,0 +1,26 @@ +const express = require('express'); +const app = express(); +const http = require('http'); +const server = http.createServer(app); +const { Server } = require("socket.io"); +const io = new Server(server); + +app.get('/', (req, res) => { + res.sendFile(__dirname + '/index.html'); +}); + +io.on('connection', (socket) => { + console.log('a user connected'); + + socket.on('disconnect', () => { + console.log('user disconnected'); + }); + + socket.on('chat message', (msg) => { + io.emit('chat message', msg); + }); +}); + +server.listen(3000, () => { + console.log('listening on *:3000'); +}); \ No newline at end of file diff --git a/jest.config.js b/jest.config.js new file mode 100644 index 0000000..b413e10 --- /dev/null +++ b/jest.config.js @@ -0,0 +1,5 @@ +/** @type {import('ts-jest').JestConfigWithTsJest} */ +module.exports = { + preset: 'ts-jest', + testEnvironment: 'node', +}; \ No newline at end of file diff --git a/package.json b/package.json new file mode 100644 index 0000000..b87910a --- /dev/null +++ b/package.json @@ -0,0 +1,41 @@ +{ + "name": "yaman", + "version": "1.0.0", + "description": "The thread-based social network", + "main": "index.js", + "directories": { + "doc": "docs" + }, + "scripts": { + "start": "node index.js", + "test": "jest" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/AlexRuiz7/CC.git" + }, + "keywords": [ + "social", + "network", + "twitter", + "discord" + ], + "author": "Alejandro Ruiz Becerra", + "license": "GPL-3.0-or-later", + "bugs": { + "url": "https://github.com/AlexRuiz7/CC/issues" + }, + "homepage": "https://github.com/AlexRuiz7/CC#readme", + "engines": { + "npm": ">=8.0.0", + "node": ">=18.0.0" + }, + "dependencies": { + "express": "^4.18.2", + "socket.io": "^4.5.4" + }, + "devDependencies": { + "jest": "^29.3.1", + "ts-jest": "^29.0.3" + } +} diff --git a/test/sum.js b/test/sum.js new file mode 100644 index 0000000..6fb269a --- /dev/null +++ b/test/sum.js @@ -0,0 +1,4 @@ +function sum(a, b) { + return a + b; +} +module.exports = sum; \ No newline at end of file diff --git a/test/sum.test.js b/test/sum.test.js new file mode 100644 index 0000000..df0dd09 --- /dev/null +++ b/test/sum.test.js @@ -0,0 +1,5 @@ +const sum = require('./sum'); + +test('adds 1 + 2 to equal 3', () => { + expect(sum(1, 2)).toBe(3); +}); \ No newline at end of file