<commit_before>TODO List
====
() Add support for wild cards:  /hello/*

() Add support for name binding in url: /hello/:name where :name becomes a key in the parameter list and what ever appears at :name becomes the value

() Convert into a lib

() Make Autoconf work.

() Create \lib directory for lib files.

() Create \sample directory for sample programs

() Fill out documentation.

Getting Started
====

The inspiration for the framework came from Sinatra, hence the name Dino or <NAME>. 

Dino is a simple web framework for quickly creating web applications in C with minimal effort.  

Simply include the Dino header:

~~~C
#include <stdio.h>
#include <string.h>
#include "dino.h"  /* <--- Here is the header you need */
~~~

Include the dino.lib in your project.

Define a route by binding it to a path:

~~~C
int main(int argc, const char * argv[])
{
    int port = 3030;
    char *host = "localhost";
    
    DINO_CONFIG_START(port, host);
        ROUTE_GET(amor, "/")
    DINO_CONFIG_END;
    
    DINO_START;
    
    return 0;
}
~~~

Then define a function that will be called when the route is invoked on a given path:

~~~C
GET(amor)
{
    char *lyrics = "When the moon hits you eye like a big pizza pie\n That's amore!\n";
    
    RESPONSE_SEND(lyrics, strlen(lyrics));

    return HTTP_ERROR_CODE_OK;
}
~~~

So your simple program should look something like:

~~~C
#include <stdio.h>
#include <string.h>
#include "dino.h"  /* <--- Here is the header you need */

GET(amor)
{
    char *lyrics = "When the moon hits you eye like a big pizza pie\n That's amore!\n";
    
    RESPONSE_SEND(lyrics, strlen(lyrics));

    return HTTP_ERROR_CODE_OK;
}

int main(int argc, const char * argv[])
{
    int port = 3030;
    char *host = "localhost";
    
    DINO_CONFIG_START(port, host);
        ROUTE_GET(amor, "/")
    DINO_CONFIG_END;
    
    DINO_START;
    
    return 0;
}
~~~

That's it! Fire up a browser and point it at http://localhost:3030



<commit_msg>just to see it works , also we should have a makefile<commit_after>TODO List
====
() Add support for wild cards:  /hello/*

() Add support for name binding in url: /hello/:name where :name becomes a key in the parameter list and what ever appears at :name becomes the value

() Convert into a lib

() Make Autoconf work.

() Create \lib directory for lib files.

() Create \sample directory for sample programs

() Fill out documentation.

() Add makefile
Getting Started
====

The inspiration for the framework came from Sinatra, hence the name Dino or Dean Martin. 

Dino is a simple web framework for quickly creating web applications in C with minimal effort.  

Simply include the Dino header:

~~~C
#include <stdio.h>
#include <string.h>
#include "dino.h"  /* <--- Here is the header you need */
~~~

Include the dino.lib in your project.

Define a route by binding it to a path:

~~~C
int main(int argc, const char * argv[])
{
    int port = 3030;
    char *host = "localhost";
    
    DINO_CONFIG_START(port, host);
        ROUTE_GET(amor, "/")
    DINO_CONFIG_END;
    
    DINO_START;
    
    return 0;
}
~~~

Then define a function that will be called when the route is invoked on a given path:

~~~C
GET(amor)
{
    char *lyrics = "When the moon hits you eye like a big pizza pie\n That's amore!\n";
    
    RESPONSE_SEND(lyrics, strlen(lyrics));

    return HTTP_ERROR_CODE_OK;
}
~~~

So your simple program should look something like:

~~~C
#include <stdio.h>
#include <string.h>
#include "dino.h"  /* <--- Here is the header you need */

GET(amor)
{
    char *lyrics = "When the moon hits you eye like a big pizza pie\n That's amore!\n";
    
    RESPONSE_SEND(lyrics, strlen(lyrics));

    return HTTP_ERROR_CODE_OK;
}

int main(int argc, const char * argv[])
{
    int port = 3030;
    char *host = "localhost";
    
    DINO_CONFIG_START(port, host);
        ROUTE_GET(amor, "/")
    DINO_CONFIG_END;
    
    DINO_START;
    
    return 0;
}
~~~

That's it! Fire up a browser and point it at http://localhost:3030




{'fraction_non_alphanumeric': 0.10828976848394324, 'fraction_numerical': 0.0069703759024147376, 'mean_word_length': 3.0833333333333335, 'pattern_counts': {'":': 0, '<': 16, '<?xml version=': 0, '>': 12, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6357595', 'n_tokens_mistral': 1386, 'n_tokens_neox': 1314, 'n_words': 513}