8000 GitHub - AilsonFreire/bookshelf
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

AilsonFreire/bookshelf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bookshelf

Bookshelf is a web application for browsing, searching, and managing your favorite books. It allows users to explore books, view detailed information, and save their favorite books for easy access.


Project

Features

  • Search Books: Search for books by title, author etc.
  • View Details: View detailed information about a book, including its description, authors, and related subjects.
  • Favorite Books: Save books to your favorites for quick access.
  • Responsive Design: Responsive UI for desktop and mobile.
  • Accessibility: High accessibility.
  • Pagination: Navigate books and favorites with pagination.
  • Caching: Caching enabled via with Next.js.

Trade-offs

  • Tests: Missing tests.
  • Types: Frontend types are not generated from Backend.
  • Tailwind styling: Some Unused/global styling not fully cleaned up.

Tech Stack

  • Frontend: React/Next, TypeScript, Tailwind CSS
  • Backend: Node.js, Express, Prisma ORM, PostgreSQL
  • Component library: Shadcn and Radix primitives as base, modified to fit my design.
  • Icons: Lucide
  • State Management: Context API

Setup Instructions

Prerequisites


Backend

  1. Navigate to the api folder:

    cd api
  2. Install dependencies:

    yarn install
  3. Create a .env file in the /api folder, copy from .env.example

    cp .env.example .env
  4. Start PostgreSQL container, run Prisma migrations to setup database schema, and start dev server.

    yarn setup:dev
  5. Open Prisma Studio to inspect the database (optional):

    yarn prisma:studio
  6. The backend will be running at http://localhost:3333.


Frontend

  1. Navigate to the web folder:

    cd web
  2. Install dependencies:

    yarn install
  3. Create a .env file in the /web folder, copy from .env.example

    cp .env.example .env
  4. Build and start server

    yarn build
    yarn start # You can also use the dev server
  5. Open your browser and navigate to http://localhost:3000.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0