mabc224 / book-library-react-nextjs-graphql

Book Library web application using Next.js 13 and GraphQL

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Welcome to good-read-clone πŸ‘‹

Version Documentation Maintenance License: MIT

Book Library web application using Next.js 13 and GraphQL

🏠 Homepage

Prerequisites

  • node >=16.17.x
  • npm >=8.15.x

Install

npm install

Usage

Specifies your postgres database connection (via an environment variable) by putting it in .env file

Then, run the prisma to create tables with seed data

npm run prisma:migrate:deploy

Seed Database

npx prisma db seed

Then, run the development server:

npm run dev

Open http://localhost:8888 with your browser to see the result.

Default credentials: 
    username: user0
    password: password

About Application

The application have the following features:

  • User authentication and authorization using JSON Web Tokens (JWT).
  • A file upload feature for uploading and storing book cover images.
  • Webapp is multilingual, you can choose any language on top of English for demo purposes.
  • The application support server side rendering (SSR).
  • The application have a clean and responsive design. Tailwind is in use
  • Unit tests for the main functionality of the application using a testing framework such as Jest.
  • The application use Apollo Client to handle all GraphQL operations and Apollo Server for creating GraphQL API.
  • Use a data storage solution such as PostgreSQL to persist the data.
  • A notification feature for sending real-time notifications to users.
  • Use a real-time technology such as WebSockets or GraphQL subscriptions for the notification feature.

Author

πŸ‘€ Arsalan Bilal

🀝 Contributing

Contributions, issues and feature requests are welcome!
Feel free to check issues page.

Show your support

Give a ⭐️ if this project helped you!

πŸ“ License

Copyright Β© 2023 Arsalan Bilal.
This project is MIT licensed.

About

Book Library web application using Next.js 13 and GraphQL


Languages

Language:JavaScript 99.9%Language:CSS 0.1%