Skip to content

Mytalk is a chat web application designed to provide a clear and intuitive communication experience. Get in touch with friends, family, or colleagues in a convenient and user-friendly way.

Notifications You must be signed in to change notification settings

marceloxhenrique/MyTalk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

97 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Mytalk is a lightweight chat web application designed to provide a clear and intuitive communication experience. Get in touch with friends, family, or colleagues in a convenient and user-friendly way.

Prerequisites

Install and run the App locally

The App is divided in two main folders Server and Client. Each folder contains its own dependencies.

First, clone the repository

git clone git@github.com:marceloxhenrique/MyTalk.git

Install Client packages

Navigate to the Client folder and install the necessary packages:

cd Client
npm install

Setup .env file for Client Environment

Create a .env file in the Client folder with the following content:

VITE_BACKEND_URL_BASE = "http://localhost:3000/api";
VITE_BACKEND_URL_SOCKET = "http://localhost:3000";
VITE_NODE_ENV = "dev";

Install Server Packages

Navigate to the Server folder and install the necessary packages:

cd ../Server
npm install

Setup .env file for Server Environment

Create a .env file in the Server folder with the following content:

PORT=3000
NODE_ENV=dev
FRONT_END_URL=http://localhost:5173
FRONT_END_URL_PROD=
JWT_TOKEN_SECRET=
JWT_TOKEN_EXPIRATION=

JWT_REFRESH_TOKEN_SECRET=
JWT_REFRESH_TOKEN_EXPIRATION=

DB_HOST=
DB_PORT=
DB_USER=
DB_PASSWORD=
DB_NAME=

DB_CONNECTION='postgresql://johndoe:randompassword@localhost:5432/mydb?schema=public'

Setup the database

Run the database migration script to set up the database schema:

(Note: The database cannot be accessed by other users while the migration is running.)

npm run migration

Running Tests

Navigate to the Server folder and use the following command to run the tests:

npm test

This will execute the test scripts defined in the Server folder, checking the functionality and reliability of your server-side code.

Start the app

Navigate to the Client folder and run:

npm run dev

Open a new terminal window, navigate to the Server folder, and run:

npm run dev

The client application will be available at http://localhost:5173.

The server will be running on http://localhost:3000/api (or the port specified in your .env file).

Contribute

If you want to contribute, clone this repo, create your work branch and get your hands dirty!

git clone git@github.com:marceloxhenrique/MyTalk.git
git checkout -b feature/NAME

At the end, open a Pull Request explaining the problem solved or feature made, if exists, append screenshot of visual modifications and wait for the review!

About

Mytalk is a chat web application designed to provide a clear and intuitive communication experience. Get in touch with friends, family, or colleagues in a convenient and user-friendly way.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published