A simple React frontend application for managing books and authors, designed to work with the Book API Express SQLite backend.
This project provides a user-friendly web interface to manage a collection of books and authors. It allows users to perform CRUD (Create, Read, Update, Delete) operations on both books and authors, with a clean and responsive UI.
-
Author Management
- View all authors
- View author details including their books
- Add new authors
- Edit existing authors
- Delete authors (with cascade deletion of their books)
-
Book Management
- View all books with author information
- View book details
- Add new books
- Edit existing books
- Delete books
- Filter books by author
src/
├── components/
│ ├── authors/
│ │ ├── AuthorForm.jsx
│ │ ├── AuthorList.jsx
│ │ └── AuthorDetail.jsx
│ └── books/
│ ├── BookForm.jsx
│ ├── BookList.jsx
│ └── BookDetail.jsx
├── services/
│ ├── api.js
│ ├── authorService.js
│ └── bookService.js
├── App.jsx
├── main.jsx
└── index.css
- Node.js (v14.0.0 or higher)
- npm (v6.0.0 or higher)
- Book API Express SQLite backend running on port 3000
-
Clone the repository:
git clone https://github.com/kstayner/book-crud-frontend.git cd book-crud-frontend -
Install dependencies:
npm install
-
Make sure the Book API Express SQLite backend is running on port 3000.
-
Start the development server:
npm run dev
-
Open your browser and navigate to http://localhost:5173
- React - UI library
- React Router - Routing
- Axios - HTTP client
- Vite - Build tool and development server
- Book API Express SQLite - Backend API
This frontend application is designed to work with the Book API Express SQLite backend. Make sure the backend is running before using this application.
The API base URL is configured in src/services/api.js and defaults to http://localhost:3000.
npm run dev- Start the development servernpm run build- Build the production-ready applicationnpm run preview- Preview the production build locally
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License.
- Book API Express SQLite for providing the backend API
- React for the fantastic UI library
- Vite for the fast development experience

