WordList is a website for learning a new language, more precisely to help you memorize some words.
While you are listening, reading, or watching, some words that you don't know yet will appear, use the website to add these words and revise them.
Language: Typescript
Framework: Next 13
Styles: Styled-Components
Database: MongoDB, mongoose, typegoose.
Queries: Graphql - Apollo
Global state: Redux
Authentication: JWT
Tests: Cypress, vitest, react-testing-library, supertest-graphql
Linting: Eslint
How to run the project in dev environment
You will need mongoDB installed.
Clone the repository, and enter the wordList folder
git clone https://github.com/Rafael-Cesario/WordList
cd wordList
There are two folders inside wordList, Frontend and Backend
cd Backend
${packageManager} install
Inside backend folder create a .env with the following properties
This will start mongoDB on localhost
DATABASE="mongodb://127.0.0.1:27017/WordList"
SECRET="${secret hash for the jwt Token}"
${packageManager} run dev
Open another terminal instance to run the frontend server.
cd Frontend
${packageManager} install
Inside the folder we need to create a .env.local with the following property
//.env.local
NEXT_PUBLIC_URI_DATABASE="http://localhost:4000/"
${packageManager} run dev