The various tools, libraries, services and languages we use at JustChunks. JustChunks is Minecraft-Network that is dedicated to the Minecraft-Java-Version.


  • IntelliJ IDEA is our polyglot IDE of choice. We use it esentially for all programming and coding aswell as some basic database management and planning. IntelliJ IDEA has proven to be a reliable companion in developing our various software.


  • We use Google Analytics to analyze our traffic and optimize our content for our users. We use it to sew perfectly fitting solutions according to use patterns of our community.


  • With nginx we deploy all web content and use it as a reverse-proxy for unified ssl and encryption aswell as a burst-control and traffic filter for all web-traffic.


  • As we use the Woltlab Suite Core, we are bound to PHP and use it with the PHP-FPM, version 7.1. We also use it for some WSC-embedded cron-scheduling and internal web-interfaces.


  • We use JavaScript to create eye-pleasing animations and dynamic content on our website and to create web-sockets and interactive sockets to enable live-features to create a unique way of interacting with our website.


  • Git has rendered itself to be an integral part of all development at JustChunks. We heavily rely on Git as our version-control-system of choice and use branches, tags and decentralized-development to achieve our software-management-goals.


  • We formerly used MySQL instead of MariaDB but shifted exclusively to the latter. MySQL is a part of our Stack anyways, as we still use the MySQL-Syntax/Architecture.


  • We exclusively use HTML5 instead of XHTML (or even older) HTML-versions. We like the new unity that HTML5 offers and try to keep our code according to the conventions.


  • Shouldn't surprise anyone, as minecraft is also java-based. Java is used for much more than just the plugins though. JCVortex (our API) is also served with vert.x (Java) and many of our team-internal tools also originated from java or are still java-applications.


  • DigitalOcean offers us everything we need to test out specific scenarios or we expect from small-servers like our monitoring-system. We also use digital-ocean in long-term and are very satisfied with their performance and scalability.


  • Stripe is used as one of our payment-gateways included in our shop-solution. We only use the credit-card features of it and don't accept any bitcoins (yet).


  • Gitlab offers us a self-hosted replacement for Github and even more than we were expecting from it. All of our code is hosted in our private GitLab-instance, that also hosts our artifacts and is used to deploy them into production.


  • The Android SDK is the key-component of all Android-based development and had to be included in this stack for sure. We work with the SDK through IntelliJ IDEA and the command-line.


  • We use Ubuntu for our more bleeding-edge servers like the web-server that heavily rely on modern ciphers and negotiation protocols like ALPN, aswell as for things that are included within ubuntus package-sources, but not within debians.


  • PayPal is used as one of our payment-gateways included in our shop-solution. We only use PayPal for direct debits/charges from bank-accounts as we got Stripe for credit-card transactions.


  • Stack overflow HAD to be included in this list. We can't count the endless hours stack overflow and its huge community has already saved us and will potentially save us in the future. Stack Overflow is the proof that nearly every problem one may experience, another one has already solved.


  • All Java-Projects are compiled using Maven. We prefer it over Ant and Gradle as it combines lightweightness with feature-richness and offers basically all we can imagine from a software project-management tool and more.


  • Aside from Redis, we use MariaDB to store long-term information like user-data and big-data like regeneration-information for our open-world servers. We extensively use the relational aspects of MariaDB in joins, nested queries and unions.


  • Docker is used as a key part of our new type of infrastructure that relies exclusively on containers. We prefer docker since it offers us all we need in a very stable and battle-proven manner.


  • We make extensive use of Redis for our caches and use it as a way to save "semi-permanent" stuff like user-submit settings (that get refreshed on each login) or cooldowns that expire very fast.


  • Debian is our primary distribution for our game-servers for the time being. We plan to shift our infrastructure towards Docker-Containers/CoreOS though.


  • Firebase is included within our Android- and iOS-App so that we can react and monitor our mobile Applications in a flexible and dynamic fashion. This way we can react on occuring errors fast and reliable.


  • Sass is used as a part of Woltlab Suite Core, which offers to submit/configure own styles via the injection of own Sass-CSS. So we exclusively rely on Sass for our CSS needs.


  • Google Drive acts as our productivity-hub but will soon be replaced by a more suiting solution, that will be self-hosted. For the moment we are very satisfied with Google Drive, but it lacks group- and recursive-permissions for us.


  • We use Sentry to gather our thrown non-checked exceptions in one place, so we don't have to crawl through all our logs manually. All standalone-applications, our website aswell as our game-servers are linked into sentry.


  • Grafana is used in combination with Prometheus to display the gathered stats and to monitor our physical servers aswell as their virtual applications. We also use Grafana to get notifications about irregularities.


  • We primarily use Prometheus to gather metrics and statistics to display them in Grafana. Aside from that we poll Prometheus for our orchestration-solution "JCOverseer" to determine, which host is least occupied at the moment.


  • As the basis of our new infrastructure, we use CoreOS as a reliable solution for our docker-server-instances. We plan to deploy all our servers as individual docker containers to make use of the extensive possibilties offered in terms of isolation, resource-managemant (cgroups) and scalability.


  • gulp is used to package our plugins for the WSC (Woltlab Suite Core) in a fast, convenient and code-driven way. We enjoy the comfort it offers with stuff like the gzip-plugin or tar-packing.


  • We use Postman in conjunction with our universal REST-API "JCVortex". Postman makes testing edge-cases hassle-free and lets testing look easy. Postman was also a great help to explore the Mojang-API, that we are dependent on, because it is the central repository for minecraft-account-data.


  • Node.js is used for interactive parts of our homepage, cronjobs and building (gulp). The great performance and asynchronity makes a trustworthy companion in developing live web-parts (socket.io).


  • jQuery is only used in small amounts, primarily for animations and UIs, but it is included in the WSC, so we felt like not including it here would be kind of cheating. jQuery also almost makes ajax-requests a pleasure to work with, so ... you got that point, jQuery.


  • Python is used as the language for our internal Quest-API for the RPG-Server, but also used for out bot-testing-script to benchmark our Minecraft-servers against heavy workload.


  • We organize our TODOs, that are not covered by the Bugtracker withing Trello. Trello is easy to use, reactive and free. We worked with Trello in the past and had good memories of it, so we gave it a try and stayed.


  • We use Ansible to synchronize the few configuration-options we've taken on our CoreOS-Machines. This makes deployment even easier and the fact that it's Agentless made the decision even easier.


  • Aside from our Minecraft-infrastructure, we compose it with ... Docker Compose! (kinda obious, eh .. ?) This includes for example the web-services, aswell as the monitoring and mail-infrastructure.


  • The first certs we got issued were EV SSL certificates from Comodo, but we later decided that we do not want to support the whole CA-thing anymore as they constantly get abused and take tremendous amounts of cash in exchange, so we work with Let's Encrypt since over a year.


  • We first used slack and switched to Discord later to stay near at where the community is at, while still be able to have private conversations and stay in contact. Discord offered everything we needed and used from Slack previously, plus the community-part, so it was an easy decision.



Verified by
Stack Match

Favorite
4
Views
352


Favorite
Views
352