Vely logo Empower C
install  tutorials  examples
documentation  license  about

12.1.0 released on Sep 19, 2022

Welcome to Vely




VelyWhat is Vely


Vely is a general-purpose framework for C programming language, especially well suited for web applications.


VelyWhat's Vely like


void list_employees() {
    out-header default
    @<html><body>

    char *header = make_header(); // write any C code
    p-out header

    // Create report in outmsg string and fill it with database query result
    write-string define outmsg
        // Get data from the database
        run-query ="select name, salary from employees order by name" output name, salary
            @Name: <<query-result name>>
            @<br/>
            @Salary: <<query-result salary>>
            @<br/><br/>
        end-query
    end-write-string

    // Write report to a file and then to the client
    write-file "employees" from outmsg status define st
    if (st<0) {
        @Error in writing file (<<pf-out "%lld", st>>)
        exit-request
    } else {
        p-out outmsg
    }
    @</body></html>
}

Highlighted with Vely's syntax_highlighting using 2html.


VelyUsing Vely


Write web applications that work with standard web servers like Apache or Nginx, or command_line programs.

Database support is included (MariaDB, PostgreSQL, SQLite).

Use Vely for web applications, command-line programs, as middleware, database applications, services software, data integration, Internet Of Things (IOT)  and elsewhere. It is well-suited for cloud applications due to low resource requirements and because it is easy to containerize_applications.



VelyHow you use it


You write statement_APIs in C code just as you would any API. They are precompiled into C code, and cover just about anything: web, database, strings, files, flow and execution, encoding/encryption, time, error handling, daemon-izing code, and other common tasks (see documentation).


VelyWhy use it


Vely statements give C programmers means to develop applications they couldn't before, at least not easily. Why use Python or PHP if you can just as easily build high-performance/low-footprint web applications? Vely offers easy and rapid development, without interpreters or byte-code schemes. More on why Vely.


VelyHello World


Run hello world in minutes.


VelyStatement APIs


Each statement generates C code. They are easier to use than classic C API and largely self-explanatory. They serve the same purpose like any API, but are easier to use, maintain and more powerful.


VelyStandard interface


A Vely application works by processing standard HTTP requests. This standardizes the program interfaces across the board.

This interface is extremely simple. Each request uses a single input parameter (named "req"), that specifies a source file. So, "req=mycode" means that "mycode()" function defined in file mycode.v will execute.

Read more about vely_architecture, how_vely_works and about Vely's quality_control.



VelyMaking application


Vely creates a Makefile for you and figures out libraries that need to be used. Your source code directory will be automatically scanned and made into an application.


VelyCode generation


Suppose you write code like this:
call-web "http://website.com" response resp response-code rc \
    status len post files "file1"="uploadtest", "file23"="fileup4"

Vely will generate the C code to effectively POST a form to website.com that sends two local files to that server, and will get you the response code and status back. You can do this by using cURL library, but it will take quite a bit of C coding to do this. And there are many different combinations and things you can do, and the code gets generated to do it quickly and efficiently each time.

The same goes for exec-program, run-query, send-file, encrypt-data, etc. All these things you can program yourself in C, but these statements are flexible and will quickly and safely do what you need.



VelyGetting started


Try 123_hello_world for an application in minutes. Then, follow Hello World tutorial.

Check out tutorials and examples.



VelyQuality control


Each Vely release must pass tests on every platform where it's available before it's released. There are currently 844 such tests, see quality_control.


VelyAuthor


Sergio Mijatovic (vely@vely.dev)


VelyOfficial website


https://vely.dev


VelyBugs, enhancements, feedback


See bugs_enhancements_feedback.


Copyright (c) 2022 DaSoftver LLC. Vely is a trademark of Dasoftver LLC. The software and information herein are provided "AS IS" and without any warranties or guarantees of any kind. Icons copyright PaweĊ‚ Kuna licensed under MIT. This web page is licensed under CC-BY-SA-4.0.