pdflinux 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +67 -67
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,14 +1,14 @@
1
1
  # PDFLinux
2
2
 
3
- > **100% Gratis. Tanpa langganan. Tanpa akun. File kamu tidak pernah meninggalkan komputermu.**
3
+ > **100% Free. No subscription. No account. Your files never leave your computer.**
4
4
 
5
- Aplikasi desktop untuk semua kebutuhan PDF sehari-hari. Dibangun dengan Tauri + Rust di backend dan React + TypeScript di frontend — berjalan 100% di mesin lokal, tanpa koneksi internet, tanpa upload ke mana pun.
5
+ A fast, privacy-first desktop application for all your everyday PDF tasks. Built with Tauri + Rust on the backend and React + TypeScript on the frontend — runs entirely on your local machine, no internet connection required, no files uploaded anywhere.
6
6
 
7
7
  ---
8
8
 
9
9
  ## Install
10
10
 
11
- ### Cara 1 — Git Clone (direkomendasikan)
11
+ ### Option 1 — Git Clone (recommended)
12
12
 
13
13
  ```bash
14
14
  git clone https://github.com/saaandbite/pdflinux.git
@@ -16,87 +16,87 @@ cd pdflinux
16
16
  ./install.sh
17
17
  ```
18
18
 
19
- Script `install.sh` akan otomatis:
20
- - Mendeteksi distro kamu (Debian/Ubuntu, Fedora/RHEL/CentOS, Arch, dll.)
21
- - Menginstal semua dependensi yang dibutuhkan
22
- - Membangun aplikasi
23
- - Menginstal paket `.deb` / `.rpm` / `AppImage` sesuai distro
24
- - Menambahkan shortcut di menu aplikasi dan command `pdflinux` di terminal
19
+ The `install.sh` script will automatically:
20
+ - Detect your distro (Debian/Ubuntu, Fedora/RHEL/CentOS, Arch, etc.)
21
+ - Install all required dependencies
22
+ - Build the application
23
+ - Install the appropriate package (`.deb` / `.rpm` / `AppImage`) for your distro
24
+ - Add a shortcut to your app menu and a `pdflinux` command in the terminal
25
25
 
26
- Untuk uninstall:
26
+ To uninstall:
27
27
  ```bash
28
28
  ./uninstall.sh
29
29
  ```
30
30
 
31
- ### Cara 2 — npx (via npm)
31
+ ### Option 2 — npx (via npm)
32
32
 
33
- Jika kamu sudah punya Node.js terinstal:
33
+ If you already have Node.js installed:
34
34
 
35
35
  ```bash
36
36
  npx pdflinux
37
37
  ```
38
38
 
39
- Untuk uninstall:
39
+ To uninstall:
40
40
  ```bash
41
41
  npx pdflinux uninstall
42
42
  ```
43
43
 
44
44
  ---
45
45
 
46
- ## Kenapa PDFLinux?
46
+ ## Why PDFLinux?
47
47
 
48
- Sebagian besar alat PDF online mengharuskan kamu mengupload file ke server mereka. Untuk dokumen sensitifkontrak, catatan medis, KTPitu risiko nyata. PDFLinux memproses semuanya **di mesin kamu**, tanpa koneksi internet, tanpa upload ke mana pun.
48
+ Most online PDF tools require you to upload your files to their servers. For sensitive documentscontracts, medical records, IDsthat's a real risk. PDFLinux processes everything **on your machine**, with no internet connection and no uploads anywhere.
49
49
 
50
- - **Gratis selamanya** — tidak ada freemium, tidak ada trial, tidak ada langganan
50
+ - **Free forever** — no freemium, no trial, no subscription
51
51
  - **Privacy-first** — zero network requests, zero telemetry
52
- - **Ringan** — ditenagai Tauri (native webview OS, bukan Chromium bundled seperti Electron)
53
- - **Linux-first** — target utama Linux; Windows dan macOS didukung via Tauri
52
+ - **Lightweight** — powered by Tauri (uses the OS native webview, not a bundled Chromium like Electron)
53
+ - **Linux-first** — primary target is Linux; Windows and macOS are also supported via Tauri
54
54
 
55
55
  ---
56
56
 
57
- ## Fitur
57
+ ## Features
58
58
 
59
- | Alat | Deskripsi |
59
+ | Tool | Description |
60
60
  |---|---|
