This is a MERN stack-based web application that allows users to track their reading progress. Users can enter books, update their reading progress, and view a progress bar to see how close they are to finishing each book.
- Book Entry: Users can add new books by providing the title, author, and the total number of pages.
- Progress Tracking: Users can update the number of pages they have read, and the app will display a progress bar to visualize reading completion.
- Book List: View a list of all entered books with the option to update progress or delete a book.
- Frontend: React
- Backend: Node.js, Express.js
- Database: MongoDB (using Mongoose ODM)
- Deployment: AWS Amplify and Route 53
- API Integration: Google Books API (optional)
Before you begin, ensure you have the following installed:
- Node.js
- MongoDB
- NPM or Yarn
- Clone the repository:
git clone https://github.com/EvanMeyerEmich/book-tracker-app.git
- Navigate into the project directory:
cd book-tracker-app
- Install dependencies for both frontend and backend:
npm install
cd client && npm install
- Start the backend server:
node server.js
- Start the frontend React app:
cd client && npm start
- Open the app in your browser at
http://localhost:3000
.
Create a .env
file in the root directory with the following variables:
MONGO_URI=<your_mongodb_uri>
PORT=5000
The app can be deployed using AWS Amplify and Route 53 for domain management. Please follow the AWS documentation for more details on deployment.
Feel free to fork this repository and create pull requests for any enhancements or bug fixes. Contributions are welcome!
This project is licensed under the MIT License. See the LICENSE file for details.