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.
1430392e6a
* Alphabetize entire list * Add alphabetization requirement |
||
---|---|---|
.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.
- github-releases - Cli tool to keep track of applications released as GitHub Release (or assets in workflow) and download them.
- HN-top - A simple command to list most recent news from hacker-news.
- klonol - CLI tool to help you "clone all" git repositories belonging to you. Works with GitHub and Gitea.
- portctl - CLI tool to manage Docker Swarm resources using Portainer API.
- 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.
- vcli - A CLI tool to generate folder structure according to the guideline
- verve - Simple and fast static file server.
- vgoogle - Make google search on the terminal.
- vindex - A simple file list server generating json strings, compatible with nginx's autoindex module.
- 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 )
- vzcc - A CLI cross-compiling tool based on Zig CC for V.
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
- 2048 - A 2048 game with several types of traditional AI integrated.
- Boundstone - High Performance / Fast Compilation / Lightweight Minecraft: Bedrock Edition Server.
- flappylearning-v - A simple flappy learning demo in v.
- 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
- mpv-v - World's Simplest Video Player.
- vRayTracer - A simple ray tracer written in V.
Interpreters/Compilers
- monkey_v - Implementation of Thorsten Ball's Monkey Language in V.
- stas - A stack based compiled programming language. The bootstrap compiler is written in V.
- v - V itself. Simple, fast, safe, compiled language for developing maintainable software.
- vas - A simple x86-64 assembler written in V.
- vbf - A brainfuck interpreter/compiler.
- vcc - A C compiler written in V.
- 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
- v-toxml - XML Serialization library for V.
- vgura - Official Gura parser for V.
- vlang-yaml - A V-native YAML reader, incl. YAML-to-JSON converter.
- vproto - Protobuf compiler and runtime in V.
Web
- Gitly - A light and fast SCM alternative to GitHub/GitLab written in V.
- Heroku Buildpack for V - Deploy V apps on Heroku.
- v-admin-skeleton - Backend skeleton written in V.
- 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
- bartender - Gluten free bars for V term apps.
- 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 - A V wrapper for the awesome raylib library.
- vraylib - V wrapper (bindings) for raylib, the C game development framework.
Graphics
- V Earcut - fast (real-time) polygon triangulation library based on mapbox/Earcut to handle holes, twisted polygons, degeneracies and self-intersections.
- V_sokol_gp - A V wrapper for the sokol_gp library for easy and fast 2d graphics.
- vgl - Low-level graphics API access.
- viup - V wrapper for the C-based cross-platform UI library, IUP.
- vsdl - V wrapper for the C-based SDL library.
- vsdl2 - A libSDL2 wrapper.
- 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.
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.
- text-processing - V text processing library, that contains common tools to manipulate text data.
- v-regex - A simple regex library for V.
- vxml - Pure V library for parsing XML to a DOM.
- whisker - Fast, robust template engine for V inspired by mustache.
User Interface toolkits
- mui - A Cross-Platform UI library for Windows, Linux, Android and Web.
- V UI - Integrated cross platform UI toolkit for Windows, macOS, Linux, Android, iOS and the web.
- vgtk3 - A wrapper for GTK3 in V.
- vig - Bindings for Dear ImGui GUI toolkit.
- vnk - Bindings for Nuklear GUI toolkit.
- VWebui - V Library that makes easy creating WebUI.
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.
- v-jsonrpc - Basic JSON-RPC 2.0-compliant server written on V.
- v-tiktok - A V library for downloading TikTok videos.
- 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).
- vweb - V's built-in web framework. Used by Vorum.
- vxbloauth - A minimalistic Xbox Live authenticator for vweb.
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
- v-mode - Emacs major mode for the V programming language.
- vlang-mode.el - 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
- v-vim - Support for V syntax highlighting in Vim.
- vim-v - Quality syntax highlighting for the V programming language.
- 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.
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.
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.
Patterns
- MVU.v - MVU pattern (The Elm Architecture) implemented in V programming language.
Programming contests
- Advent of Code 2019 - Solution of Advent of Code 2019 in V.
- Advent of Code 2022 - Solution of Advent of Code 2022 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.
- VOSCA Blog Tutorials - Tutorial category on VOSCA blog.