mirror of
https://github.com/vlang/awesome-v.git
synced 2023-08-10 21:13:23 +03:00
A curated list of awesome V frameworks, libraries, software and resources.
7aa23e9833
This is a git commit to remove the link to the `random` library because it has been deprecated and vlib's `rand` must be used instead. |
||
---|---|---|
.github/workflows | ||
media | ||
CONTRIBUTING.md | ||
LICENSE | ||
README.md |
Awesome V
A curated list of awesome V frameworks, libraries, software and resources.
V is a simple, fast, safe, compiled language for developing maintainable software.
Contents
Applications
Command-line
- crepl - Compile and execute C code on the fly as you type it.
- HN-top - A simple command to list most recent news from hacker-news.
- portctl - CLI tool to manage Docker Swarm resources using Portainer API.
- klonol - CLI tool to help you "clone all" git repositories belonging to you. Works with GitHub and Gitea.
- runner - A tool that automates running/compiling code written in various programming languages.
- symlinker - A small Linux tool to manage symlinks.
- vast - A simple tool for vlang, generate v source file to AST json file.
- verve - Simple and fast static file server.
- vinit - A tool to generate v projects.
- vLogQL - A tiny command-line utility to query LogQL APIs.
- vqrcode - CLI for creating QR Codes.
- vspect - A tool to inspect vlang source file. ( Archived )
- vcli - A CLI tool to generate folder structure according to the guideline
- vgoogle - Make google search on the terminal.
Editors
- text_editor - Small text editor from the official V examples.
- ved - 1 MB text editor written in V with hardware accelerated text rendering. Compiles in <1s.
- vee - V Editor Engine. A V module providing the guts of a text editor. Comes with a TUI editor example.
- vPDF - A module to simplify PDF file creation using the V programming language.
Games
- Boundstone - High Performance / Fast Compilation / Lightweight Minecraft: Bedrock Edition Server.
- flappylearning-v - A simple flappy learning demo in v. ( Archived )
- Kurarin - osu! beatmap visualizer made in V. Example video.
- minesweeper - A simple Minesweeper game written in vlang.
- v-pong - A classic paddle game brought back to life through the power of V.
Graphics
- vRayTracer - A simple ray tracer written in V.
- mpv-v - World's Simplest Video Player.
Interpreters/Compilers
- stas - A stack based compiled programming language. The bootstrap compiler is written in V.
- monkey_v - Implementation of Thorsten Ball's Monkey Language in V.
- vbf - A brainfuck interpreter/compiler.
- vcc - A C compiler written in V.
- v - V itself. Simple, fast, safe, compiled language for developing maintainable software.
- Vork - Alternative V compiler/interpreter written in Python.
Operating systems/Kernels
- Vinix - Small and simple OS in V. Runs bash.
Package managers
- vpm - The V language package management tool written in V.
Project management
- Lenra template - The Lenra template to write V app for Lenra platform.
- vset - A project setup and configuration tool for V projects.
Serialization
- vlang-yaml - A V-native YAML reader, incl. YAML-to-JSON converter.
- vproto - Protobuf compiler and runtime in V.
- v-toxml - XML Serialization library for V.
- vgura - Official Gura parser for V.
Web
- Gitly - A light and fast SCM alternative to GitHub/GitLab written in V.
- Heroku Buildpack for V - Deploy V apps on Heroku.
- vblog - A simple, fast and responsive blogging system.
- Vebview.JS - Electron/Neutralino.JS alternative written in V.
- Vieter - Archlinux repository server & package build system, written in V.
- Vlang Benchmarks Visualization - Fancy statistics and plots for Is V still fast?.
- vorum - Open-source blogging/forum software written in V.
- vss - Easy-to-use static site generator.
- VTik - TikTok and Twitter video downloader app (CLI / Telegram Bot).
Libraries
Audio
- miniaudio - Bindings for the excellent miniaudio C audio library.
- vave - A crazy simple library for reading/writing WAV files in V. 🌊
- vspeech - Complete V bindings for Mozilla's DeepSpeech TensorFlow based Speech-to-Text library. 📢📜
Automation
- vrobot - Desktop automation for V. Only supports Windows.
Command line interface (CLI) / Terminal / Shell
- boxx - Create highly customizable terminal boxes that also look great! 📦
- lol - V version of lolcat (text/character rainbowizer).
- progressbar - An easy to use V library for creating progress bars in cli.
- spinners - Create spinners in your terminal!
- termtable - V Terminal Tables: Simple and highly customizable library to display tables in the terminal.
- vargs - V library for parsing arguments from argv-like arrays. ( Archived )
- vesseract - V wrapper for Tesseract-OCR (optical character recognition).
Database clients
- redis - Redis client for V, written in V.
- vmemcached - Memcached client for V, written in V.
- vsql - A sql query builder for V.
Discord
- discord.v - User-friendly Discord bot library.
- kitten - Simple Discord API library for writing bots.
- viscord - Pretty basic library for connecting to the Discord gateway.
- vord - Library for interacting with user account endpoints and gateway (Self-bots, custom clients, etc).
Eventing
- eventbus - A simple event bus system for V.
Files
- v-mime - MIME detection library for V.
- vmon - Asynchronously watch for file changes in a directory. The module is essentially a V wrapper for
septag/dmon
. It works for Windows, macOS and Linux.
Game development
- engine - WIP Vulkan in V.
- raylib.v - Updated V bindings for raylib with plans for complete cross-platform support.
- V_ecs - ECS library made in V inspired by Bevy ECS.
- vraylib - V wrapper (bindings) for raylib, the C game development framework.
- vraylib - A V wrapper for the awesome raylib library.
Graphics
- V Earcut - fast (real-time) polygon triangulation library based on mapbox/Earcut to handle holes, twisted polygons, degeneracies and self-intersections.
- vgl - Low-level graphics API access.
- vgui - Minimal, lightweight and cross-platform GUI library.
- viup - V wrapper for the C-based cross-platform UI library, IUP.
- vsdl2 - A libSDL2 wrapper.
- vsdl - V wrapper for the C-based SDL library.
- vsl.vcl - VCL is a high level way of writting programs with OpenCL using V. These are highly opinionated OpenCL bindings for V. It tries to make GPU computing easy, with some sugar abstraction, V's concurrency and channels.
- V_sokol_gp - A V wrapper for the sokol_gp library for easy and fast 2d graphics.
IRC
- vitric - A transparent IRC library.
Networking
Operating system
- clipboard - V module for interacting with the OS clipboard. Fully cross-platform.
- mmap - Provide native V-lang support for memory-mapping on Linux and Windows.
- vlipboard - An easy to use wrapper of clipboard with Wayland and Termux support.
Scientific computing
- vplot - V wrapper for GNU Plot (
gnuplot_i
). - vsl - VSL is a Scientific Library with a great variety of different modules. Although most modules offer pure-V definitions, VSL also provides modules that wrap known C libraries among other backends that allow high performance computing as an alternative. Also provides opinionated wrappers for OpenBLAS, LAPACKE, MPI, OpenCL among other libraries.
- vtl - The V Tensor Library is a numerical computing library supporting n-dimensional data structure, backed by VSL.
Serial Communications
- vi2c - A tiny (wrapper) library for I2C serial communication for Linux written in V.
- vserialport - V wrapper for libserialport.
- vserialx - A tiny (wrapper) serial communication library for Linux written in V.
Telecommunications
- vagi - Asterisk FastAGI library in V.
Telegram
- vgram - Telegram bot library.
Text processing
- ascii_robot - ASCII Robot generator written in V.
- chalk - Colorize strings in the terminal.
- cjson - Wrap cJSON for vlang.
- crayon - Paint your terminal output like Picasso. 🖍️🎨
- iconv - Wrap iconv for vlang.
- pcre2 - Library for processing PCRE regular expressions.
- Rosie-RPL - A Rosie Pattern Language (RPL) implementation.
- strfmt - Tiny and fast string formatting library ideal for templating.
- v-regex - A simple regex library for V.
- vxml - Pure V library for parsing XML to a DOM.
- text-processing - V text processing library, that contains common tools to manipulate text data.
User Interface toolkits
- mui - A Cross-Platform UI library for Windows, Linux, Android and Web.
- vgtk3 - A wrapper for GTK3 in V.
- vig - Bindings for Dear ImGui GUI toolkit.
- vnk - Bindings for Nuklear GUI toolkit.
- V UI - Integrated cross platform UI toolkit for Windows, macOS, Linux, Android, iOS and the web.
Utility
- range - Functionality of Python's range() in V.
- ssh-config - A V library for parsing SSH config files.
- vaker - A light-weight compile-time-generated data faker written in V.
- vdotenv - Support for .env files which loads environment variables.
- VInstall - A cross-platform installer creator.
Web
- pico.v - A web server in V based on picoev and picohttpparser.
- validate - A simple library to validate strings in V.
- valval - Web framework written in V, improved by vweb.
- vcurrency - API wrapper (written in V) for https://api.exchangeratesapi.io.
- vex - Web framework written on V inspired by Express and Sinatra.
- vigest - Simple client for digest authentication (written in V).
- v-jsonrpc - Basic JSON-RPC 2.0-compliant server written on V.
- vweb - V's built-in web framework. Used by Vorum.
- vxbloauth - A minimalistic Xbox Live authenticator for vweb.
- v-tiktok - A V library for downloading TikTok videos.
Other
Articles
Books
- Getting Started with V Programming - Navule Pavan Kumar Rao - Packt 2021 Dec - Introductory book on V.
Communities
Editor plugins
Atom
- language-v - V language support for Atom (port of vscode-vlang).
Emacs
- vlang-mode.el - Emacs major mode for the V programming language.
- v-mode - Emacs major mode for the V programming language.
Sublime Text 3
- sublime-v - Fully-featured Sublime Text 3 package for the V Programming Language.
- vlang-sublime - Sublime text 3 Support for the Vlang Programming Language.
VS Code
- vscode-vlang - V Language extension for Visual Studio Code.
Vim
- vim-v - Quality syntax highlighting for the V programming language.
- v-vim - Support for V syntax highlighting in Vim.
- vim-vtools - V tools for Vim, including auto formatting.
IntelliJ & CLion & GoLand etc
- IntelliJ V - Plugin for IntelliJ IDEA and other JetBrains IDEs.
Forums
GitHub actions
- action-create-v-docs - GitHub action to create documentation for V modules.
- setup-v - GitHub action to install and use V in your workflow.
IDEs with V
Online IDEs with V
Operating Systems & OS Development Examples
- Simple Linux kernel module example - Demonstration & test of writing a very simple Linux kernel module, using V.
Programming contests
- Advent of Code 2022 - Solution of Advent of Code 2022 in V.
- Advent of Code 2019 - Solution of Advent of Code 2019 in V.
- Rosetta Code in V - Solutions for Rosetta Code in V.
- SoloLearn Coding Challenges - Implementation of the SoloLearn coding challenges in V.
Syntax highlighting
- kate-syntax-highlight-v - V syntax highlighting for Kate.
- scite-v-support - V syntax highlighting for SciTE.
Tutorials
- Learn V in Y Minutes
- V by Example - V book as GitBook.
- V for Node Devs - Vlang for node js developers.
- V learning notes - Personal learning notes in Chinese.
Videos
GitHub templates
- v-project-basement - A basement for every V project, that contains universal minimum GitHub CI scripts and issue templates for a V project.
Patterns
- MVU.v - MVU pattern (The Elm Architecture) implemented in V programming language.