app | ||
Mourne-CI | ||
www | ||
.clang-format | ||
.clangd | ||
.gitignore | ||
build.config.example | ||
build.sh | ||
HEADS | ||
LICENSE | ||
main.cpp | ||
migrate.sh | ||
Readme.md | ||
run.sh | ||
SConstruct |
Mourne
An old village builder / hero manager web rpg that I originally wrote using Code Igniter 3 ported to rcpp_framework.
The original code is under the Mourne-CI
folder. I wrote this about 9 years ago. I only have the application code in the folder.
I decided not to commit the framework code itself to minimize the chance of committing passwords, or stray temp files and such.
This was my first bigger app, so even though when I wrote this I did pay attention to make it secure (it's probably not that bad), however it's still
probably not a good idea to use it as it is.
This is highly experimental stuff. It probably shouldn't be used by anyone who's sane.
Note: this readme has been taken from an another project of mine, it will be updated later.
Compilation
Will only work on linux! Works on the rasberry pi.
Dependencies
Arch/Manjaro:
pacman -S --needed scons pkgconf gcc yasm
Debian/Raspian:
sudo apt-get install build-essential scons pkg-config libudev-dev yasm
Optionally if you install MariaDB/MySQL and/or PostgreSQL the compile system should pick it up. Make sure to get a version whoch contains the development headers (A bunch of .h files).
Initial setup
clone this repo, then call scons
, it will clone rcpp cms into a new engine directory. Run this every time you update the project.
You don't have to run it before / between builds.
# git clone https://github.com/Relintai/mourne.git mourne
# cd crystal_cms
# scons
Now you can build the project like: scons bl
. ([b]uild [l]inux)
Adding -jX to the build command will run the build on that many threads. Like: scons bl -j4
.
# scons bl -j4
- or -
# ./build.sh
Now you can run it.
First run migrations, this will create the necessary database tables:
# ./engine/bin/server m
- or -
# ./migrate.sh
Now you can start the server:
# ./engine/bin/server
- or -
# ./run.sh
Make sure to run it from the project's directory, as it needs data files.
Now just open http://127.0.0.1:8080
You can push floats to the "a/b" MQTT topics, and the new values will be save in the database.sqlite
file, and will appear
in your browser.
Structure
The main Application implementation is app/ic_application.h
.
The main.cpp
contains the initialization code for the framework.
The content/www
folder is the wwwroot.