hhandoko / sslakka

A Slack-inspired team messaging and collaboration tool based on ServiceStack + Akka.NET

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

License Master Build Status Master Build Status

sslakka Console

sslakka = ServiceStack + Akka.NET

sslakka is a team communication and collaboration tool inspired by Slack, to demonstrate and validate ServiceStack and Akka.NET technology stack working in harmony. Visit sslakka.herokuapp.com to see it in action.

Feel free to open any Pull Request (PR) or issues if you see things that can be improved or fixed. Visit sslakka HuBoard for its development roadmap.

NOTE: You will need an active ServiceStack subscription to develop and run this application.

Prerequisites

Develop and Compile Dependencies

The application is developed and tested on the following platform and services (i.e. tech stack):

IDEs (Integrated Development Environment) are a matter of preference, however this application is being developed using various IDEs on OSX El Capitan and Ubuntu 14.04 LTS interchangeably:

NOTE: JetBrains Rider is still in preview, thus for a number of tasks (e.g. bootstrapping) Xamarin Studio or MonoDevelop is more suitable. However, the above goes to show that the application can be developed on either IDEs on either OS.

Services Dependencies

Vagrant is used to provision the necessary services (e.g. database) in an Ubuntu guest VM (1 core, 1GB RAM). The following applications are required to be installed to suport it:

Quick Vagrant command list (run it in the project root directory):

  • vagrant up provisions the services VM
  • vagrant status show the services VM status
  • vagrant global-status show all Vagrant VM on the machine
  • vagrant halt suspends the services VM
  • vagrant destroy deletes the services VM

The following Vagrant plugin is not mandatory, but help speed up box provisioning by caching common packages on subsequent provisioning:

NOTE: PostgreSQL will be available on localhost:15432 or 192.168.100.10:5432. PostgreSQL localhost port forwarding is setup at port 15432 to avoid conflict with existing PostgreSQL installation.

Contributing

We follow the "fork-and-pull" Git workflow.

  1. Fork the repo on GitHub
  2. Commit changes to a branch in your fork (use snake_case convention):
    • For technical chores, use chore/ prefix followed by the short description, e.g. chore/do_this_chore
    • For new features, use feature/ prefix followed by the feature name, e.g. feature/feature_name
    • For bug fixes, use bug/ prefix followed by the short description, e.g. bug/fix_this_bug
  3. Rebase or merge from "upstream"
  4. Submit a PR "upstream" with your changes

Please read CONTRIBUTING for more details.

License

sslakka is released under the Apache 2 License. See the LICENSE file for further details.

Thanks

"If I have seen further, it is by standing on the shoulder of giants." http://en.wikipedia.org/wiki/Standing_on_the_shoulders_of_giants

Many thanks to all you developers and open-source contributors who made this project possible :)

About

A Slack-inspired team messaging and collaboration tool based on ServiceStack + Akka.NET

License:Apache License 2.0


Languages

Language:C# 100.0%