This project is a comprehensive online book shop application developed as a mini capstone project for FPT University's SWP391 course. The system features both customer-facing interfaces and administrative capabilities for managing an online book store.
- Website: React.js application for customers
- Admin Panel: React.js with CKEditor 5 integration for rich text editing
- Framework: Spring Boot 3.0.1
- Build Tool: Maven
- Java Version: 17 (implied by Spring Boot version)
- Database: Not specified in provided files (likely SQL-based)
SE1740_SWP391_GROUP_1/
├── Backend/ # Spring Boot application
│ ├── src/ # Source code
│ ├── mvnw # Maven wrapper script for Unix
│ ├── mvnw.cmd # Maven wrapper script for Windows
│ └── pom.xml # Maven dependencies and build configuration
│
└── Frontend/
├── website/ # Customer-facing React application
│ └── README.md # Create React App documentation
│
└── re-admin/ # Admin panel application
├── ckeditor5/ # Rich text editor integration
│ ├── src/ # Editor source code
│ ├── webpack.config.js # Webpack configuration
│ └── README.md # CKEditor documentation
└── README.md # Admin panel documentation
- Node.js and npm (for Frontend)
- Java Development Kit (JDK) 17 or higher
- Maven (optional, as wrapper scripts are included)
-
Navigate to the Backend directory:
cd Backend
-
Run the application using Maven wrapper:
- On Windows:
mvnw.cmd spring-boot:run
- On Unix/Linux/macOS:
./mvnw spring-boot:run
- On Windows:
-
Navigate to the Frontend/website directory:
cd Frontend/website
-
Install dependencies:
npm install
-
Start the development server:
npm start
-
The application will be available at http://localhost:3000
-
Navigate to the Frontend/re-admin directory:
cd Frontend/re-admin
-
Install dependencies:
npm install
-
If you need to modify the CKEditor:
cd ckeditor5 npm install npm run build
-
Start the admin application (from the re-admin directory):
npm start
- Browse and search books
- User registration and authentication
- Shopping cart functionality
- Checkout process
- Order history
- Dashboard with analytics
- Book inventory management
- Order management
- User management
- Content management with rich text editing (CKEditor)
cd Backend
./mvnw clean package
cd Frontend/website
npm run build
cd Frontend/re-admin
npm run build
- Bùi Tuấn Sơn
- Nguyễn Tất Tú
- Lê Gia Nguyên
- Nguyễn Xuân HàoHào
- University: FPT University
- Course: SWP391 (Mini Capstone)
- Class: SE1740
- Group: Group 1
This project is developed for educational purposes. The components used may have their own licenses:
- CKEditor 5 - Licensed under MIT for online builder code samples
- Other third-party libraries as specified in their respective documentation
- FPT University faculty and mentors
- Open source libraries and frameworks used in this project