Sign inSign up

hikariai/nvim-server

By hikariai

•Updated over 4 years ago

📡 The Ultimate Containerized NeoVim Remote Server

Image
4

10K+

hikariai/nvim-server repository overview

⁠ ☁️ NeoVim Server

A containerized IDE-like text editor that runs on a web server

CICD ⁠ License Version ⁠ NeoVim ⁠ Platform ⁠

This tool is for running NeoVim remotely and continuing the development process at 🚀 speed. You can use it to implement an IDE-like web-based terminal text editor.

screenshot

⁠✨ Features

  • Portable and light-weight
  • Support popular languages
  • Syntax highlight
  • Intellisense autocomplete
  • Markdown snippets and preview
  • Easy to deploy
  • Versatile and customizable
  • Containerized
  • Run on a web browser
  • Build with multi-arch (ARM/x86)
  • Supported platforms: arm64, arm64, arm/v7

⁠⚙️ Prerequisites

  • Driod Sans Mono Nerd Font is required to be downloaded since its the default font of the container. You may find the installation guide below. To use other fonts, please find the instructions on the Nerd Font⁠ repository.
  • Choose a web browser in your preference. Google Chrome, Microsoft Edge, and FireFox should work fine, whereas Safari does not work temporarily.

⁠📥 Font Installation

Notes: reboot might be needed after the font installation

⁠Linux
mkdir -p ~/.local/share/fonts
cd ~/.local/share/fonts && curl -fLo "Droid Sans Mono for Powerline Nerd Font Complete.otf" https://github.com/ryanoasis/nerd-fonts/raw/master/patched-fonts/DroidSansMono/complete/Droid%20Sans%20Mono%20Nerd%20Font%20Complete.otf
⁠MacOS
cd ~/Library/Fonts && curl -fLo "Droid Sans Mono for Powerline Nerd Font Complete.otf" https://github.com/ryanoasis/nerd-fonts/raw/master/patched-fonts/DroidSansMono/complete/Droid%20Sans%20Mono%20Nerd%20Font%20Complete.otf
⁠Arch User ONLY
yay -S nerd-fonts-droid-sans-mono

NOTE: if your current browser cannot load the font and the icon, you may manually apply the configuration to the wetty configuration window located on the upper right corner:

{
  "fontSize": 16,
  "fontFamily": "DroidSansMono Nerd Font"
}

⁠📥 Installation

⁠Run with the pre-built image
docker run -d \
  --name nvim-server \
  --restart unless-stopped \
  -p 6080:3000 \
  -p 8090:8090 \
  -v ~/workspace:/workspace \
  -v /appdata/nvim-server:/config \
  -e UID=$UID \
  -e GId=$GID \
  -e TZ=Asia/Shanghai \
  -e USER=<USER> \
  -e SECRET=<PASSWORD> \
  hikariai/nvim-server:latest
⁠Watch the logs
$ docker logs nvim-server --follow

Notes:

  • Wait for a couple seconds until the container finishes its bootstrap process, then visit http://localhost:6080/wetty
ParametersUsage
--name nvim-serverSpecify the name for the container
-p 6080:3000Map the port for accessing the Web UI
-p 8090:8090Map the port for the Instant Markdown Preview Server
-v ~/workspace:/workspaceMap the working directory
-v /appdata/nvim-server:/configContain all relevant configuration config directory
-e UID=$UIDMap current user ID
-e GID=$GIDMap current group ID
-e TZ=<TZ>Specify a timezone to use e.g. Asia/Shanghai
-e USER=<USER>Specify the username for user login, default is set to guest
-e SECRET=<SECRET>Specify the password for user login, default is set to password
⁠Build the image manually

Follow the instruction HERE⁠

⁠UNRAID User ONLY

NeoVim Sever is now available on unRAID CA. Search nvim server and install

Detailed installation guide is available HERE⁠

⁠💡 Usage

  • After logging in with username and password in the web console, type vim to finish the initial setup.

  • For the first launch, NeoVim will install the coc-extensions defined in coc.settings⁠. You may also download additional coc-extensions followed by the instructions⁠

  • All the functionalities and usage cases are written in the Wiki Page⁠, feel free to check it out.

  • To get familiar with the default key mappings, please visit the Cheat Sheet Page⁠

⁠📋 Wiki

⁠💬 F.A.Q

⁠🔨 Useful Tools for Vim

⁠📝 TODO

  • Add a customizable base image
  • Add more customizable features
  • Add more advanced usage cases
  • Add demo and usage guide for selection, registers, substitution, and macro
  • Add SSL support
  • Add relative number option
  • Add wetty rolling updates

⁠📝 Reference

⁠⚖️ License

MIT (C) Kevin Yu⁠

Tag summary

Content type

Image

Digest

Size

521.7 MB

Last updated

over 4 years ago

docker pull hikariai/nvim-server