JSPM

volt-lsp

0.2.1
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 1
  • Score
    100M100P100Q22659F
  • License MIT

The Blazing-Fast, Termux-Native TypeScript Language Server

Package Exports

  • volt-lsp
  • volt-lsp/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (volt-lsp) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

โšก Volt LSP

The Blazing-Fast, Termux-Native TypeScript Language Server

Version License Platform


๐Ÿš€ Visi Proyek

Volt LSP hadir untuk menghancurkan batasan pengembangan perangkat lunak modern di perangkat mobile. Dirancang khusus untuk lingkungan Termux yang luar biasa, Volt LSP menyediakan pengalaman pengembangan TypeScript/JavaScript kelas satu yang tidak hanya berjalan di Termux, tetapi dilahirkan untuk Termux.

Kami percaya bahwa performa bukanlah sebuah kemewahan, melainkan sebuah hak.

โœจ Fitur Utama

  • ๐Ÿš€ Performa Super Ringan: Waktu startup instan dan penggunaan RAM minimal
  • ๐Ÿค– Integrasi Termux-API Mendalam: Notifikasi error, aksi salin & bagikan ke aplikasi Android lain
  • โšก Inline Task Runner: Jalankan npm test atau npm run build dan lihat hasilnya langsung di editor
  • ๐ŸŒ Info Dependensi & Cache Offline: Hover pada dependensi di package.json untuk melihat deskripsi
  • ๐Ÿ’ก Aksi Kode Cerdas: Workflow efisien untuk menyalin dan membagikan kode
  • ๐Ÿ›  Zero-Config Philosophy: Install dan langsung gunakan dengan konfigurasi minimal

๐Ÿ“‹ Prasyarat

Pastikan sistem Termux Anda memiliki paket-paket berikut:

# Update sistem
pkg update && pkg upgrade

# Install Node.js (LTS direkomendasikan)
pkg install nodejs

# Install Git
pkg install git

# Install Termux API (PENTING untuk fitur unggulan!)
pkg install termux-api

# Install Neovim (v0.8+)
pkg install neovim

Penting: Pastikan aplikasi Termux:API terinstall di Android Anda dan telah dijalankan sekali untuk mengaktifkan integrasi.

๐Ÿ”ง Instalasi

Instalasi Global (Direkomendasikan)

npm install -g volt-lsp

Instalasi dari Source

# Clone repository
git clone https://github.com/volt-lsp/volt-lsp.git
cd volt-lsp

# Install dependencies
npm install

# Link secara global
npm link

โš™๏ธ Konfigurasi Neovim

Tambahkan konfigurasi berikut ke file ~/.config/nvim/init.lua:

-- Konfigurasi Volt LSP
local lspconfig = require('lspconfig')

-- Setup Volt LSP
lspconfig.volt_lsp = {
    default_config = {
        cmd = { 'volt-lsp' },
        filetypes = { 'typescript', 'javascript', 'typescriptreact', 'javascriptreact', 'json' },
        root_dir = lspconfig.util.root_pattern('package.json', 'tsconfig.json', '.git'),
        single_file_support = true,
    },
}

-- Auto-start untuk file yang didukung
vim.api.nvim_create_autocmd('FileType', {
    pattern = { 'typescript', 'javascript', 'typescriptreact', 'javascriptreact', 'json' },
    callback = function()
        lspconfig.volt_lsp.launch()
    end
})

-- Keymaps (opsional tapi direkomendasikan)
vim.keymap.set('n', '<space>ca', vim.lsp.buf.code_action, { desc = 'Code Actions' })
vim.keymap.set('n', 'K', vim.lsp.buf.hover, { desc = 'Hover Info' })
vim.keymap.set('n', 'gd', vim.lsp.buf.definition, { desc = 'Go to Definition' })

๐ŸŽฏ Panduan Penggunaan

1. Inline Task Runner

Jalankan tugas npm langsung dari dalam editor:

:LspExecuteCommand volt-lsp:runTest
:LspExecuteCommand volt-lsp:runBuild

Hasil error akan muncul sebagai diagnostic di editor Anda!

2. Aksi Kode Cerdas

  1. Seleksi kode dalam mode Visual
  2. Tekan <space>ca (atau keymap code action Anda)
  3. Pilih [Volt] Copy to Android Clipboard atau [Volt] Share Code Snippet
  4. Kode akan disalin/dibagikan melalui Termux-API

3. Info Dependensi Offline

  1. Buka package.json
  2. Hover cursor pada nama dependensi
  3. Info paket akan muncul dengan deskripsi, versi, dan detail lainnya
  4. Bekerja offline setelah cache terbangun!

4. Notifikasi Termux

Volt LSP akan mengirim notifikasi Android untuk:

  • Task completion/failure
  • Error diagnostics
  • Status updates

