ComicViewer
I. Project Description
- Automatically read comic directories, support jpg/png/webp/gif/mp4/html files
- Front-end responsive, compatible with all device
- Thumbnails, quick page switching, folder display
II. Project Structure
- backend/ Node.js+Viewers API
- frontend/ React+Vite+Tailwind Frontend
- README.md
III. Deployment
1. Backend
- Install Node.js、PM2
- Upload backend folder, execute following codes via ssh:
npm install - Modify
comicsRootin server.js - Set up at least one username and password in users.txt
- Start PM2 service:
pm2 start server.js --name comic-backend,pm2 save,pm2 startup
2. Frontend
- Redirect to the frontend/ folder and execute:
npm install,npm run build - Copy contents inside dist/ to the root folder of your website
- Set up Reverse Proxy:
Nginx Example:
location /api/ {
proxy_pass http://127.0.0.1:3001;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location / {
root /www/wwwroot/你的站点目录;
try_files $uri $uri/ /index.html;
}
3. Miscellaneous
- Default port is 3001, It is recommended to open only locally and use a reverse proxy for the external network
- Suggested to put each comic in a separate folder
Languages
JavaScript
99.3%
CSS
0.7%