Skip to content

Commit 54fe0c6

Browse files
committed
Create go.yml
README.md
1 parent 1a97449 commit 54fe0c6

File tree

3 files changed

+172
-79
lines changed

3 files changed

+172
-79
lines changed

.github/workflows/go.yml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
# This workflow will build a golang project
2+
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-go
3+
4+
name: Go
5+
6+
on:
7+
push:
8+
branches: [ "main" ]
9+
pull_request:
10+
branches: [ "main" ]
11+
12+
jobs:
13+
14+
build:
15+
runs-on: ubuntu-latest
16+
steps:
17+
- uses: actions/checkout@v4
18+
19+
- name: Set up Go
20+
uses: actions/setup-go@v4
21+
with:
22+
go-version: '1.20'
23+
24+
- name: Build
25+
run: go build -v ./...
26+
27+
- name: Test
28+
run: go test -v ./...

.gitignore

Lines changed: 1 addition & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -1,80 +1,2 @@
1-
### JetBrains template
2-
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
3-
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
4-
5-
# User-specific stuff
6-
.idea/**/workspace.xml
7-
.idea/**/tasks.xml
8-
.idea/**/usage.statistics.xml
9-
.idea/**/dictionaries
10-
.idea/**/shelf
11-
12-
# AWS User-specific
13-
.idea/**/aws.xml
14-
15-
# Generated files
16-
.idea/**/contentModel.xml
17-
18-
# Sensitive or high-churn files
19-
.idea/**/dataSources/
20-
.idea/**/dataSources.ids
21-
.idea/**/dataSources.local.xml
22-
.idea/**/sqlDataSources.xml
23-
.idea/**/dynamic.xml
24-
.idea/**/uiDesigner.xml
25-
.idea/**/dbnavigator.xml
26-
27-
# Gradle
28-
.idea/**/gradle.xml
29-
.idea/**/libraries
30-
31-
# Gradle and Maven with auto-import
32-
# When using Gradle or Maven with auto-import, you should exclude module files,
33-
# since they will be recreated, and may cause churn. Uncomment if using
34-
# auto-import.
35-
# .idea/artifacts
36-
# .idea/compiler.xml
37-
# .idea/jarRepositories.xml
38-
# .idea/modules.xml
39-
# .idea/*.iml
40-
# .idea/modules
41-
# *.iml
42-
# *.ipr
43-
44-
# CMake
45-
cmake-build-*/
46-
47-
# Mongo Explorer plugin
48-
.idea/**/mongoSettings.xml
49-
50-
# File-based project format
51-
*.iws
52-
53-
# IntelliJ
54-
out/
55-
56-
# mpeltonen/sbt-idea plugin
57-
.idea_modules/
58-
59-
# JIRA plugin
60-
atlassian-ide-plugin.xml
61-
62-
# Cursive Clojure plugin
63-
.idea/replstate.xml
64-
65-
# SonarLint plugin
66-
.idea/sonarlint/
67-
68-
# Crashlytics plugin (for Android Studio and IntelliJ)
69-
com_crashlytics_export_strings.xml
70-
crashlytics.properties
71-
crashlytics-build.properties
72-
fabric.properties
73-
74-
# Editor-based Rest Client
75-
.idea/httpRequests
76-
77-
# Android studio 3.1+ serialized cache file
78-
.idea/caches/build_file_checksums.ser
79-
1+
.idea/*
802
cbz2epub.iml

README.md

Lines changed: 143 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,143 @@
1+
# CBZ2EPUB
2+
3+
CBZ2EPUB is a command-line tool for working with comic book archives. It allows you to merge multiple CBZ (Comic Book ZIP) files into a single file and convert CBZ files to EPUB format for e-readers.
4+
5+
## Features
6+
7+
- Merge multiple CBZ files into one, with proper renaming to avoid conflicts
8+
- Convert CBZ files to EPUB format
9+
- Process files in bulk with recursive directory scanning
10+
- Simple command-line interface
11+
12+
## Installation
13+
14+
### Pre-built Binaries
15+
16+
Pre-built binaries for various platforms are available on the [Releases](https://github.com/DimazzzZ/cbz2epub/releases) page.
17+
18+
### Building from Source
19+
20+
#### Prerequisites
21+
22+
- Go 1.18 or later
23+
24+
#### Build Instructions
25+
26+
##### Linux/macOS
27+
28+
1. Clone the repository:
29+
```bash
30+
git clone https://github.com/DimazzzZ/cbz2epub.git
31+
cd cbz2epub
32+
```
33+
34+
2. Build the application:
35+
```bash
36+
go build -o cbz2epub
37+
```
38+
39+
3. (Optional) Install the application to your PATH:
40+
```bash
41+
sudo mv cbz2epub /usr/local/bin/
42+
```
43+
44+
##### Windows
45+
46+
1. Clone the repository:
47+
```cmd
48+
git clone https://github.com/DimazzzZ/cbz2epub.git
49+
cd cbz2epub
50+
```
51+
52+
2. Build the application:
53+
```cmd
54+
go build -o cbz2epub.exe
55+
```
56+
57+
3. (Optional) Add the directory to your PATH or move the executable to a directory in your PATH.
58+
59+
## Usage
60+
61+
### Basic Commands
62+
63+
```
64+
CBZ2EPUB - A tool for merging CBZ files and converting them to EPUB
65+
66+
Usage:
67+
cbz2epub -merge [-output filename.cbz] file1.cbz file2.cbz ...
68+
cbz2epub -convert [-output filename.epub] file.cbz
69+
cbz2epub -convert -recursive [directory]
70+
71+
Options:
72+
-convert
73+
Convert CBZ to EPUB
74+
-merge
75+
Merge multiple CBZ files into one
76+
-output string
77+
Output file name
78+
-recursive
79+
Process directories recursively
80+
-verbose
81+
Enable verbose output
82+
```
83+
84+
### Examples
85+
86+
#### Merging CBZ Files
87+
88+
Merge multiple CBZ files into a single file:
89+
90+
```bash
91+
cbz2epub -merge -output merged.cbz chapter1.cbz chapter2.cbz chapter3.cbz
92+
```
93+
94+
If no output file is specified, the default name "merged.cbz" will be used:
95+
96+
```bash
97+
cbz2epub -merge chapter1.cbz chapter2.cbz chapter3.cbz
98+
```
99+
100+
#### Converting CBZ to EPUB
101+
102+
Convert a single CBZ file to EPUB:
103+
104+
```bash
105+
cbz2epub -convert -output mycomic.epub comic.cbz
106+
```
107+
108+
If no output file is specified, the output filename will be derived from the input filename:
109+
110+
```bash
111+
cbz2epub -convert comic.cbz
112+
# Creates comic.epub
113+
```
114+
115+
#### Bulk Conversion
116+
117+
Convert all CBZ files in the current directory:
118+
119+
```bash
120+
cbz2epub -convert -recursive .
121+
```
122+
123+
Convert all CBZ files in a specific directory and its subdirectories:
124+
125+
```bash
126+
cbz2epub -convert -recursive /path/to/comics
127+
```
128+
129+
#### Verbose Output
130+
131+
Add the `-verbose` flag to get more detailed output:
132+
133+
```bash
134+
cbz2epub -convert -verbose -recursive /path/to/comics
135+
```
136+
137+
## License
138+
139+
This project is licensed under the MIT License.
140+
141+
## Contributing
142+
143+
Contributions are welcome! Please feel free to submit a Pull Request.

0 commit comments

Comments
 (0)