https://github.com/codewithjazmine/bookbot
https://github.com/codewithjazmine/bookbot
Last synced: 8 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/codewithjazmine/bookbot
- Owner: CodeWithJazmine
- Created: 2025-04-25T05:20:55.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2025-04-25T05:51:54.000Z (8 months ago)
- Last Synced: 2025-04-25T06:35:34.385Z (8 months ago)
- Size: 1000 Bytes
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# BookBot
BookBot - a Python command-line tool that analyzes text files and displays word count and character statistics.
Built as part of [Boot.dev](https://www.boot.dev) curriculum using Python, Git, and GitHub.
## Project Overview
BookBot analyzes text files to provide:
- Total word count
- Character frequency analysis
- Sorted character count statistics
This project was built as part of my learning journey with Boot.dev to practice Python programming, command-line application development, and setting up a professional development environment.
## Features
- Read and process text files (works with novels like "Frankenstein", "Moby Dick", or any plain text file)
- Count the total number of words in a text
- Track character frequency and display sorted results
- Command-line interface for easy use with any text file
## Demo
https://github.com/user-attachments/assets/f19293eb-3fd0-485c-813b-fa2690ac3c0c
## How to Use
1. Clone this repository
2. Create a `books` directory and download text files you want to analyze (Project Gutenberg is a great source for free e-books)
3. Run the application by providing a path to a text file:
python main.py path_to_book.txt
For example:
```bash
python3 main.py books/frankenstein.txt
```
## Sample Output
```
========== BOOKBOT ==========
Analyzing book found at [book_file]
---------- Word Count ----------
Found [num_words] total words
---------- Character Count ----------
[char]: [count]
...
========== END ==========
```
## Project Structure
- `main.py`: Entry point of the application
- `stats.py`: Contains functions for text analysis
- `books/`: Directory for text files (not included in repository to keep it clean)
## Technologies Used
- Python
- Git & GitHub
- VS Code
## Learning Outcomes
Through building this project, I:
- Set up a local Python development environment
- Practiced building a complete project from scratch
- Implemented file I/O operations in Python
- Created text processing and analysis functions
- Used Git for version control and GitHub for project hosting
## Acknowledgements
This project was built as part of the [Boot.dev](https://boot.dev) curriculum.