Giter Site home page Giter Site logo

next-books-app's Introduction

BooksGod

BooksGod is a Next.js application designed for managing and exploring books. It incorporates the latest features and best practices of Next.js 14, providing a comprehensive platform for both readers and authors.

Overview

Users can log in, search for books, read, and register as authors to write their own books. Authors can utilize the provided editor to write, save drafts, and publish. It supports book cover uploads, details, and allows paid book purchases for users.

Features

  • React server components
  • TRPC
  • Reader for reading books
  • Editor for writing books
  • User friendly dashboard
  • Docs for authors using contentlayer
  • Image upload with AWS S3
  • Filter options for books
  • Search with infinite pagination
  • Community for users and authors
  • Optimistic updates
  • Redis caching
  • Authentication using Clerk
  • Validations using zod
  • Drizzle ORM
  • Database - PlanetScale
  • Rate Limiting
  • Book Purchasing with Stripe
  • Loading States using Suspense
  • UI component library - NextUi
  • Styled using Tailwind CSS
  • Deployed on Vercel Edge

To-Do List:

  • Documentation for Authors
  • More Author Features
  • Auto-Save Editor Functionality
  • Reading Preferences

Installation

  1. Install dependencies:

    pnpm install
  2. Copy .env.example to .env.local and update the variables:

    cp .env.example .env.local
  3. Start the development server:

    pnpm dev

next-books-app's People

Contributors

nilotpaul avatar dependabot[bot] avatar

Stargazers

Houssem Mehouachi avatar Mark avatar

Watchers

 avatar

Forkers

mvandermeulen

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.