๐Ÿ”ง Perintah yang Tersedia

Perintah Deskripsi
volt-lsp:runTest Menjalankan test suite proyek
volt-lsp:runBuild Menjalankan build/compile
volt-lsp:copyToClipboard Salin kode terpilih ke clipboard Android
volt-lsp:shareCode Bagikan kode melalui aplikasi Android
volt-lsp:clearCache Bersihkan cache dependensi

๐Ÿ“ Struktur Proyek

volt-lsp/
โ”œโ”€โ”€ package.json                 # Package configuration
โ”œโ”€โ”€ bin/
โ”‚   โ””โ”€โ”€ volt-lsp                 # Executable script
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ lsp-connection.js        # LSP protocol handler
โ”‚   โ”œโ”€โ”€ tsserver-proxy.js        # TypeScript server proxy
โ”‚   โ”œโ”€โ”€ termux-api-manager.js    # Termux API integration
โ”‚   โ”œโ”€โ”€ task-runner.js           # Inline task execution
โ”‚   โ”œโ”€โ”€ dependency-info-provider.js # Package info provider
โ”‚   โ””โ”€โ”€ logger.js                # Logging system
โ”œโ”€โ”€ index.js                     # Main server entry point
โ””โ”€โ”€ README.md                    # Documentation

๐Ÿ›  Konfigurasi Environment

Volt LSP mendukung konfigurasi melalui environment variables:

# Log level (error, warn, info, debug)
export VOLT_LSP_LOG_LEVEL=info

# Log file path (opsional)
export VOLT_LSP_LOG_FILE="/data/data/com.termux/files/home/.volt-lsp.log"

# Disable colors in console output
export VOLT_LSP_NO_COLORS=1

๐Ÿงช Testing

# Run tests
npm test

# Run with development mode
npm run dev

๐Ÿ“Š Performance

Volt LSP dioptimalkan untuk lingkungan terbatas:

  • Memory Usage: ~50MB (vs ~200MB untuk LSP standar)
  • Startup Time: <2 detik
  • Battery Impact: Minimal dengan sleep mode otomatis

๐Ÿ” Troubleshooting

LSP tidak bisa connect

# Cek apakah volt-lsp tersedia
which volt-lsp

# Test manual
volt-lsp --help

Termux-API tidak berfungsi

# Cek instalasi termux-api
pkg list-installed | grep termux-api

# Test API
termux-notification --title "Test" --content "Working"

TypeScript server error

# Install/update TypeScript
npm install -g typescript

# Cek tsserver
which tsserver

Cache issues

# Clear cache manual
rm ~/.volt-lsp-cache.json

# Atau via LSP command
:LspExecuteCommand volt-lsp:clearCache

๐Ÿ—บ๏ธ Roadmap

โœ… v0.2.x (Current Release)

  • โœ… Fondasi LSP yang stabil
  • โœ… Inline Task Runner (Jest & tsc parser)
  • โœ… Aksi Kode (Salin & Bagikan)
  • โœ… Info Dependensi dengan Cache Offline
  • โœ… Notifikasi Diagnostik via Termux-API

๐ŸŽฏ v0.3.x (Next: Expansion & Stability)

  • ๐Ÿ”„ Dukungan parser untuk test runner lain (Vitest, Mocha)
  • ๐Ÿ”„ Peningkatan logika parsing error
  • ๐Ÿ”„ Perintah kustom tambahan
  • ๐Ÿ”„ Optimasi performa lebih lanjut

๐Ÿš€ v0.4.x (Future: Advanced Features)

  • ๐Ÿ”ฎ Fitur refactoring dasar
  • ๐Ÿ”ฎ Integrasi git untuk info blame
  • ๐Ÿ”ฎ Pengaturan yang dapat dikustomisasi

๐ŸŒŒ Visi Jangka Panjang

  • ๐Ÿ”ฎ Dukungan bahasa lain (Python, Go, Rust)
  • ๐Ÿ”ฎ Menjadi standar de-facto untuk development mobile

๐Ÿค Contributing

Kontribusi sangat diterima! Silakan:

  1. Fork repository ini
  2. Buat feature branch (git checkout -b feature/amazing-feature)
  3. Commit perubahan (git commit -m 'Add amazing feature')
  4. Push ke branch (git push origin feature/amazing-feature)
  5. Buat Pull Request

๐Ÿ“ License

Proyek ini dilisensikan di bawah MIT License.

๐Ÿ™ Acknowledgments

  • Tim TypeScript untuk tsserver yang luar biasa
  • Komunitas Termux untuk platform yang menakjubkan
  • Kontributor LSP specification

๐Ÿ“ž Support


Dibuat dengan โค๏ธ untuk komunitas developer mobile

"Performa bukan kemewahan, tapi hak setiap developer" - Volt LSP Team