Giter VIP home page Giter VIP logo

wonky's Introduction

wonky

Build Status codecov.io

Wonky is a port of slacking, to the JVM written in Java and Micronaut.

Features

  • A landing page you can point users to fill in their emails and receive an invite (http://slack.yourdomain.com)

Build

Docker Engine

Requirements

"JDK"

Slack token

To build & run wonky you need a Slack API token. Note that the user you use to generate the token must be an admin. You may want to create a dedicated @wonky-inviter user (or similar) for this.

You can find your API token here

Once you have the token, you need to write the configuration file.

Configuration file

The configuration file is very simple to write, it's a YAML.

Single Slack organization
- !!wonky.service.SlackOrganization
  token: "xoxp-..."
  wonkyDomain: "localhost:8080"

NOTE: Wonky supports multiple organizations (aka multitenancy), Wonky will use the domain (HOST http header) to select the right token. Consider this.

Multiple Slack organizations
- !!wonky.service.SlackOrganization
  token: "xoxp-..."
  wonkyDomain: "localhost:8080"
- !!wonky.service.SlackOrganization
  token: "xoxp-..."
  wonkyDomain: "slack.myorganization.com"
Recomendation

We strongly recommend you write and name the config file as orgs_ignored.yaml and save it to the root source of wonky, in git is marked as ignored.

Environment variables

In order to run properly the test, you have to provide the following Environment Variables;

  • WONKY_TENANTS_FILE
  • WONKY_TEST_EMAIL_PREFIX

You can configued as follows in the shell:

$ export WONKY_TENANTS_FILE=./orgs_ignored.yaml
$ export WONKY_TEST_EMAIL_PREFIX=something

Now you can build wonky from source :)

Building from source

$ ./gradlew clean build

Run

By default wonky runs on port 8080, as any Micronaut application you can chance the port as you wish.

$ ./gradlew run  

Alternatively, you can run Wonky with Docker as a container:

$ docker run --rm -p 8080:8080 -v `pwd`/orgs_ignored.yaml:/etc/wonky/tenants.yaml  domix/wonky:0.3.7

Communities using Wonky

Development badges

codecov.io

wonky's People

Contributors

antoniovl avatar domix avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

wonky's Issues

Migrar el proyecto a Java 21

Es importante migrar/actualizar el JRE y posteriormente sacar ventaja de las APIs o features de Java 21 en la base de código.

Tareas a realizar

Actualizar el Build Tool

Actualizar Micronaut

  • Actualizar a Micronaut 4

Migración a Java 21

  • Contruir en Java 21, pero con el targetCompatibility actual (Java 17)
  • Actualizar la imagen base del contenedor de Wonky a JRE 21 (Corretto, Azul...) y desplegar esa versión.
  • Construir con sourceCompatibility y targetCompatibility Java 21, desplegar esta versión

Add background image to signup page

The default background for signup page should be a blank background, it can be configure in two ways:

  • A set of images, random picked when a user load the page
  • A mosaic with the registered users' avatars

Wonky documentation

The documentation should contain

  • General information
  • Configuration
    • How to setup multitenacy
  • AsciiDoc
  • Deploy website

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.