awesome-v/README.md

262 lines
12 KiB
Markdown
Raw Normal View History

<!--lint disable no-dead-urls-->
<p align="center"><img src="media/awesome-v-logo.svg" width="400"/></p>
2020-01-12 20:31:00 +03:00
2020-01-12 18:29:21 +03:00
# Awesome V [![Awesome](https://awesome.re/badge.svg)](https://awesome.re)
2019-07-15 17:46:57 +03:00
2020-01-12 20:31:52 +03:00
> A curated list of awesome V frameworks, libraries, software and resources.
2020-01-20 19:13:35 +03:00
[V](https://vlang.io/) is a simple, fast, safe, compiled language for developing maintainable software.
2020-01-19 02:21:37 +03:00
2020-01-12 18:29:21 +03:00
## Contents
2020-01-23 13:07:06 +03:00
2020-01-12 23:43:08 +03:00
- [Applications](#applications)
- [Interpreters/Compilers](#interpreterscompilers)
- [Package managers](#package-managers)
- [Editors](#editors)
- [Web](#web)
- [Graphics](#graphics)
- [Games](#games)
- [Command-line](#command-line)
2020-05-29 10:32:23 +03:00
- [Project management](#project-management)
- [Serialization](#serialization)
2020-01-12 23:43:08 +03:00
- [Libraries](#libraries)
2020-05-29 10:32:23 +03:00
- [Command line interface](#command-line-interface)
2020-01-12 23:43:08 +03:00
- [Text processing](#text-processing)
- [Graphics](#graphics-1)
- [Game development](#game-development)
2020-01-12 23:43:08 +03:00
- [Web](#web-1)
2020-02-21 17:18:39 +03:00
- [Database clients](#database-clients)
2020-01-12 23:43:08 +03:00
- [Audio](#audio)
2020-05-29 10:32:23 +03:00
- [Operating system](#operating-system)
2020-01-12 23:43:08 +03:00
- [Automation](#automation)
- [Telegram](#telegram)
- [Discord](#discord)
2020-07-01 12:50:43 +03:00
- [IRC](#irc)
2020-01-12 23:43:08 +03:00
- [Files](#files)
- [Eventing](#eventing)
2020-05-29 10:32:23 +03:00
- [User Interface toolkits](#user-interface-toolkits)
- [Scientific computing](#scientific-computing)
2020-05-28 20:42:32 +03:00
- [Utility](#utility)
2020-01-12 23:43:08 +03:00
- [Other](#other)
- [Syntax highlighting](#syntax-highlighting)
2020-12-23 16:29:04 +03:00
- [Editor plugins](#editor-plugins)
- [GitHub actions](#github-actions)
2020-01-12 23:43:08 +03:00
- [Videos](#videos)
2020-05-29 10:32:23 +03:00
- [Programming contests](#programming-contests)
2020-01-12 23:43:08 +03:00
- [Tutorials](#tutorials)
- [Online IDEs with V](#online-ides-with-v)
- [Articles](#articles)
2020-01-24 07:15:07 +03:00
- [Communities](#communities)
2020-01-12 23:43:08 +03:00
- [Forums](#forums)
## Applications
2020-01-11 12:16:39 +03:00
### Interpreters/Compilers
2020-01-23 13:07:06 +03:00
2020-01-12 23:43:08 +03:00
- [v](https://github.com/vlang/v) - V itself. Simple, fast, safe, compiled language for developing maintainable software.
- [vbf](https://github.com/vpervenditti/vbf) - A brainfuck interpreter/compiler.
- [monkey_v](https://github.com/Delta456/monkey_v) - Implementation of [Thorsten Ball's Monkey Language](https://interpreterbook.com/) in V.
- [vcc](https://github.com/lemoncmd/vcc) - A C compiler written in V.
- [Vork](https://github.com/Itay2805/Vork) - Alternative V compiler/interpreter written in Python.
2019-12-27 11:17:08 +03:00
### Package managers
2020-01-23 13:07:06 +03:00
2020-01-12 23:43:08 +03:00
- [vpm](https://github.com/yue-best-practices/vpm) - The V language package management tool written in V.
2019-08-03 00:27:08 +03:00
2019-08-08 20:19:51 +03:00
### Editors
2020-01-23 13:07:06 +03:00
2020-10-01 20:42:10 +03:00
- [ved](https://github.com/vlang/ved) - 1 MB text editor written in V with hardware accelerated text rendering. Compiles in <1s.
2019-08-08 20:19:51 +03:00
### Web
2020-01-23 13:07:06 +03:00
2020-01-12 23:43:08 +03:00
- [vorum](https://github.com/vlang/vorum) - Open-source blogging/forum software written in V.
2020-08-25 13:10:49 +03:00
- [vblog](https://github.com/scurty-labs/vblog) - A simple, fast and responsive blogging system.
2020-01-12 23:43:08 +03:00
- [Heroku Buildpack for V](https://github.com/louis77/heroku-buildpack-v) - Deploy V apps on Heroku.
2019-08-08 20:19:51 +03:00
2019-12-12 03:46:54 +03:00
### Graphics
2020-01-23 13:07:06 +03:00
- [vRayTracer](https://github.com/ali-raheem/vraytracer) - A simple ray tracer written in V.
2019-12-12 03:46:54 +03:00
### Games
2020-01-23 13:07:06 +03:00
2020-01-12 23:43:08 +03:00
- [Boundstone](https://github.com/organization/boundstone) - High Performance / Fast Compilation / Lightweight Minecraft: Bedrock Edition Server.
2020-09-03 07:00:50 +03:00
- [v-pong](https://github.com/thebigsmileXD/v-pong) - A classic paddle game brought back to life through the power of V.
- [flappylearning-v](https://github.com/uxnow/flappylearning-v) - A simple flappy learning demo in v. ( Archived )
2019-11-22 06:29:17 +03:00
### Command-line
2020-01-23 13:07:06 +03:00
2020-01-12 23:43:08 +03:00
- [HN-top](https://github.com/BafS/hn-top) - A simple command to list most recent news from hacker-news.
2020-03-05 12:50:54 +03:00
- [vast](https://github.com/lydiandy/vast) - A simple tool for vlang, generate v source file to AST json file.
- [symlinker](https://github.com/serkonda7/symlinker) - A small Linux tool to manage symlinks.
2020-07-02 21:46:08 +03:00
- [runner](https://github.com/Naheel-Azawy/runner) - A tool that automates running/compiling code written in various programming languages.
2021-02-19 09:46:01 +03:00
- [vcredits](https://github.com/zakuro9715/vcredits) - A tool that creates CREDITS from LICENSE files of dependencies.
2021-02-03 05:35:06 +03:00
- [vspect](https://github.com/zakuro9715/vspect) - A tool to inspect vlang source file.
2020-05-28 20:42:32 +03:00
2020-05-29 10:32:23 +03:00
### Project management
2020-01-23 13:07:06 +03:00
2020-01-12 23:43:08 +03:00
- [vset](https://github.com/mulh8377/vset) - A project setup and configuration tool for V projects.
2019-12-06 18:39:44 +03:00
### Serialization
- [vproto](https://github.com/emily33901/vproto) - Protobuf compiler and runtime in V.
## Libraries
2020-05-29 10:32:23 +03:00
### Command line interface
2020-01-23 13:07:06 +03:00
- [vargs](https://github.com/nedpals/vargs) - V library for parsing arguments from argv-like arrays. ( Archived )
2020-01-12 23:43:08 +03:00
- [progressbar](https://github.com/Waqar144/progressbar) - An easy to use V library for creating progress bars in cli.
- [boxx](https://github.com/thecodrr/boxx) - Create highly customizable terminal boxes that also look great! 📦
2020-02-24 21:25:28 +03:00
- [lol](https://github.com/0xLeif/lol) - V version of lolcat (text/character rainbowizer).
2019-12-12 03:46:54 +03:00
### Text processing
2020-01-23 13:07:06 +03:00
2020-01-12 23:43:08 +03:00
- [v-regex](https://github.com/spytheman/v-regex) - A simple regex library for V.
- [chalk](https://github.com/etienne-napoleone/chalk) - Colorize strings in the terminal.
2020-01-24 07:12:40 +03:00
- [crayon](https://github.com/thecodrr/crayon) - Paint your terminal output like Picasso. 🖍️🎨
- [cjson](https://github.com/lydiandy/cjson) - Wrap cJSON for vlang.
2020-06-21 17:58:18 +03:00
- [ascii_robot](https://github.com/Delta456/ascii_robot) - ASCII Robot generator written in V.
2019-12-12 03:46:54 +03:00
2019-07-22 23:55:52 +03:00
### Graphics
2020-01-23 13:07:06 +03:00
2020-01-12 23:43:08 +03:00
- [vgl](https://github.com/justicesuh/vgl) - Low-level graphics API access.
- [viup](https://github.com/kjlaw89/viup) - V wrapper for the C-based cross-platform UI library, IUP.
- [vsdl](https://github.com/kjlaw89/vsdl) - V wrapper for the C-based SDL library.
2020-01-12 23:43:08 +03:00
- [vsdl2](https://github.com/nsauzede/vsdl2) - A libSDL2 wrapper.
- [V Earcut](https://github.com/Larpon/earcut) - fast (real-time) polygon triangulation library based on [mapbox/Earcut](https://github.com/mapbox/earcut) to handle holes, twisted polygons, degeneracies and self-intersections.
### Game development
- [vraylib](https://github.com/MajorHard/vraylib) - V wrapper (bindings) for [raylib](https://www.raylib.com), the C game development framework.
2019-07-22 23:55:52 +03:00
2019-12-17 15:45:42 +03:00
### Web
2020-01-23 13:07:06 +03:00
2020-01-12 23:43:08 +03:00
- [vex](https://github.com/nedpals/vex) - Web framework written on V inspired by Express and Sinatra.
- [vweb](https://github.com/vlang/v/tree/master/vlib/vweb) - V's built-in web framework. Used by Vorum.
- [validate](https://github.com/endeveit/v-validate) - A simple library to validate strings in V.
- [valval](https://github.com/taojy123/valval) - Web framework written in V, improved by vweb.
2020-01-12 23:43:08 +03:00
- [v-jsonrpc](https://github.com/nedpals/v-jsonrpc) - Basic JSON-RPC 2.0-compliant server written on V.
2020-09-03 07:00:23 +03:00
- [pico.v](https://github.com/S-YOU/pico.v) - A web server in V based on picoev and picohttpparser.
2021-01-23 09:51:45 +03:00
- [vxbloauth](https://github.com/WolvesFortress/vxbl-oauth) - A minimalistic Xbox Live authenticator for vweb.
2021-03-02 22:49:00 +03:00
- [vcurrency](https://github.com/mehtaarn000/vcurrency) - API wrapper (written in V) for [https://api.exchangeratesapi.io](https://api.exchangeratesapi.io).
2019-12-17 15:45:42 +03:00
2020-02-21 17:18:39 +03:00
### Database clients
- [redis](https://github.com/patrickpissurno/vredis) - Redis client for V, written in V.
2020-07-02 10:34:37 +03:00
- [vsql](https://github.com/lydiandy/vsql) - A sql query builder for V.
2020-10-18 19:08:54 +03:00
- [vmemcached](https://github.com/blacktrub/vmemcached) - Memcached client for V, written in V.
2020-02-21 17:18:39 +03:00
2019-12-12 03:38:29 +03:00
### Audio
2020-01-23 13:07:06 +03:00
2020-01-24 07:12:40 +03:00
- [vave](https://github.com/thecodrr/vave) - A crazy simple library for reading/writing WAV files in V. 🌊
- [vspeech](https://github.com/thecodrr/vspeech) - Complete V bindings for Mozilla's DeepSpeech TensorFlow based Speech-to-Text library. 📢📜
2020-01-12 23:43:08 +03:00
- [v-miniaudio](https://github.com/Larpon/v-miniaudio) - Bindings for the excellent miniaudio C audio library.
2019-12-12 03:38:29 +03:00
2020-05-29 10:32:23 +03:00
### Operating system
2020-01-23 13:07:06 +03:00
2020-01-12 23:43:08 +03:00
- [clipboard](https://github.com/vlang/v/tree/master/vlib/clipboard) - V module for interacting with the OS clipboard. Fully cross-platform.
2020-05-16 10:44:48 +03:00
- [vlipboard](https://github.com/asvvvad/vlipboard) - An easy to use wrapper of clipboard with Wayland and Termux support.
2019-12-12 03:52:40 +03:00
2019-08-16 22:33:21 +03:00
### Automation
2020-01-23 13:07:06 +03:00
2020-01-12 23:43:08 +03:00
- [vrobot](https://github.com/eioo/vrobot) - Desktop automation for V. Only supports Windows.
2019-08-16 22:33:21 +03:00
2019-07-15 17:49:52 +03:00
### Telegram
2020-01-23 13:07:06 +03:00
2020-06-09 11:57:01 +03:00
- [vgram](https://github.com/dariotarantini/vgram) - Telegram bot library.
### Discord
- [viscord](https://github.com/vlang/viscord) - Pretty basic library for connecting to the Discord gateway.
- [discord.v](https://github.com/Terisback/discord.v) - User-friendly Discord bot library.
2020-07-01 12:50:43 +03:00
### IRC
- [vitric](https://github.com/m-242/vitric) - A transparent IRC library.
2019-07-20 03:07:39 +03:00
### Files
2020-01-23 13:07:06 +03:00
2020-01-12 23:43:08 +03:00
- [v-mime](https://github.com/nedpals/v-mime) - MIME detection library for V.
2019-07-20 03:07:39 +03:00
2019-11-25 09:23:17 +03:00
### Eventing
2020-01-23 13:07:06 +03:00
2020-01-12 23:43:08 +03:00
- [eventbus](https://github.com/vlang/v/tree/master/vlib/eventbus) - A simple event bus system for V.
2019-11-25 09:23:17 +03:00
2020-05-29 10:32:23 +03:00
### User Interface toolkits
2020-01-23 13:07:06 +03:00
2020-01-12 23:43:08 +03:00
- [V UI](https://github.com/vlang/ui) - Integrated cross platform UI toolkit for Windows, macOS, Linux, Android, iOS and the web.
2020-01-25 12:10:11 +03:00
- [vgtk3](https://github.com/vgtk/vgtk3) - A wrapper for GTK3 in V.
2020-01-12 23:43:08 +03:00
- [vig](https://github.com/nsauzede/vig) - Bindings for [Dear ImGui](https://github.com/ocornut/imgui) GUI toolkit.
- [vnk](https://github.com/nsauzede/vnk) - Bindings for [Nuklear](https://github.com/vurtun/nuklear) GUI toolkit.
2020-05-29 10:32:23 +03:00
### Scientific computing
2020-01-23 13:07:06 +03:00
2020-02-15 13:14:38 +03:00
- [vsl](https://github.com/vlang/vsl) - A pure-V scientific library with a great variety of functions.
- [vtl](https://github.com/vlang/vtl) - Numerical computing library supporting n-dimensional data structure, backed by LAPACKE and OpenBLAS.
2019-12-29 08:55:45 +03:00
2020-05-28 20:42:32 +03:00
### Utility
- [range](https://github.com/Delta456/range) - Functionality of Python's range() in V.
2020-06-19 12:41:15 +03:00
- [random](https://github.com/Delta456/random) - An all purpose random library written in V.
2021-02-24 15:55:26 +03:00
- [vdotenv](https://github.com/zztkm/vdotenv) - Support for .env files which loads environment variables.
2020-05-28 20:42:32 +03:00
## Other
2020-01-23 13:07:06 +03:00
### Syntax highlighting
- [v-vim](https://github.com/ollykel/v-vim) - Support for V syntax highlighting in Vim.
- [vim-v](https://github.com/cheap-glitch/vim-v) - Quality syntax highlighting for the V programming language.
- [vscode-vlang](https://github.com/0x9ef/vscode-vlang) - V Language extension for Visual Studio Code.
- [kate-syntax-highlight-v](https://github.com/Larpon/kate-syntax-highlight-v) - V syntax highlighting for [Kate](https://kate-editor.org/).
- [scite-v-support](https://github.com/sunnylcw/scite-v-support) - V syntax highlighting for [SciTE](https://www.scintilla.org/SciTE.html).
- [language-v](https://github.com/Cutlery-Drawer/language-v) - V language support for Atom (port of vscode-vlang).
2020-09-24 19:50:17 +03:00
- [vlang-mode.el](https://github.com/Naheel-Azawy/vlang-mode.el) - Emacs major mode for the V programming language.
- [v-mode](https://github.com/damon-kwok/v-mode) - Emacs major mode for the V programming language.
2020-12-23 16:05:33 +03:00
- [vlang-sublime](https://github.com/oversoul/vlang-sublime) - Sublime text 3 Support for the Vlang Programming Language.
2020-12-23 16:29:04 +03:00
### Editor plugins
- [vim-vtools](https://github.com/zakuro9715/vim-vtools) - V tools for Vim, including auto formatting.
2021-02-27 20:25:46 +03:00
- [sublime-v](https://github.com/onerbs/sublime-v) - Fully-featured Sublime Text 3 package for the V Programming Language.
2020-12-23 16:29:04 +03:00
### GitHub actions
2020-05-10 16:45:10 +03:00
- [setup-v-action](https://github.com/marketplace/actions/setup-v-environment) - GitHub action automation to use V in your workflow.
2020-12-30 21:49:56 +03:00
- [action-create-v-docs](https://github.com/marketplace/actions/create-documentation-for-v-modules) - GitHub action to create documentation for V modules.
2020-05-28 20:42:32 +03:00
2019-10-15 12:41:04 +03:00
### Videos
2019-08-02 12:44:49 +03:00
- [V Programming Tutorials](https://www.youtube.com/watch?v=BVCuZ7z7GMY&list=PLEPMhdsq-gNpFr40A-ZnX-Hu9l-Sp5Oc_)
- [The V Programming Language](https://www.youtube.com/channel/UCLZIElNyubHOvbfudT7KS1A)
2020-01-23 13:07:06 +03:00
2020-05-29 10:32:23 +03:00
### Programming contests
2020-01-23 13:07:06 +03:00
- [Rosetta Code V](https://github.com/RustemB/rosetta-code-v) - Solutions for Rosetta Code in V.
- [Advent of Code 2019](https://github.com/mvlootman/aoc2019) - Solution of Advent of Code 2019 in V.
- [SoloLearn Coding Challenges](https://github.com/Serkonda/v-sololearn-coding-challenges) - Implementation of the SoloLearn coding challenges in V.
2019-07-15 17:46:57 +03:00
2019-10-18 15:09:05 +03:00
### Tutorials
2020-01-23 13:07:06 +03:00
2020-01-12 23:43:08 +03:00
- [Learn V in Y Minutes](https://github.com/v-community/learn_v_in_y_minutes)
2020-01-23 13:07:06 +03:00
- [V by Example](https://github.com/v-community/v_by_example) - V book as [GitBook](https://v-community.gitbook.io/v-by-example/).
2020-01-12 23:43:08 +03:00
- [V learning notes](https://github.com/lydiandy/vlang_note) - Personal learning notes in Chinese.
2019-10-18 15:09:05 +03:00
2019-11-08 17:47:36 +03:00
### Online IDEs with V
2020-01-23 13:07:06 +03:00
2020-07-01 06:30:53 +03:00
- [V Playground](https://v-wasm.now.sh/)
2019-11-08 17:47:36 +03:00
2019-12-12 03:56:03 +03:00
### Articles
2020-01-23 13:07:06 +03:00
2020-01-12 23:43:08 +03:00
- [An introduction to V](https://simonknott.de/articles/VLang.html)
- [The Book of V](https://github.com/KeyWeeUsr/the-book-of-v/)
2019-10-15 12:41:04 +03:00
2020-01-23 13:07:06 +03:00
### Communities
2020-01-12 23:43:08 +03:00
- [V Community](https://github.com/v-community)
2019-10-18 15:09:05 +03:00
### Forums
2020-01-23 13:07:06 +03:00
2020-01-12 23:43:08 +03:00
- [r/vlang](https://www.reddit.com/r/vlang)
- [Stack Overflow](https://stackoverflow.com/questions/tagged/vlang)