Giter Club home page Giter Club logo

klangkeller-website's Introduction

KLANGKELLER

Website and booking platform for klangkeller

This is not a template repo, it contains documentation files specific to this instance. This may be improved in the future, but for now that's the way it is. If you want to deploy your own instance, clone this repo and then delete folders in public/documentation and views/documentation (leave to the root view documentation.ejs). Then you can configure the site following the instructions below.


Requirements

For development, you will need Node.js and a node global package. In addition to this you will need either mongodb running locally or to run using docker.

Node

Node installation on Ubuntu

You can install nodejs and npm easily with apt install, just run the following commands.

  $ sudo apt install nodejs
  $ sudo apt install npm

Install

$ git clone https://github.com/sandreae/klangkeller-website
$ cd klangkeller-website
$ npm install

Configure app

Edit config/default.json with your own information, it might look something like this:

{
    "Site": {
        "title": "KLANGKELLER",
        "venues": ["kino", "keller", "hof"],
        "organisers": [{"name": "organiser1", "email": "organiser1[at]klangkeller.net"},{"name": "organiser2", "email": "organiser2[at]klangkeller.net"}],
        "dbString": null,
        "user": "admin",
        "password": "change-me-bad-password",
        "contentPath": "default"
    }
}

You also need to set these environment variables:

MONGO_URL=db_string
USER=admin
PASSWORD=password
NODE_APP_INSTANCE=default

These overide the variables dbString, user and password in the config file above and should be set for security reasons.

If you want to run multiple instances of this app, deployed from the same repo, you can configure this by creating new config and content files and setting the NODE_APP_INSTANCE appropriately.

Running the project

# run app
$ npm start

# Run in development mode
$ npm run dev

# Lint code
$ npm run lint

Docker

Locally

# run app and db in container
$ docker-compose up

TODO

Improve how documentation is handled. Currently it is manually placed in named folders in public/document and corresponding ejs template files must be created.

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.