61
- | **Compress** | Perkecil ukuran file PDF dengan Ghostscript |
62
- | **Merge** | Gabungkan beberapa PDF menjadi satu |
63
- | **Split** | Ekstrak halaman tertentu (misal `1-5, 8, 11-15`) |
64
- | **PDF to Image** | Ekspor setiap halaman ke PNG atau JPG via Poppler |
65
- | **Image to PDF** | Bundel satu atau lebih gambar menjadi PDF |
66
- | **Protect** | Enkripsi PDF dengan kata sandi (QPDF) |
67
- | **Unlock** | Hapus proteksi kata sandi dari PDF |
68
- | **Rotate** | Putar halaman 90°, 180°, atau 270° |
69
- | **Watermark** | Tambahkan watermark teks atau gambar pada halaman |
70
- | **Crop** | Pangkas margin halaman ke crop box kustom |
71
- | **Delete Pages** | Hapus halaman tertentu dari dokumen |
72
- | **Reorder Pages** | Drag and drop halaman ke urutan baru |
73
- | **Add Page Numbers** | Tambahkan nomor halaman ke setiap halaman |
74
- | **PDF to Text** | Ekstrak konten teks dari PDF |
75
- | **Grayscale** | Konversi PDF berwarna ke hitam putih |
76
- | **OCR** | Jalankan optical character recognition pada halaman scan |
77
- | **PDF Info** | Lihat metadata: jumlah halaman, dimensi, judul, penulis |
61
+ | **Compress** | Reduce PDF file size using Ghostscript with quality presets |
62
+ | **Merge** | Combine multiple PDFs into one, with drag-to-reorder support |
63
+ | **Split** | Extract a range of pages (e.g. `1-5, 8, 11-15`) into separate files |
64
+ | **PDF to Image** | Export every page to PNG or JPG via Poppler |
65
+ | **Image to PDF** | Bundle one or more images into a single PDF |
66
+ | **Protect** | Encrypt a PDF with a password (QPDF) |
67
+ | **Unlock** | Remove password protection from a PDF |
68
+ | **Rotate** | Rotate pages by 90°, 180°, or 270° |
69
+ | **Watermark** | Stamp text or image watermarks on pages |
70
+ | **Crop** | Trim page margins to a custom crop box |
71
+ | **Delete Pages** | Remove specific pages from a document |
72
+ | **Reorder Pages** | Drag and drop pages into a new order |
73
+ | **Add Page Numbers** | Stamp page numbers onto every page |
74
+ | **PDF to Text** | Extract plain text content from a PDF |
75
+ | **Grayscale** | Convert a color PDF to black and white |
76
+ | **OCR** | Run optical character recognition on scanned pages |
77
+ | **PDF Info** | Inspect metadata: page count, dimensions, title, author |
78
78
 
79
79
  ---
80
80
 
81
81
  ## Tech Stack
82
82
 
83
- | Layer | Teknologi |
83
+ | Layer | Technology |
84
84
  |---|---|
