HIX - Harbour web server

hua
Posts: 1109
Joined: Fri Oct 28, 2005 2:27 am
Has thanked: 14 times
Been thanked: 3 times

Re: HIX - Harbour web server

Post by hua »

I just noticed that now there is hix ver 2.00.03 and it's not backward compatible with hix ver 1.x

FWH 11.08/FWH 19.12
BCC5.82/BCC7.3
xHarbour/Harbour
User avatar
Carles
Posts: 1297
Joined: Fri Feb 10, 2006 2:34 pm
Location: Barcelona
Has thanked: 3 times
Been thanked: 54 times
Contact:

Re: HIX - Harbour web server

Post by Carles »

Hua,

Four months ago, I ran an exhaustive AI test to check the consistency of HIX vs. 1.0, and I was astounded by the number of shortcomings it had. As many of you know, HIX was based on the Mindaguas server, and I kept evolving it. The system kept evolving, but all these shortcomings were impossible to fix on the old server; it was an architectural problem that couldn't be resolved.

It was at this point that I decided to refactor the entire server from scratch, with a modern architecture that would adapt to most situations. The system is on GitHub; all the source code is ready to compile, and anyone can add their own libraries if needed: ads, MySQL, etc.

https://github.com/carles9000/hix

The flow is the same, but better structured and more consistent. If you've used the older version of Hix, it's even easier to use.

1 Create Route /routes/web.json

Code: Select all | Expand

{ "name": "hello", "url": "/hello", "action": "controllers/hello.prg", "method": "GET" }

2 Create Controller /controllers/hello.prg

Code: Select all | Expand

FUNCTION Main()

   LOCAL hMyData := { 'name' => 'Hal', ;
                      'now'  => dtoc(date()) + ' ' + time() }

RETURN UView( 'hello.html', hMyData )

3 Create View /views/hello.html

Code: Select all | Expand

@args hData := {=>}

<html>
   <h1>Hi {{ hData[ 'name' ] }}...</h1>
   <hr>
   <small>Request at {{ hData[ 'now' ] }}</small>
</html>

You can see how it works here https://hi.hixbase.net/

This same example is also available in the repository -> https://github.com/carles9000/hix/tree/ ... les/web/hi

All these changes are the reason why the two versions could not be compatible, i hope the situation is clear. I honestly believe it's the best harbour web server available today :D

C.

Salutacions, saludos, regards

"...programar es fácil, hacer programas es difícil..."

UT Page -> https://carles9000.github.io/
Forum UT -> https://discord.gg/bq8a9yGMWh
HIX -> https://github.com/carles9000/hix
hua
Posts: 1109
Joined: Fri Oct 28, 2005 2:27 am
Has thanked: 14 times
Been thanked: 3 times

Re: HIX - Harbour web server

Post by hua »

When I run hix.exe 2.0 it immediately starts the web server.
If I press Esc it exits hix.exe entirely.
How do I access the configuration as in previous Hix 1.3 such as the route, folder etc?

Thank you

FWH 11.08/FWH 19.12
BCC5.82/BCC7.3
xHarbour/Harbour
hua
Posts: 1109
Joined: Fri Oct 28, 2005 2:27 am
Has thanked: 14 times
Been thanked: 3 times

Re: HIX - Harbour web server

Post by hua »

hua wrote: Fri Sep 11, 2026 4:01 am

When I run hix.exe 2.0 it immediately starts the web server.
If I press Esc it exits hix.exe entirely.
How do I access the configuration as in previous Hix 1.3 such as the route, folder etc?

For hix 1.3a, how to enable developer mode because i want to investigate why localhost/test.prg returns 404 when test.prg is corrrectly placed in the root folder

Thank you

Last edited by hua on Mon Sep 14, 2026 3:45 am, edited 1 time in total.
FWH 11.08/FWH 19.12
BCC5.82/BCC7.3
xHarbour/Harbour
User avatar
Carles
Posts: 1297
Joined: Fri Feb 10, 2006 2:34 pm
Location: Barcelona
Has thanked: 3 times
Been thanked: 54 times
Contact:

Re: HIX - Harbour web server

Post by Carles »

Hi

hua wrote: Fri Sep 11, 2026 4:01 am

How do I access the configuration as in previous Hix 1.3 such as the route, folder etc?

https://carles9000.github.io/hix/

C.

Salutacions, saludos, regards

"...programar es fácil, hacer programas es difícil..."

UT Page -> https://carles9000.github.io/
Forum UT -> https://discord.gg/bq8a9yGMWh
HIX -> https://github.com/carles9000/hix
Post Reply