Designed and implemented using delicate methods and created an organised file system. Created unit tests using Jest🃏 and supertest for API mockup. Current functionalities are adding, finishing and deleting todo cards. Added data validation for backend using @hapi/joi. Used Express.js for backend and REST API. The frontend solely depends on ReactJS.
To install the app you have to install git.
git clone https://github.com/MuhammedBeraKoc/todo-app.git
Go to your project root (.../todo-app). Open two terminals there. In the first terminal, write the command below to start the server:
cd .\server
npm start
Then in the second terminal write commands below:
cd ..\client
npm start
Voila! Now you should see application in your browser screen like above.
Basically same steps but commands change a little like below:
cd ./server
npm start
cd ../client
npm start
Open a new terminal in the project root. For windows:
cd .\server && npm test
For Unix:
cd ./server && npm test
There are three predefined scripts for testing:
- npm test: Runs the default testing. Runs test suites for one time with basic info.
- npm run test:coverage: Runs unit tests for one time but with coverage. Coverage shows the function stack in a table and shows the consumed time for each one.
- npm run test::watch: Runs unit tests when there is a difference in test suites. Also has miscallenous options to run.
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.
This project has been licensed with MIT.