Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/edgi9/library-app
A MERN application that can fetch Books from database and display them on a React Web application (WIP)
https://github.com/edgi9/library-app
docker docker-compose expressjs mern-project nodejs react-router reactjs redux tailwindcss testing-library typescript vite vitest
Last synced: about 1 month ago
JSON representation
A MERN application that can fetch Books from database and display them on a React Web application (WIP)
- Host: GitHub
- URL: https://github.com/edgi9/library-app
- Owner: EDGI9
- Created: 2024-08-10T09:43:32.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-11-19T15:16:17.000Z (about 2 months ago)
- Last Synced: 2024-11-19T16:29:13.763Z (about 2 months ago)
- Topics: docker, docker-compose, expressjs, mern-project, nodejs, react-router, reactjs, redux, tailwindcss, testing-library, typescript, vite, vitest
- Language: TypeScript
- Homepage:
- Size: 436 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Library App (WIP)
A MERN application built with React.js for the client side, Node.js and Express.js for the Server application and Mongo DB as Database.
The idea is to build a library application where we have alist of books the users can search for and get some information about the books.
There is an administrator side to the application that allows for adding/removing/updating books into the database.## Demo
![image](https://github.com/user-attachments/assets/06fd0166-5ee2-4884-80fc-b0edd499b019)## Language
- Typescript
## Tools
- Build tool (vite)
- Testing (vitest, testing-library)
- Framework (React.js)
- Server (Node.js, Express.js)
- Routing (React Router)
- Store (Redux.js)
- CSS (Tailwind)
- CI/CD (GitHub Actions)
- Containerization (Docker, Docker Compose, Dev container)
- Architecture (Hexagonal Architecture)
- Development Style (Test Driven Development)
## Project setup
### Docker Desktop
```
In order to avoid issues with versioning, it's best to run this application with Docker and run the "docker compose" file to set up the enviornment.
```### Front-end
```
cd ./client
```#### Compiles and hot-reloads for development
```
npm run dev
```#### Compiles and minifies for production
```
npm run build
```### Back-end
```
cd ./server
```#### Start Server
```
npm run start
```#### Compiles files
```
npm run build
```### Run tests
```
cd ./client or cd ./servernpm run test
```### Run test coverage
```
cd ./client or cd ./server
npm run test:coverage
```