85
85
  | Desktop shell | [Tauri 2](https://tauri.app/) |
86
86
  | Backend / PDF engine | Rust + Ghostscript + Poppler + QPDF |
87
87
  | Frontend | React 19, TypeScript, Vite |
88
88
  | Routing | React Router 7 |
89
- | Styling | Vanilla CSS dengan dark/light mode |
89
+ | Styling | Vanilla CSS with dark/light mode |
90
90
 
91
- ### Kenapa Tauri bukan Electron?
91
+ ### Why Tauri instead of Electron?
92
92
 
93
- Tauri menggunakan native webview OS (WebKitGTK di Linux) alih-alih membundel Chromium penuh. Hasilnya binary yang **10–20× lebih kecil** dan menggunakan sebagian kecil RAM dibanding aplikasi Electron setara.
93
+ Tauri uses the operating system's native webview (WebKitGTK on Linux) instead of bundling a full Chromium engine. The result is a binary that is **10–20× smaller** and uses a fraction of the RAM compared to equivalent Electron apps.
94
94
 
95
95
  ---
96
96
 
97
97
  ## Development
98
98
 
99
- Jika ingin menjalankan dari source untuk development:
99
+ To run from source:
100
100
 
101
101
  ```bash
102
102
  git clone https://github.com/saaandbite/pdflinux.git
@@ -105,61 +105,61 @@ npm install
105
105
  npm run tauri dev
106
106
  ```
107
107
 
108
- Build production:
108
+ To build a production binary:
109
109
 
110
110
  ```bash
111
111
  npm run tauri build
112
112
  ```
113
113
 
114
- Output installer ada di `src-tauri/target/release/bundle/`:
114
+ Output installers are placed in `src-tauri/target/release/bundle/`:
115
115
 
116
116
  | Format | Distro |
117
117
  |---|---|
118
- | `.deb` | Debian / Ubuntu dan turunannya |
119
- | `.rpm` | Fedora / RHEL / CentOS dan turunannya |
120
- | `.AppImage` | Semua distro Linux (portable) |
118
+ | `.deb` | Debian / Ubuntu and derivatives |
119
+ | `.rpm` | Fedora / RHEL / CentOS and derivatives |
120
+ | `.AppImage` | Any Linux distro (portable) |
121
121
 
122
122
  ---
123
123
 
124
- ## Struktur Proyek
124
+ ## Project Structure
125
125
 
126
126
  ```
127
127
  pdflinux/
128
128
  ├── src/ # React frontend (TypeScript)
129
- │ ├── components/ # Komponen UI (Sidebar, Dropzone, dll.)
130
- │ ├── pages/ # Satu file per alat PDF
131
- │ ├── App.tsx # Definisi route
132
- │ └── main.tsx # Entry point React
129
+ │ ├── components/ # Shared UI components (Sidebar, Dropzone, etc.)
130
+ │ ├── pages/ # One file per PDF tool
131
+ │ ├── App.tsx # Route definitions
132
+ │ └── main.tsx # React entry point
133
133
 
134
134
  └── src-tauri/ # Rust backend (Tauri)
135
135
  ├── src/
136
- │ ├── main.rs # Entry point Tauri
137
- │ └── pdf_engine.rs # Logic pemrosesan PDF (memanggil gs, qpdf, poppler)
138
- ├── tauri.conf.json # Konfigurasi window dan build
139
- └── Cargo.toml # Dependensi Rust
136
+ │ ├── main.rs # Tauri entry point
137
+ │ └── pdf_engine.rs # PDF processing logic (calls gs, qpdf, poppler)
138
+ ├── tauri.conf.json # App window and build configuration
139
+ └── Cargo.toml # Rust dependencies
140
140
  ```
141
141
 
142
142
  ---
143
143
 
144
- ## Kontribusi
144
+ ## Contributing
145
145
 
146
- Kontribusi sangat disambut. Jika menemukan bug atau ingin menambahkan fitur:
146
+ Contributions are welcome. If you find a bug or want to add a feature:
147
147
 
148
- 1. Fork repository ini
149
- 2. Buat branch: `git checkout -b feature/nama-fitur-kamu`
150
- 3. Commit perubahan: `git commit -m "feat: deskripsi perubahan"`
151
- 4. Push dan buka Pull Request
148
+ 1. Fork the repository
149
+ 2. Create a branch: `git checkout -b feature/your-feature-name`
150
+ 3. Commit your changes: `git commit -m "feat: describe your change"`
151
+ 4. Push and open a Pull Request
152
152
 
153
- Buka issue terlebih dahulu untuk perubahan besar agar bisa diskusi dulu.
153
+ Please open an issue first for larger changes so we can discuss the approach.
154
154
 
155
155
  ---
156
156
 
157
- ## Lisensi
157
+ ## License
158
158
 
159
- Proyek ini open source. Lihat [LICENSE](./LICENSE) untuk detail.
159
+ This project is open source. See [LICENSE](./LICENSE) for details.
160
160
 
161
161
  ---
162
162
 
163
- ## Privasi
163
+ ## Privacy
164
164
 
165
- PDFLinux tidak mengumpulkan data apa pun. Tidak ada network request. Semua pemrosesan terjadi secara lokal menggunakan CLI tool yang terinstal di sistemmu (Ghostscript, Poppler, QPDF, Tesseract). Dokumenmu tidak pernah diupload, dicatat, atau dibagikan ke mana pun.
165
+ PDFLinux does not collect any data. It makes no network requests. All processing happens locally using the CLI tools installed on your system (Ghostscript, Poppler, QPDF, Tesseract). Your documents are never uploaded, logged, or shared anywhere.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pdflinux",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "Privacy-first PDF tools untuk Linux — berjalan 100% offline",
5
5
  "keywords": ["pdf", "linux", "tools", "privacy", "tauri", "desktop"],
6
6
  "author": "saaandbite",