Erlang Creative Forum
Erlang Creative Forum (ECF) is intended to be a very simple forum host, similar
to SMF or vBulletin or the like, but very lightweight and fast. It’s still very
early in development so it’s missing a lot of features, and I would (currently)
recommend against using it. Feel free to take a look around the code though!
Just keep in mind that this is a big giant mess of testing random junk so
everything is super inconsistent and weird :P
At the bare minimum, ECF still needs the following:
So that ECF is reasonably useable, I’d like to add the following as well:
And these would be nice to get:
Erlang/OTP 20
Currently there is no real installation process. However, testing ECF is very
simple since it uses erlang.mk. Simply make run
and it
will start it listening on port 8080 and drop you into an Erlang REPL. The first
time you start it up, be sure to use ecf_db:install().
to create and setup the
database. After that if you change the backing records you will need to either
delete and recreate the Mnesia database, or call mnesia:transform_table/3
.
I’d recommend leaving sys.config alone and editing private.config with all of
your needed configuration.
TODO: Describe all configuration options.
You will need to set the following app env variables:
captcha_key
: reCAPTCHA site keycaptcha_secret
: reCAPTCHA site secrethost
: The domain name that the forum is hosted on<<"example.com">>
base_url
: The “base” url of the forum, use a leading slash but no trailing"/ecf"
, "/forum"
email_addr
: The address to send email as<<"ecf@example.com">>
email_relay
: The host to use as a relayemail_login
: {Username, Password}
if your relay requires authentication,false
if it doesn’t (e.g. if you’re using a relay on localhost).email_host
: The host to EHLO as when sending email, set to false
to usehost
forum_name
: The name of your forum.http
: false
or a port number.https
: false
or {Port, CertFile, KeyFile}
.So when setting up ECF behind an HTTPS-serving reverse proxy, you’ll want to sethttp
to the local port (such as 8080, the default), and https
to false
(also the default).
If you want ECF to server HTTPS traffic directly, set http
to false
and thenhttps
to the required things. Note that they must be strings and not binaries.
The PEM file pointed at CertFile
may also contain the private key. If that’s
the case, then KeyFile
should be false
.
Please note that ECF does not support using HTTP unless behind a reverse proxy
that serves HTTPS. This will not change.
Also note that ECF does not currently support using a HTTPS-serving proxy that
in turn connects to ECF using HTTPS. It should be supported in the future
though.
ECF is under the AGPL 3.0, you may find a copy of it in LICENSE.
ECF makes use of the following third-party software: