Progress has been slow, real slow. Sadly, I’ve wavered back and forth between Padrino and Rails API + Ember.js. However, I’m going to stick it out with Padrino! I may have some help now. The learning curve was one thing that held up my progress; the other was futzing over the UI/UX (which I still don’t have ironed out).
But I think I want to share some of my notes on the UI…
BF3 Squad UI
I’m essentially splitting up the data into three distinct groups: Solider, Vehicle, and Assignments. Each section will be further divided into sub-sections.
I’m definitely going to highlight the Soldier Kits: Assault, Engineer, Support, and Recon. I’m also going to group Dog Tags, Medals, and Ribbons together. I’m also going to group Pistols, Shotguns, and PDWs together. What ever is left will comprise the main Solider sub-section.
I haven’t looked into how I’m going to divide the Vehicle information, yet. There seems to be a grouping of Air Vehicles vs. Land Vehicles. Once I get it figured out though, I’ll document it.
And Assignments: those are already divided based on the DLC with which they’re associated. The main Assignments sub-section, will present a summary of the progress made across all assignments. This section, though, seems to be limited to those that have access to the DLCs. This brings up the possibility folks may not have access to Assignments; progress will always be 0%.
Authoriztion & Authentication
I’m also going to be looking at Warden and CanCan. I need to simplify the technology stack and that duo appears to take care of my requirements.
- Allow a user to signup at the site
- Allow a user to set up their profile (in this case it’s their BF3 Solider information)
- Allow the user to view their soldier
- Don’t allow the user to view other profiles
- Don’t allow the user to view other users’ soldiers
I think I want an Account Model. This will contain the login information as well as other pieces of data. That model will have a has_many relationship to the Player Model. And, of course, the Player Model is my dumb JSON data container.
I’ll have to define helper methods to pull out the necessary data and relationships. That actually got me to thinking about Ember.js. But I’m not going to be using Ember.js on this project. I’m actively trying to keep the technology stack simple.
I had thought about trying to make a little money on the side with this project, but, with the soonish release of Battlefield 4, I may wait until then. I could use this project as a learning experience and when BF4 releases, start on the next version. I would also like to have a Mobile version. However, if I use HTML5 do I need one? We’ll see.