All Projects → mattantonelli → ffxiv-collect

mattantonelli / ffxiv-collect

Licence: MIT License
Another collection tracker for Final Fantasy XIV

Programming Languages

ruby
36898 projects - #4 most used programming language
HTML
75241 projects
SCSS
7915 projects
coffeescript
4710 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to ffxiv-collect

ffxiv-triple-triad
Another Triple Triad tracker for Final Fantasy XIV
Stars: ✭ 17 (-46.87%)
Mutual labels:  ruby-on-rails, final-fantasy-xiv, ffxiv
TataruHelper
Tataru Helper - application for translation of in-game texts in Japan MMORPG - Final Fantasy XIV. The texts are understood as MSQ, cutscenes, quests, NPC replicas, etc.
Stars: ✭ 255 (+696.88%)
Mutual labels:  final-fantasy-xiv, ffxiv
FFXIVPocketGuide
A collection of mobile friendly guides to help players navigate group content in Final Fantasy XIV.
Stars: ✭ 16 (-50%)
Mutual labels:  final-fantasy-xiv, ffxiv
ffxiv-better-autokey
Windows terminal tool for automating keystrokes to processes.
Stars: ✭ 15 (-53.12%)
Mutual labels:  final-fantasy-xiv, ffxiv
horizoverlay
A simple horizontal damage meter overlay for Final Fantasy XIV. It currently shows player dps, damage %, hps, max hit, encounter duration and total dps. It's super configurable! It supports English, Portuguese, Chinese (S/T) and French.
Stars: ✭ 118 (+268.75%)
Mutual labels:  final-fantasy-xiv, ffxiv
ffxiv-weather
Weather forecast and lookup for Final Fantasy XIV.
Stars: ✭ 29 (-9.37%)
Mutual labels:  final-fantasy-xiv, ffxiv
ffxiv-gearing
Webapp for building and sharing Final Fantasy XIV gearsets. (CN)
Stars: ✭ 50 (+56.25%)
Mutual labels:  final-fantasy-xiv, ffxiv
rails cursor pagination
Add cursor pagination to your ActiveRecord backed application
Stars: ✭ 21 (-34.37%)
Mutual labels:  ruby-on-rails
graphql-rails logger
Display GraphQL queries in a more readable format
Stars: ✭ 102 (+218.75%)
Mutual labels:  ruby-on-rails
from-fat-controllers-to-use-cases
Rails (API) app that shows different kinds of architecture (one per commit), and in the last one, how to use the Micro::Case gem to handle the application business logic.
Stars: ✭ 74 (+131.25%)
Mutual labels:  ruby-on-rails
xivtlsheet
ACT、FFLogsを使い、FF14 零式コンテンツのタイムラインスプレッドシートを作成
Stars: ✭ 39 (+21.88%)
Mutual labels:  ffxiv
SpeedUpAmerica
Crowd-sourced internet speed tests using M-Lab data and user tests on a website, with charts, maps, and raw data downloads.
Stars: ✭ 24 (-25%)
Mutual labels:  ruby-on-rails
my-awesome-projects
Learn by doing projects
Stars: ✭ 48 (+50%)
Mutual labels:  ruby-on-rails
IndieNoMo
A full-stack web-app inspired by crowdfunding platform IndieGoGo.
Stars: ✭ 36 (+12.5%)
Mutual labels:  ruby-on-rails
XIVSlothCombo
XivCombo for very lazy gamers
Stars: ✭ 69 (+115.63%)
Mutual labels:  ffxiv
doorkeeper-sequel
Doorkeeper Sequel ORM
Stars: ✭ 12 (-62.5%)
Mutual labels:  ruby-on-rails
halfstaff
🇺🇸 Is the US flag at half-staff?
Stars: ✭ 22 (-31.25%)
Mutual labels:  ruby-on-rails
slack widgets
An abstraction of the JSON structure needed to create widgets in Slack message attachments
Stars: ✭ 14 (-56.25%)
Mutual labels:  ruby-on-rails
TBbard
Automated FFXIV Bard Performer (Now with MIDI support!)
Stars: ✭ 38 (+18.75%)
Mutual labels:  ffxiv
filtered
Filters ActiveRecord queries in a nice way
Stars: ✭ 28 (-12.5%)
Mutual labels:  ruby-on-rails

FFXIV Collect

This is another application for tracking your Final Fantasy XIV collections written in Ruby on Rails. Game data is powered by Saint Coinach. This application strives to be as autonomous as possible by pulling as much data as possible from Saint Coinach. The rest is maintained by myself and a small group of moderators using community-sourced data.

API

All of this application's data is made available through a RESTful JSON API. See the documentation for details.

Dependencies

  • Ruby (2.4.1)
  • Rails (5.2)
  • MySQL
  • Redis

Installation

Clone and initialize the repository

git clone https://github.com/mattantonelli/ffxiv-collect
cd ffxiv-collect
bundle install
bundle exec rake app:update:bin

Set up the database

Create the MySQL databases ffxiv_collect_development and ffxiv_collect_test as well as a database user with access to them

Create the necessary 3rd party applications

  1. Create a new Discord app for user authentication. Take note of the client ID and secret.
    1. Set the redirect URI on the OAuth2 page of your app: http://localhost:3000/users/auth/discord/callback
  2. Configure the credentials file to match the format below using your data.
rm config/credentials.yml.enc
rails credentials:edit
mysql:
  development:
    username: username
    password: password
discord:
  client_id: 123456789
  client_secret: abc123
google_analytics:
  tracking_id: GA-1234567-8

Extract the images & music samples

Extract images & music samples from the game data by following the instructions in the data repository.

Load the database

bundle exec rake db:schema:load
bundle exec rake data:initialize

Schedule jobs

Run whenever to schedule the application's cronjobs.

bundle exec whenever -s 'environment=INSERT_ENV_HERE' --update-crontab

Please note that if you did not install your Ruby using rbenv, you will need to change the bundle command located in config/schedule.rb

Start the server

rails server
bundle exec sidekiq

Updating

When new data becomes available on patch day, it can be loaded into the database by running the data:update rake task.

bundle exec rake data:update
bundle exec rake assets:precompile
# Restart the application
bundle exec rails console
[Achievement, Mount, Minion, Orchestrion, Emote, Barding, Hairstyle, Armoire, Fashion].each { |model| puts "#{model}: #{model.where('created_at > ?', Date.current.beginning_of_day).update_all(patch: 'CURRENT PATCH')}" }
exit

This data is available once the data repository has been updated with the latest patch data.

More action may be required in the event of complex game updates. Patch data must be populated manually.

Images

Images must be extracted from the game data. Click here for details.


FINAL FANTASY is a registered trademark of Square Enix Holdings Co., Ltd.

FINAL FANTASY XIV © SQUARE ENIX CO., LTD.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].