Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/benmukebo/bookstore


https://github.com/benmukebo/bookstore

Last synced: 7 days ago
JSON representation

Awesome Lists containing this project

README

        

![](https://img.shields.io/badge/Microverse-blueviolet)

# Bookstore

## Description

- Book Store is a website that allows you to
- Display a list of books,
- Add a book,
- Remove a selected book.

|| Bookstore ||
|-|-----------------------------------|-|
||![screenshot](./src/img/screenshot.png)||

## Learning objectives

- Understand the concept of state management.
- Use store, actions and reducers in React.
- Connect React and Redux.
- Understand the concept of state management.
- Use store, actions and reducers in React.
- Connect React and Redux.
- Understand the concept of state management.
- Use store, actions and reducers in React.
- Connect React and Redux.
- Connect an existing API via Redux and use the data to - display something in a UI.

### Built With

- React
- Redux

## Live Link

### []()

## Getting Started

### Clone this repository

- To get the content of this project locally you need to run this command in your terminal:

```bash
$ https://github.com/BenMukebo/bookstore.git
$ cd bookstore
```
### Run project

- After cloning the project you need to run this command

```bash
$ npm run start
```

- Initialise React app.

```bash
$ npx create-react-app bookstore
```

- Add React Redux.

```bash
$ npm install react-redux
```

The build is minified and the filenames include the hashes.\
Your app is ready to be deployed!

- Install react-icons

```bash
$ npm install react-icons --save # run this command in your project directory:
```

- Setup React Router

```bash
$ npm install react-router-dom
```

> To use the Router component provided to wrap your components and associate them with a path.

- To configuring the Redux Store and importing the necessary methods from Redux

```bash
$ npm i --save redux-logger
```
- Generating random ids

```bash
$ npm i uuid
```

- Redux Toolkit

> If you're using the basic Redux createStore API and need to set this up manually, first add the redux-thunk package:

```bash
$ npm install redux-thunk
```

### Code Splitting
- For tracking the linter errors in CSS file run:

This section has moved here: [https://facebook.github.io/create-react-app/docs/code-splitting](https://facebook.github.io/create-react-app/docs/code-splitting)
> `npx stylelint "\*_/_.{css,scss}"`
### Analyzing the Bundle Size
- And For tracking the linter errors in JavaScript file run:

This section has moved here: [https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size](https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size)
> `npx eslint .`
### Making a Progressive Web App
- Use `npm run build` to run the app in live server

This section has moved here: [https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app](https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app)

### Deployment

- `npm run build` fails to minify
### Show your support

This section has moved here: [https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify](https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify)

## Author

👤 **Ben Mukebo**

- GitHub: [@BenMukebo](https://github.com/BenMukebo)
- Twitter [@BenMukebo](https://twitter.com/BenMukebo)
- LinkedIn [BenMukebo](https://www.linkedin.com/in/kasongo-mukebo-ben-591720205/)

## :handshake: Contributing

Feel free to check the [issues page](https://github.com/BenMukebo/bookstore/issues)

Give a :star: if you like this project! ❤️❤️❤️

## Acknowledgments

- Thanks to everyone who will get time to check this code especially to code reviewers.

## 📝 License

This project is [MIT](https://github.com/microverseinc/readme-template/blob/master/MIT.md) licensed.