Arimaa Forum (http://arimaa.com/arimaa/forum/cgi/YaBB.cgi)
Arimaa >> Site Discussion >> Arimaa community website
(Message started by: Brendan_M on May 5th, 2015, 6:10pm)

Title: Arimaa community website
Post by Brendan_M on May 5th, 2015, 6:10pm
Omar and lightvector have been talking about potentially opening up arimaa website development so it is a shared open-source project

I know lots of people have written various tools, websites and clients for arimaa. Doing a project like this on your own is often just too much to do - I personally have found this. However if we all can work together on the same codebase with the backing of Omar this could really begin a new phase for arimaa.  

If anyone is interested in contributing to this then please say so here and we can start to thrash out a plan


Title: Re: Arimaa community website
Post by lightvector on May 5th, 2015, 6:43pm
Thanks to Brendan for taking the initiative to open this thread!

I've talked to Omar and he has no objections to the beginning of a new website, and would be happy to okay the project (as a non-commercial project it would fall under the third section of the Arimaa public license).

Omar also said that he would prefer relatively minimal involvement if any, given his desire to move on to other things after having put so much time into the current site. So I'm envisioning that this will pretty much be a new site (and regardless it would probably be best to redesign the infrastructure ground-up anyways).

Who is interested in helping? Let's form a team and find a time to talk and plan things out!


Title: Re: Arimaa community website
Post by arimaaisagame on May 6th, 2015, 2:38am
I'd love to contribute. I can do iOS, android, and some webdev.

Title: Re: Arimaa community website
Post by mattj256 on May 6th, 2015, 9:30am

on 05/05/15 at 18:43:49, lightvector wrote:
Who is interested in helping? Let's form a team and find a time to talk and plan things out!
Me!  My skills really aren't THAT strong and I look at this as a learning opportunity.  I can't make a major time commitment but I definitely want to help.

At my day job I do full-stack web development (Java, JSP, Apache/Tomcat, Struts, Hibernate, PostgreSQL, JavaScript, jQuery, CSS).  We also use Amazon Web Services for cloud computing, so I know that stuff as well.  (Cloud computing is mainly useful when you need to scale for large volumes of traffic or data.)

Is the codebase going to be open source and public?  I definitely want to be able to put this on my resume.

Title: Re: Arimaa community website
Post by lightvector on May 7th, 2015, 10:21pm
Fantastic. Yes, I at least would want the code to be open-source, as I think the main way that this is going to work is if it's shared across multiple people and has the ability to change hands as time goes on. This is in contrast to the current website which is largely developed and run by just one person, Omar - which is quite impressive, but hard to make work long-term.

I think the first step is to just meet and chat about how to get started. Agreeing on a choice of framework/language, laying out the organization for the pieces that will need to be implemented, finding out who might want to contribute to what part, etc.

We can meet in a group chat such as via Google hangouts. (I think a chat is valuable compared to a forum thread due to the faster back-and-forth). How is everyone's availability this weekend up through next weekend?

(One might also consider the Arimaa chatroom, although something a little less likely to clutter and overlap with other discussion would probably be good).



Title: Re: Arimaa community website
Post by arimaaisagame on May 8th, 2015, 4:52am
Open source is good. I was thinking we use Lichess as a general idea of what we want to achieve.

How about we have our first meeting after the awards ceremony on Saturday? Google hangouts and skype are both fine for me.

I'm in Pacific time.


Title: Re: Arimaa community website
Post by lightvector on May 8th, 2015, 12:47pm
Meeting after the event tomorrow works for me. If most or all of the people who've expressed interest here reply back by then, let's do it, otherwise let's shoot for a time next week.

Title: Re: Arimaa community website
Post by clyring on May 8th, 2015, 3:50pm
FWIW, I would prefer chat discussions on ongoing Arimaa web development to occur in the Arimaa chatroom as a first choice. I don't think it's clutter at all.

Maybe be willing to relocate if there is concurrent but unrelated Arimaa discussion and the other occupants explicitly request the discussion be moved, but I wouldn't go further.

Title: Re: Arimaa community website
Post by lightvector on May 9th, 2015, 10:49am
Good point. In that case, that seems sensible to me too.

Title: Re: Arimaa community website
Post by mattj256 on May 11th, 2015, 10:10pm
Hi all.

Lightvector and I are working on the backend for the new Arimaa server.
We talked about specifics in the chat room, from 2.5 hours ago until 1.5 hours ago.

A brief summary:
  • The repo is: https://github.com/lightvector/arimaa-server
  • We'll be using Scala.
  • lightvector: "I think the first actual thing that I want to do is to implement the Arimaa rules in the language (game state + making moves + move legality checking)"
  • lightvector: "the first target point I would say is to have something capable of playing a game and reporting and updating via GET and POST the game state (even if it only has one game as the state, etc)"
  • lightvector: "awesome - if you have enough to get started, then we're good to go - for my part, I will begin by renting a server from Amazon and then attempt to get a vanilla "hello-world" http server working"
Time for me to learn Scala...

Title: Re: Arimaa community website
Post by rabbits on May 13th, 2015, 10:26pm
I am interested in helping with this project.  I have put a lot of effort into making an Arimaa website, and I have learned quite a bit of web development as a result.  As a matter of observation, my motivation for projects like this waxes and wanes.  I do not want to over commit myself right now.

I only glanced at the chat archive that mattj256 mentioned.  Scalatra is an interesting choice, and I like it given that I like trying new frameworks.  And I've been interested in Scala for a few years now.  It looks like there are a lot more decisions to be made about what technology to use.

My version of the site is written in server-side Javascript using NodeJS and ExpressJS.  It talks with a MongoDB database and a Redis database (for session data).  I had an ElasticSearch database set up at one point to search the forum text too.  The site uses both jQuery and AngularJS on the client side.  And there were a ton of other decisions about how to do authentication, sockets, etc.  

I was relying on scraping Arimaa.com to get all of the relevant data and keep it up to date.  This was actually a pretty big task, partially because the current HTML has very few IDs and class names.  If we have a way to get the important data directly, that'd be easier.

Test driven development, especially in a communal project of this size, is important.

That's my quick 2-cents for now.  This is an exciting project!  I look forward to seeing what we come up with!

Title: Re: Arimaa community website
Post by arimaaisagame on May 17th, 2015, 5:21pm
Hello,

Now that other things are winding down I think I can start writing some code. Brendan hasn't been online in a week and I'm not familiar with closurescript so I was planning on porting most of his existing stuff to some javascript.

Rabbits can we see the source code for that project? That would probably be very useful to look at.

I've been working on this for a while and its also using MEAN. Its not done of course but I think I'll prioritize the new website over this.
http://arimaa-puzzles.herokuapp.com/

Title: Re: Arimaa community website
Post by leo on May 21st, 2015, 7:28pm
Oh, I've missed the start of it!

Is the plan to use one language at the risk of ending up with only one person able to maintain and extend the code, or to allow multiple languages and modules that interact?

If the latter, I would suggest laying out the architecture so that the modules communicate swiftly and don't tread on each other's toes. If the former, that looks like the thing to do as well :P

Client side, for the game board, do you favor html canvas or svg or image elements? I lean toward canvas for its versatility and smooth display although it makes interactivity a bit harder to code.

For the chat, I have that js object/module in the works, aiming at multi-instancing, multi-channeling, game position display, alternate game notation encodings, more commands, events, formatting. In the previous thread I asked about how to make it work with the new server (and new client), as it is currently devised to work with the current chat server.

Title: Re: Arimaa community website
Post by lightvector on May 24th, 2015, 8:48pm
Hey Leo! What would you like to work on?

The current plan is to in parallel:
1. (underway) Write a back-end in Scala to serve as as a new gameserver that communicates via RESTful json. Also, the library being used for the web communication has good support for websockets too, so we have the option of that in the future too.

2. (planned but not quite started, but possibly can draw on bits and pieces of code that people independently wrote on earlier projects) - Write a front-end that can talk with the existing Arimaa gameserver to play games right now, keeping in mind that we will want to switch/add the ability to communicate with the new gameserver once it's working. I think this has not started yet mostly because the primary people interested in working on this part (and who have the most experience in the neighborhood) haven't quite had time yet, but from what I can tell we can probably kick things off after the next week or so. It will likely be possible to work on chat/game interface/misc tools somewhat separately.

Oh, and updates for the back-end for (1):
Basic board data structures are implemented, and we now have a "hello world" webpage up served via Amazon AWS and Scala. Long way to go still, but nonetheless - Yay!
http://playarimaa.org/
https://github.com/lightvector/arimaa-server

Next up, for me at least, is working out the API for talking with the server, getting more experience with the web library being used (and also figuring out how data storage/databases will work).


Title: Re: Arimaa community website
Post by leo on May 31st, 2015, 3:57am
Hi Lightvector and all,

Thank you for the summary and updates!

First suggestion I have for the html client is to use html5 with proper doctype and utf-8 encoding throughout to avoid inconsistent rendering and text handling across modules and browsers.

The API! Great! I would like to discuss this, so that we can all start figuring out how to efficiently plug into the system.

"Namespaces": Not really part of web techniques but workarounds exist. For instance the CSS selectors can be devised to prevent collisions by setting up root selectors than act like namespaces and allow every interface module to have their own common styles such as .selected and stuff.

I will write some documentation about my new chat module. I think that ideally it would store the data in a database using the common database management of the server, especially if it is extended to handle game chat additionally to the common chat. The current chat is totally disconnected from the rest.

Gotta run, I will write more tonight.

Title: Re: Arimaa community website
Post by Xeranox on Oct 19th, 2015, 11:16pm
Is this project dead?  :-[

Title: Re: Arimaa community website
Post by lightvector on Jan 16th, 2016, 5:35pm
Ah. Didn't see this. Nope, not dead, but developing fairly slowly since there's only 1-2 people working on it.

Alpha test version up now!

http://playarimaa.org/

Might have bugs, has major missing features (no interface yet to see recent or historical games, or list of players), but it works!

Title: Re: Arimaa community website
Post by eykca on Dec 7th, 2018, 2:39pm
Has any progress been made on this? Just curious. The website playarimaa.org isn't working.

Title: Re: Arimaa community website
Post by clyring on Dec 9th, 2018, 2:19pm
My understanding is that the playarimaa site project has been in some sort of stasis for a couple of years, for a few reasons, the largest of which is that lightvector, the lead developer, wants to avoid being the only person with enough knowledge of the code to be able to effectively contribute to its maintenance.

The source repository can still be found at this page (https://github.com/lightvector/arimaa-server/), and has all of the same functionality needed to allow anyone to replicate the alpha demo after a fairly modest amount of installation work, or even revive the project.



Arimaa Forum » Powered by YaBB 1 Gold - SP 1.3.1!
YaBB © 2000-2003. All Rights Reserved.