Back to Projects

Awesomeshot

Command-line screenshot tool yang ditulis dalam bash 5.1.16+

Awesomeshot - Image 1
0 views
2 min read

Project Overview

Awesomeshot adalah sebuah command-line screenshot tool open-source yang ditulis menggunakan Bash (5.1.16+). Project ini memanfaatkan ImageMagick untuk melakukan pemrosesan dan modifikasi gambar secara otomatis melalui CLI.

Tujuan utama Awesomeshot adalah menghadirkan hasil screenshot yang lebih rapi, estetik, dan konsisten, terinspirasi dari gaya visual macOS, khususnya title bar dengan tiga tombol (traffic lights), serta tool modern seperti Carbon.


Latar Belakang & Motivasi

Awesomeshot merupakan project open-source kedua saya, setelah myTermux. Project ini lahir dari kombinasi antara:

  • Ketertarikan saya pada tooling berbasis CLI
  • Kecintaan saya terhadap estetika desain macOS
  • Kebutuhan pribadi untuk menghasilkan screenshot yang lebih menarik untuk dokumentasi dan sharing

Pada saat itu, saya juga baru mengenal tool seperti Carbon, yang mengubah potongan kode menjadi visual yang menarik. Dari sana muncul ide:

Bagaimana jika screenshot terminal atau aplikasi bisa dibuat lebih rapi dan estetik langsung dari CLI?


Inspirasi Awal

Awesomeshot awalnya merupakan hasil improvement dari sebuah artikel yang ditulis oleh salah satu anggota komunitas Dotfiles Indonesia, yaitu Bandithijo:

bandithijo.github.io/blog/memodifikasi-screenshot-dari-flameshot-dengan-imagemagick

Artikel tersebut membahas bagaimana memodifikasi hasil screenshot dari Flameshot menggunakan ImageMagick. Dari sana, saya melihat potensi untuk:

  • Mengemas proses tersebut menjadi CLI tool
  • Membuat workflow yang lebih reusable
  • Mengembangkan fitur-fitur visual tambahan

Evolusi Project & Kontribusi Komunitas

Seiring berjalannya waktu, Awesomeshot mulai mendapatkan perhatian dari pengguna lain, dan kontribusi komunitas pun mulai berdatangan.

Beberapa perkembangan penting dalam project ini antara lain:

  • Penambahan fitur title bar macOS-style
    • Pada versi awal, fitur ini belum tersedia
    • Fitur tersebut hadir melalui kontribusi komunitas
  • Refactor dan peningkatan script agar lebih modular
  • Penyesuaian agar dapat berjalan di berbagai environment

Project ini kemudian berkembang dari sekadar script pribadi menjadi tool open-source yang digunakan lintas platform.


Dukungan Platform & Environment

Untuk memperluas penggunaan, saya juga melakukan beberapa penyesuaian dan eksperimen environment, di antaranya:

  • Membuat branch khusus untuk Termux (Android)
  • Dukungan penggunaan di:
    • Proot-distro (Linux environment di Android)
    • Ubuntu
    • Arch Linux

Dengan pendekatan ini, Awesomeshot dapat digunakan baik di mobile environment maupun desktop Linux.


Fitur Utama

Beberapa fitur utama yang ditawarkan oleh Awesomeshot meliputi:

  • Tool screenshot berbasis CLI
  • Pemrosesan gambar menggunakan ImageMagick
  • Tampilan screenshot dengan macOS-style title bar
  • Workflow ringan tanpa GUI
  • Dapat dijalankan di berbagai environment Linux dan Android (Termux)
  • Mudah dikembangkan dan dimodifikasi karena berbasis Bash

What I Learned

Melalui project Awesomeshot, saya mendapatkan banyak pembelajaran penting, di antaranya:

  • Menulis CLI tool yang reusable menggunakan Bash
  • Memanfaatkan ImageMagick untuk manipulasi gambar
  • Mengelola open-source project dengan kontribusi komunitas
  • Pentingnya dokumentasi dalam project CLI
  • Mengembangkan project dari script sederhana menjadi tool yang lebih matang

Mengapa Project Ini Penting

Walaupun Awesomeshot terlihat sederhana, project ini memiliki arti penting bagi perjalanan saya sebagai developer.

Project ini penting karena:

  • Merupakan project open-source kedua saya
  • Menjadi langkah lanjutan setelah myTermux dalam eksplorasi tooling
  • Mengajarkan bagaimana menerima dan mengelola kontribusi dari komunitas
  • Memperkuat ketertarikan saya pada CLI tools, Linux, dan developer experience

Kesimpulan

Awesomeshot adalah project open-source yang lahir dari eksplorasi personal, inspirasi komunitas, dan ketertarikan terhadap estetika desain serta tooling berbasis CLI.

Project ini merepresentasikan fase perkembangan saya setelah myTermux, di mana saya mulai membangun tool yang lebih fokus pada fungsi, visual, dan usability, sekaligus belajar berkolaborasi dalam ekosistem open-source.

Untuk informasi lebih detail, fitur terbaru, dan dokumentasi lengkap, silakan langsung melihat repository Awesomeshot di GitHub.

More or Related Projects

Beasiswa
June 14, 2023

Beasiswa

Sistem manajemen beasiswa berbasis web untuk mengelola pengajuan, seleksi penerima, dan laporan.

0000
Tools:
+5
E-Perpus Solo
November 29, 2023

E-Perpus Solo

Sebuah aplikasi sistem manajemen perpustakaan open source dengan framework CodeIgniter versi 3.1.13

0000
Tools:
+10
Finboost Backend
May 10, 2024

Finboost Backend

Layanan backend berbasis cloud untuk aplikasi mobile yang menyediakan autentikasi, fitur chat, dan kapabilitas berbasis AI.

0000
Tools:
+8