A straightforward recipe management application featuring Create, Read, Update, and Delete (CRUD) functionality for organizing recipes by title, instructions, and ingredients.
-
CRUD operations via Rest APIs.
-
Search and Filter capabilities based on titles and ingredients.
-
Responsive User Interface utilizing Material UI.
TypeScript, Node.js, Express.js, Prisma, PostgreSQL, React 18, React Hooks, React Query, Material UI, Rest API
GET /api/recipes| Parameter | Type | Description |
|---|---|---|
pageNumber |
string |
Required |
title |
string |
Option |
filter |
string[] |
Option |
GET /api/recipes/${id}| Parameter | Type | Description |
|---|---|---|
id |
string |
Required |
POST /api/recipes| Parameter | Type | Description |
|---|---|---|
title |
string |
Required |
instruction |
string |
Required |
ingredients |
string |
Required e.g. "salt:5g,sugar:10g, milk:200ml, beef : 300g" |
PUT /api/recipes/${id}| Parameter | Type | Description |
|---|---|---|
id |
string |
Required |
title |
string |
Required |
instruction |
string |
Required |
ingredients |
string |
Required e.g. "salt:5g,sugar:10g, milk:200ml, beef : 300g" |
DELETE /api/recipes/${id}| Parameter | Type | Description |
|---|---|---|
id |
string |
Required |
Install PostgreSQL and host database
If you don't use Postgres 16 (or use previous versions) please install the PostgreSQL 16 at first. (https://filehippo.com/download_postgresql/)
After installation of Postgres 16
C:\Program Files\PostgreSQL\16\bin>pg_ctl start -D "<db_path>"To install packages, run the following command
npm run install-allTo run test, run the following command
npm run test-allTo run start, run the following command
npm run start-all
