Giter Site home page Giter Site logo

blubbizmb / wwwconf Goto Github PK

View Code? Open in Web Editor NEW

This project forked from nable80/wwwconf

0.0 2.0 0.0 559 KB

Exported from https://code.google.com/archive/p/wwwconf/ for the further development.

Makefile 0.18% C++ 85.48% C 12.31% Python 0.76% CSS 0.58% JavaScript 0.69%

wwwconf's Introduction

wwwconf - fast engine for tree-structured forums (boards).

Exported from https://code.google.com/archive/p/wwwconf/ for the further development.

License: GNU GPL v3.

Main goals:

  • Fast rendering of all pages.
  • Minimal list of dependencies and low footprint (resource usage).
  • Compatibility with "special" clients - it must work even without JS and it shouldn't behave badly under such conditions.
  • Unicode characters shouldn't be able to break things and should be supported as much as possible.

Disclaimer: this is a legacy software written in C with random bits in C++. Most of the development was focused on premature optimizations. Code quality was (and still is) quite low. You've been warned.

Building from source.

Due to bad usage of C types currently only 32-bit little-endian platforms are supported.

Other requirements: Make, C++ compiler (both GCC and Clang are tested) and UNIX-like environment. Native Win32 support didn't worth the efforts to support it and was dropped long ago, use Cygwin or similar libraries if you really need it.

For 32-bit Debian (and its derivatives) you should install libc6-dev and g++, clang is also a good choice. For 64-bit Debian you'd need libc6-dev-i386 (or libc6-dev:i386 if you've added i386 architecture) and g++-multilib or clang.

I hope you've got the idea in case you are using one of the other OSes. Now you can just run make and get two binaries:

  • dbtool - CLI tool for operations with the custom DB.
  • index.cgi - forum engine itself, it requires CGI-compliant HTTP server.

Testing and running.

As it was already mentioned, CGI-compliant HTTP server is required. You can choose Nginx + uwsgi (or fcgi-wrap), Lighttpd, Boa, etc...

Here's a simple way to get started (don't forget to install uwsgi-core):

# create initial database
./dbtool -n
# (optional step) create user 'Admin' with password 'AdminPass':
./dbtool -aa Admin AdminPass
# run single uwsgi worker (no master process) in CGI mode, bind it to port 7542.
uwsgi-core --plugins http,cgi --http-socket :7542 --cgi . --cgi-allowed-ext .cgi --http-socket-modifier1 9 --check-static static

Then you can go to http://127.0.0.1:7542/index.cgi to see a working board.

wwwconf's People

Contributors

eshch avatar nable80 avatar blubbizmb avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.