18.4.0 released Sep 25, 2023
Vely framework

- What is Vely
Vely is a general-purpose framework for rapid development of high-performance software. It is especially well suited for web applications, and it's Free Open Source. Read more about-Vely.

- Why is Vely different, and why is that important
Vely is different from other frameworks because it creates C code from statements that perform entire tasks. It makes 100% native applications, without run-time layers of abstraction that may cost you dearly in performance. Why is this important? C is the fastest and most energy-efficient programming language. The computation and the Cloud are already having a staggering ecological impact. In addition, there's a bill shock, where cloud costs rank second right after payroll. Wouldn't it be great to reduce this cost from the ground up, improve customer experience, and to help the environment at the same time?

- Why you should try Vely, regardless of what you're using
If you are a C programmer, Vely is about increasing productivity and safety. If you are working with other languages, use Vely for ergonomics and boost your run-time performance.

- But I heard C is not safe
With Vely, there's no need to manage memory and worry about leaks and buffer overflows. There's no claim about 100% memory safety, because you can still use C however you want, but you probably won't, since Vely provides vast functionality already. Such a claim would mean a decline in performance through additional run-time layers, something that's rarely talked about when hyping up languages.

- Nutshell
Vely's about performance. It's also about writing a few lines of code that do a whole lot. It's about saving you time and frustration, and not compromising performance in doing so, unlike many other languages and frameworks. In a phrase, easy efficiency.

- Try it
Try Vely from prebuilt packages or from a source build.

- You've got a lot to go on
There's plenty of step-by-step and hands-on examples, and a well-written documentation.

- Latest
Vely 18.4 just came out. Check out the article about Vely on Software Development Times and the latest Hackernoon!

- Peek into Vely
Here's a snippet of Vely code. It's from SQLite example. It records temperatures and time they were taken (request URL "/temphist/action/record"), and also lists a history of recordings (request URL "/temphist/action/list"):
#include "vely.h"

request-handler /temphist
    out-header default

    task-param action

    if-task "record"
        input-param temp
        run-query @db_utility = "insert into temps (temp, timest) values ('%s', current_timestamp)" : temp \
            affected-rows define rc error-text define er no-loop
        if (rc != 1) {
            @Could not insert temperature reading, error <<p-out er>>.
        } else {
            @Temperature reading stored.
        }
    else-task "list"
        run-query @db_utility = "select temp, timest from temps order by timest" output temp, timest
            @Date: <<query-result  timest>>
            @Temperature: <<query-result  temp>>
        end-query
    end-task
end-request-handler

In another example (web file manager (with PostgreSQL)), here's how simple it is to upload a file to the server:
#include "vely.h"

request-handler /upload
   out-header default

   input-param filedesc      // file description from the upload form
   input-param file_filename // file name
   input-param file_location // the path to uploaded file
   input-param file_size     // size in bytes
   input-param file_ext      // the file extension

   @<h2>Uploading file</h2>

   // insert the information about the file into the database
   run-query @db_file_manager= \
        "insert into files (fileName, localPath, extension, description, fileSize) \
            values ('%s', '%s', '%s', '%s', '%s')" \
        input file_filename, file_location, file_ext, filedesc, file_size
   end-query

   @File <<p-web file_filename>> of size <<p-web file_size>> \
        is stored on server at <<p-web file_location>>. \
        File description is <<p-web filedesc>>.<hr/>
end-request-handler



You are free to copy, redistribute and adapt this web page (even commercially), as long as you give credit and provide a link back to this page (dofollow) - see full license at CC-BY-4.0. Copyright (c) 2019-2023 Dasoftver LLC. Vely and elephant logo are trademarks of Dasoftver LLC. The software and information on this web site are provided "AS IS" and without any warranties or guarantees of any kind.