Responsive webdesign layout for TLK v2.0

Issue #33 open
Yell0w created an issue

We are currently discussing the layout of the "engine/api", database and front-end of TLK v2.0 (complete rewrite). We are looking for feedback of other webdevelopers on our plans as we are not the most experienced web developers.

The goals of TLK v2.0:

  • Responsive website using http2 connections.
  • A clear seperations of tasks.
  • Support multiple platforms.
  • Increase speed.
  • Create an API.
  • Way more flexible for future changes.
  • Use the latest technologies.

Back-end: We are currently thinking about running the server back-end on Jetty (in Java), which is a commenly used back-end engine. This engine uses an event driven architecture, where the server and the front-end can communicate back and forth. This will take requests and return requested data or results in the form of JSON, which means this can work as a public API.

Front-end: The front-end, in jquery, will create a connection with the server and send/receive events with data. Once the data is retrieved it will interpret the data and update the html to display it. This means that the base-page of tlk (left bar, top bar, bottom etc..) can be a standard html template and the middle div will be update occording to events and received data (responsive design).

Phone application: We should be able to expand to the android / IOS platforms easely since the back-end will now only return JSON and the front-end of those platforms can interpret the data as they see fit.

Database: The database will be redesign completly to be way more optimized, but also flexible. In addition, we will make use of the functionalities of java to store much used variables in the server memory (memory database) instead of only the database.

Please let us know what you think about the choices. Let us know if you have any experience with Jetty or this type of webdesign. I am interested to know if anyone has any better suggestion about the architectural design.

To summirize: Back-end (Server/API) is in Java with the Jetty engine. It will return JSON data structures and the front-end will take input from the players in jquery and translate the received JSON into HTML to display.

Comments (12)

  1. Mats Schjølberg

    What more the Jetty are you thinking for the backend? Since last time I checked Jetty is just the webserver.

    And yes, i do have some experience. I've worked as a java developer and have written several soap services and rest services.

  2. CM Azwar

    front end is fine in php (since its text based game so responsiveness is not a big issue). Java is fine for server end but i personally would prefer node.js ( javascript ). but choice of language all depends on developer. every language have pros and cons . if plan is a public api thn u dont have to worry about apps. players can develope their own clients using api :P (and api is most exciting thing in this whole topic) :D

  3. Yell0w reporter

    Mats, Besides jetty we will just use normal sql commands to communicate with the database, I am honestly not aware of any more things we need (I never did much webdevelopment).

    Azwar, responsiveness is something I personally really want, we have a lot places where people spam F5 (near tick, for drops, pvp etc...) with a responsive webdesign we can basically remove any need of refreshing. It also brings the website to this century :P Language wise, Java is chosen because I got experience in it and is lower level (Which helps me), jquery is easy for responsive websites I believe.

  4. Mats Schjølberg

    You still need some kind of layer beetween jetty and the DB queries. If you want an api. My tip is spring and jackson for the json support. It's less code to get something up and you only need some jpa annotations instead of alot of code to get websockets or something similar up. -Skummel

  5. CM Azwar

    what i mean was responsiveness isnt that much difficult to code for a text based page and yes as i said choice of language is on developers capabilities and MATS i believe we dont need any abstraction layer between java and sql :p

  6. Bogdan Mariesan

    If you need any help on the Java API and/or Frontend (though I'm not that good at CSS) I can surely help you guys. I have almost 6 years of experience in Software Engineering on Java projects.

  7. Log in to comment