Skip to content

BookstoreApp is a modern mobile application built with React Native and Expo, offering users a seamless experience in discovering, browsing, and managing books. Powered by a lightweight and efficient architecture, the app delivers smooth performance, intuitive navigation, and a clean UI across Android and iOS devices.

License

Notifications You must be signed in to change notification settings

Jostar-Foundation/BookStore

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 

Repository files navigation

BookStoreApp - A book sharing social media app.

BookstoreApp is a modern mobile application developed using React Native and Expo, designed to offer users a seamless experience in discovering, managing, and interacting with a collection of books. Built with JavaScript on the frontend, it leverages Zustand for efficient and lightweight state management. The backend is powered by Express.js, with MongoDB serving as the database for storing and retrieving book data. The books are stored in a pdf links and is shared throughout the app where multiple users can access the resources of the books.

Node.js Logo JavaScript Logo MongoDB Logo Zustand Logo (assumed) Express.js Logo

✨ Features

  • 📖 Browse an extensive list of books with detailed information
  • 🔎 Search and filter books by title, author, or genre
  • ⭐ Mark favorite books for easy access
  • 📝 Add personal notes for any book
  • 🗂️ Global state handling using Zustand
  • 🌐 Backend API integration for dynamic data
  • 📱 Cross-platform (Android + iOS) via Expo
  • ⚡ Smooth performance and clean UI

🔗 API Endpoints

Method Endpoint Description
GET /books Get all books
GET /books/:id Get a specific book
POST /books Add a new book
PUT /books/:id Update a book
DELETE /books/:id Delete a book

🛠️ Tech Stack

Frontend Backend
React Native Express.js
Expo Node.js
JavaScript MongoDB
Zustand Mongoose
React Navigation

Important

Error:

  • PDFs sometimes fail to load inside the mobile viewer with a Network / CORS error.

Cause:

  • Some book links were served over HTTP instead of HTTPS,
  • or the server did not include proper CORS headers (Access-Control-Allow-Origin).

Solution:

  • Enforced HTTPS links for all book resources.
  • Updated the Express server to include:
    • Access-Control-Allow-Origin: *
    • Access-Control-Allow-Methods: GET
  • Added validation to reject insecure PDF URLs in the database.

Project Overview


⚠️ This Repository is uniquely designed by @JoshuaThadi.

About

BookstoreApp is a modern mobile application built with React Native and Expo, offering users a seamless experience in discovering, browsing, and managing books. Powered by a lightweight and efficient architecture, the app delivers smooth performance, intuitive navigation, and a clean UI across Android and iOS devices.

Resources

License

Stars

Watchers

Forks

Packages

No packages published