Baca Novel is a web application for reading, writing, and managing novels. Built on Laravel 12, it supports three user roles (readers, authors, admins) and integrates with the Xendit payment gateway for premium subscriptions.
- Profile management and options to apply as an author.
- Novel browsing by genre, popularity, and search.
- Responsive reading interface for novel chapters.
- Personal library to bookmark and track novels.
- Novel voting, content reports, and chapter comments.
- Paid subscription options processed through Xendit.
- Dashboard showing novel list and statistics.
- Create and edit novels with covers and genre tags.
- Create, edit, and publish chapters.
- Review and approve/reject author applications.
- Manage novel visibility and publishing status.
- Add, update, and delete any novel or chapter on the platform.
- Framework: Laravel 12.x
- Authentication: Laravel Breeze
- Styling: Tailwind CSS & PostCSS
- Asset Bundling: Vite
- Payments: Xendit PHP SDK
- PHP 8.2 or higher
- Composer
- Node.js (v18 or higher) and NPM
-
Clone the repository.
-
Create the environment configuration file:
cp .env.example .env
-
Install PHP dependencies:
composer install
-
Install frontend assets:
npm install
-
Generate the application key:
php artisan key:generate
-
Run database migrations and seed data:
php artisan migrate --seed
-
Create the storage symbolic link:
php artisan storage:link
-
Configure Xendit keys in your
.envfile:XENDIT_SECRET_KEY=your_xendit_secret_key XENDIT_WEBHOOK_TOKEN=your_xendit_webhook_token
To start the local servers concurrently:
composer devAlternatively, run them individually:
-
PHP development server:
php artisan serve
-
Vite development server:
npm run dev
-
Queue listener for background tasks:
php artisan queue:listen --tries=1
This software is open-sourced under the MIT license.