https://github.com/siddhant-vij/personal-book-library
Practice project for Relational DBMS | CRUD App | Manage your personal book collection with ease.
https://github.com/siddhant-vij/personal-book-library
bash cli-app cpp crud-application dbms go java python relational-database
Last synced: 3 months ago
JSON representation
Practice project for Relational DBMS | CRUD App | Manage your personal book collection with ease.
- Host: GitHub
- URL: https://github.com/siddhant-vij/personal-book-library
- Owner: siddhant-vij
- License: mit
- Created: 2024-03-11T05:22:48.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-03-28T02:19:02.000Z (over 2 years ago)
- Last Synced: 2025-10-27T10:47:05.993Z (8 months ago)
- Topics: bash, cli-app, cpp, crud-application, dbms, go, java, python, relational-database
- Language: Python
- Homepage:
- Size: 1010 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Personal Book Library
A CLI-based application designed to help users catalog and manage their personal book collections. Manage your personal book collection with ease - code in Java, C++, Go & Python.
It allows users to add, update, view, and delete book information, such as titles, authors, ISBNs, and publication years, directly from the command line. Ideal for book enthusiasts looking to organize their collections digitally.
## Table of Contents
1. [Features](#features)
1. [Technical Scope](#technical-scope)
1. [Installation and Usage](#installation-and-usage)
1. [Contributing](#contributing)
1. [License](#license)
## Features
- **CRUD Operations**: Add, view, update, and delete book entries.
- **Search Functionality**: Find books by title, author, or ISBN.
- **Data Persistence**: Store book data in a relational database.
- **Sorting and Filtering**: List books alphabetically or by publication year.
- **Query Operations**: Perform simple-to-advanced queries on the database.
## Technical Scope
- **Database**: SQLite/MySQL/PostgreSQL for data storage and management.
- **Languages**: Implementations in Bash, Java, C++, Go, and Python.
- **CLI Interface**: Simple and intuitive command-line interface for user interaction.
- **Problem Solving**: Solve the problems in the problem statements (problems.txt) using the random data (input_data.csv).
## Installation and Usage
1. **Clone the Repository**:
```bash
git clone https://github.com/siddhant-vij/Personal-Book-Library.git
```
2. **Navigate to Language Directory**:
```bash
cd Personal-Book-Library/[language]
```
3. **Install Dependencies**: Standard instructions to be followed for each language, if any external dependency.
4. **Install the required database**: Standard instructions to be followed for each database, as required.
3. **Build and Run the Application**: Standard instructions to be followed for each language.
4. **Using the CLI**: Follow the on-screen prompts to perform database operations.
## Contributing
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.
1. **Fork the Project**
2. **Create your Feature Branch**:
```bash
git checkout -b feature/AmazingFeature
```
3. **Commit your Changes**:
```bash
git commit -m 'Add some AmazingFeature'
```
4. **Push to the Branch**:
```bash
git push origin feature/AmazingFeature
```
5. **Open a Pull Request**
## License
Distributed under the MIT License. See [`LICENSE`](https://github.com/siddhant-vij/Personal-Book-Library/blob/main/LICENSE) for more information.