Skip to content

KartikDevarde2601/ebookFrontend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📚 Book Library App

A modern web application for managing, exploring, and reading books for free. Built with React.js for the frontend and Strapi as a headless CMS backend, deployed on Firebase.

Book Library Demo

✨ Features

  • 📱 Responsive design for all devices
  • 📖 Free book reading with built-in e-reader
  • 📑 Bookmark and resume reading functionality
  • 📊 Book categories and tags
  • 📖 Detailed book information pages
  • 📝 CRUD operations for books
  • 📱 Progressive Web App (PWA) support for offline reading

🛠️ Tech Stack

  • Frontend:

    • React.js
    • React Router for navigation
    • Redux for state management
    • Tailwind CSS for styling
    • Axios for API requests
    • React-PDF for PDF rendering
    • EPUB.js for EPUB format support
  • Backend:

    • Strapi Headless CMS
    • PostgreSQL database
    • REST API endpoints
    • Cloud storage for book files
  • Deployment:

    • Firebase Hosting
    • Firebase Authentication
    • Cloud Storage for books and images

📸 Screenshots Web

Screenshot 1 Screenshot 1 Screenshot 1

📸 Screenshots Mob

Screenshot 1 Screenshot 1 Screenshot 1

🚀 Getting Started

Prerequisites

  • Node.js (v14 or higher)
  • npm or yarn
  • Firebase account
  • Strapi setup

Installation

  1. Clone the repository:
git clone https://github.com/yourusername/book-library.git
cd book-library
  1. Install frontend dependencies:
cd frontend
npm install
  1. Install Strapi dependencies:
cd backend
npm install
  1. Configure environment variables:
# Frontend .env
REACT_APP_API_URL=your_strapi_url
REACT_APP_FIREBASE_CONFIG=your_firebase_config

# Backend .env
DATABASE_URL=your_database_url
JWT_SECRET=your_jwt_secret
  1. Run the development servers:
# Frontend
npm start

# Backend
npm run develop

📖 Reading Features

Supported Formats

  • PDF
  • EPUB
  • Text files
  • HTML

Offline Reading

  • Download books for offline access
  • Sync reading progress when online
  • Automatic bookmarking

📝 Configuration

Firebase Setup

  1. Create a new Firebase project
  2. Enable Authentication and Hosting
  3. Set up Cloud Storage for books
  4. Configure Firebase configuration in your React app
  5. Deploy using Firebase CLI

Strapi Setup

  1. Configure database connection
  2. Set up content types for books and user progress
  3. Configure permissions
  4. Set up file upload providers
  5. Deploy Strapi backend

🔐 Environment Variables

Create .env files in both frontend and backend directories:

# Frontend
REACT_APP_API_URL=
REACT_APP_FIREBASE_CONFIG=
REACT_APP_STORAGE_BUCKET=

# Backend
DATABASE_URL=
JWT_SECRET=
ADMIN_JWT_SECRET=
CLOUDINARY_NAME=
CLOUDINARY_KEY=
CLOUDINARY_SECRET=

🚀 Deployment

Frontend Deployment (Firebase)

npm run build
firebase deploy

🙏 Acknowledgments

  • Strapi team for the amazing headless CMS
  • Firebase team for the hosting and authentication services
  • EPUB.js and React-PDF for reader functionality
  • All contributors who helped with the project

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published