LibreReads is a Next.js-based web application that provides a platform for accessing and downloading free books and articles. The application features a modern, responsive interface built with TypeScript, Tailwind CSS, and Next.js 14.
- 📚 Browse through a collection of free books
- 🔍 View detailed book information including title, author, and description
- 📥 Download books directly through the platform
- 🎨 Responsive design that works on desktop and mobile devices
- 🖼️ Image optimization using Next.js Image component
- 🎯 Server-side rendering for better performance and SEO
- Framework: Next.js 14.2.3
- Language: TypeScript
- Styling: Tailwind CSS
- Deployment: Vercel (recommended)
- Node.js 18.17.0 or later
- npm, yarn, or pnpm
- Clone the repository:
git clone [your-repo-url]
cd elib-client-app
- Install dependencies:
npm install
# or
yarn install
# or
pnpm install
- Create a
.env
file in the root directory and add your environment variables:
BACKEND_URL=your_backend_url
- Run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev
- Open http://localhost:3000 with your browser to see the result.
src/
├── app/
│ ├── (home)/
│ │ ├── Components/
│ │ └── page.tsx
│ ├── book/
│ │ └── [bookId]/
│ └── layout.tsx
├── components/
│ ├── Footer.tsx
│ └── Navbar.tsx
└── types/
└── index.ts
npm run dev
- Starts the development servernpm run build
- Creates an optimized production buildnpm run start
- Starts the production servernpm run lint
- Runs ESLint for code quality
The following environment variables are required:
BACKEND_URL
: The URL of your backend API server
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
© 2024 LibreReads All rights reserved.
The easiest way to deploy your LibreReads app is to use the Vercel Platform from the creators of Next.js.
Check out the Next.js deployment documentation for more details.