Author Topic: RedemptionDB  (Read 44056 times)

Offline NathanW

  • Tournament Host
  • Trade Count: (+3)
  • *****
  • Posts: 545
    • -
    • Midwest Region
RedemptionDB
« on: April 11, 2020, 01:41:22 AM »
+10



Hello Redemption Community!

I'm excited to finally lift the lid off of a project I've been working on for the past few weeks.


What is RedemptionDB?


Simply put, the goal of RedemptionDB is to be a one-stop shop for all of your informational and organizational Redemption needs. This includes card browsing, deck management, collection management, resource hub, and more!

As an aspiring Software Engineer, my last two years of education have led to some exciting opportunities when it comes to projects that are within my scope to tackle. And this project is the first of many I hope to pursue in the area of web apps.

The beauty of web apps is a "one app works anywhere" sort of approach. As a result of embracing this design, RedemptionDB can be used on any device! desktop, laptop, phone, tablet, etc!. The web app is fully responsive and resizes dynamically to fit your screen size.

I'm at the point in development where I need feedback on what I have developed currently and I am seeking suggestions for what to work on next and what would be the most useful features and additions for the Redemption community.

The current list of (broad) areas I want the web app to address are:

  • Card Browsing
  • Deck management
  • Collection Management
  • Trading post (possibly)
  • Resources hub

These are all very large categories and I'm looking for help figuring out what you guys would like to see added most in each of those categories.

I'll be updating this post with a list of suggestions.

I would also love to receive your constructive criticism and feedback. I'm making this for you guys and I would love to make it work well for you.


Before you dive in, a few notes:

  • Currently the only working pages are the home page (albeit empty), the cards page, and the decks page

  • There is a login system, and it is fully functional, however since the web app is still in active development I cannot guarantee user data will be saved at this point. At the moment, this just includes saved decklists.

  • A lot of the interfaces look a bit ugly, but should be functional. I would like feedback on both aesthetics and function, especially on mobile.

  • All cards should be in the card viewer! If one is missing, or if some details are inaccurate, just let me know here and I'll fix it when I have time.

  • You must have an account to create decks (no email verification required at this point)

  • You can export to Lackey while on the decks page. Make sure the cards you have in your deck are supported by Lackey (check or x on the right of each card). If a card is marked as non-Lackey supported, but is, tell me and I can add it.

  • This web app can be installed locally on your device. Chrome has an "Install RedemptionDB" option in the task bar (other browsers do as well). And on mobile If you are using chrome you can "add RedemptionDB to homescreen" to "download" the app to your device. Google "Install  pwa with/in/using x" for more info on how to do this. E.g. "install pwa on Android", "install pwa on iOS", Etc.

  • This web app is fully functional offline, as of now, you can't use any features that require you to be logged in. That is something I will work on in the future. (Images will not load while offline unless you previously viewed them while you were online)

  • Lastly, this is a very early stage in this project but I wanted to get it out to ya'll as soon as possible. If there is slow progress on updating features or fixing issues it is likely because I am busy with school, this is a hobby project and not my first priority.




Have fun poking around the app, and feel free to leave feedback and suggestions or just ask questions!
« Last Edit: April 11, 2020, 07:55:03 AM by NathanW »
(\__/) This is a bunny.
(='.'=) I know it's cute.
(")_(")

#CascadeDelendaEst

Offline NathanW

  • Tournament Host
  • Trade Count: (+3)
  • *****
  • Posts: 545
    • -
    • Midwest Region
Re: RedemptionDB
« Reply #1 on: April 11, 2020, 01:46:38 AM »
0
Planned Additions:

Home Page:
  • Popular cards
  • Featured cards
  • Public decklists (if user shares deck)

Cards Page:
  • Much more robust / fully featured search filter (includes sorting options)
  • Alternate list view
  • Rotate cards 180d
  • Short links for card images
  • Report error form

Decks Page:
  • More user friendly interface
  • Alternate card tile view
  • Deck stats (good/evil/neutral, card type numbers, etc.)
  • Deck building rules checker
  • Deck list pdf printout
  • Separated deck, reserve, & misc sections
  • Export Lackey .dek file
  • Export TTS deck file
  • Simple card browser to quickly add cards to deck
  • Universal deck importing (intelligent name matching)

Collections Page:



Suggestions:

Home Page:

    Cards Page:
    • Detailed card info view (poss. Orcid data + color blind friendly, hover/page)
    • Save/share search link (Cards Page)
    • Testament filter (Cards Page)
    • Zoomed image view (Cards Page)
    • Traditional card type sorting (Decks Page)
    • Search/Sort by card number (Cards Page)
    • Show active deck better (Cards Page)
    • Quick switch active deck (Cards Page)

    Decks Page:
    • Rename/duplicate decks (Decks Page)

    Collections Page:
    • sub-collections (especially for use while deck building) (Collections Page)
    • marking cards for trading (Collections Page)

    Misc:
    • app-wide card availability from collection (trading, decks)
    « Last Edit: May 12, 2020, 11:25:24 PM by NathanW »
    (\__/) This is a bunny.
    (='.'=) I know it's cute.
    (")_(")

    #CascadeDelendaEst

    Offline NathanW

    • Tournament Host
    • Trade Count: (+3)
    • *****
    • Posts: 545
      • -
      • Midwest Region
    Re: RedemptionDB
    « Reply #2 on: April 11, 2020, 01:47:21 AM »
    0
    Reserved
    (\__/) This is a bunny.
    (='.'=) I know it's cute.
    (")_(")

    #CascadeDelendaEst

    Offline Reth

    • Trade Count: (+10)
    • Hero Member
    • *****
    • Posts: 1284
      • LFG
      • East Central Region
    Re: RedemptionDB
    « Reply #3 on: April 11, 2020, 05:02:01 AM »
    0
    Wow! This is incredible! Awesome! Thanks a lot! Seems that now I can retire my RCM tool since this is so much better!

    Short question: How can collections be managed (even after creating an account this option is deactivated in the menu)?
    Also settings is deactivated yet and in FireFox I could not find the download possibilty - is it hidden somewhere?
    « Last Edit: April 11, 2020, 05:06:12 AM by Reth »

    Offline NathanW

    • Tournament Host
    • Trade Count: (+3)
    • *****
    • Posts: 545
      • -
      • Midwest Region
    Re: RedemptionDB
    « Reply #4 on: April 11, 2020, 07:41:03 AM »
    0
    Wow! This is incredible! Awesome! Thanks a lot! Seems that now I can retire my RCM tool since this is so much better!

    Short question: How can collections be managed (even after creating an account this option is deactivated in the menu)?
    Also settings is deactivated yet and in FireFox I could not find the download possibilty - is it hidden somewhere?

    I'll update the original post with this information. The only working pages currently are the home page (albeit empty), the cards page, and the decks page.

    The specific type of web app is a "progressive web app", often abbreviated pwa. If you google "install pwa on/with/using x", you should find instructions.

    E.g.
    "Install pwa with chrome",
    "Install pwa on Android",
    "Install pwa on iOS", Etc.

    Edit: looks like Firefox might not handle installing pwa.
    « Last Edit: April 11, 2020, 08:14:04 AM by NathanW »
    (\__/) This is a bunny.
    (='.'=) I know it's cute.
    (")_(")

    #CascadeDelendaEst

    Offline EmJayBee83

    • Tournament Host
    • Trade Count: (+1)
    • *****
    • Posts: 5486
    • Ha! It's funny because the squirrel gets dead.
      • -
      • East Central Region
      • mjb Games
    Re: RedemptionDB
    « Reply #5 on: April 11, 2020, 08:21:01 AM »
    0
    Very cool.

    Offline thejambi

    • Trade Count: (+10)
    • Jr. Member
    • **
    • Posts: 170
    • Programmer & Sound Guy
      • -
      • Midwest Region
      • BurnSoftware
    Re: RedemptionDB
    « Reply #6 on: April 11, 2020, 08:21:07 AM »
    +2
    Yes! The day has come - the ultra-superior spiritual successor to my project has come and I can retire :)

    I'll definitely be letting you know what features would make this completely replace my viewer for me. The only things would probably be...

    * Being able to link to a search as a way of easily sharing multiple cards at once
    * General ease and quickness of how I designed it to work

    And other questions/comments...

    You probably have a plan, but you could see how I made the Testament Filter in the viewer in my code - https://github.com/thejambi/RedemptionCCGViewer

    What's the plan like for adding new cards to this? I can share the process I used for the LoC cards into the viewer and ready for Lackey.. But if you add new cards, will it help get them into Lackey?

    -Zach
    Titus 1:9

    Offline NathanW

    • Tournament Host
    • Trade Count: (+3)
    • *****
    • Posts: 545
      • -
      • Midwest Region
    Re: RedemptionDB
    « Reply #7 on: April 11, 2020, 08:46:01 AM »
    +1
    * Being able to link to a search as a way of easily sharing multiple cards at once
    * General ease and quickness of how I designed it to work

    I do plan to add the ability to share searches, that is a fairly straightforward feature.
    I'd be glad to hear any ideas you have that could help to improve the ease and quickness while using the card search/filter.  :)

    You probably have a plan, but you could see how I made the Testament Filter in the viewer in my code - https://github.com/thejambi/RedemptionCCGViewer

    Yes, that is very similar to how I plan to implement the Testament filter. I need to fix a few mislabeled books in my database first before that filter would work properly.

    What's the plan like for adding new cards to this? I can share the process I used for the LoC cards into the viewer and ready for Lackey.. But if you add new cards, will it help get them into Lackey?

    The current plan for adding cards is as follows:
    1. download card images.
    2. run batch scripts to crop, resize, and convert images.
    3. upload images to static hosting.
    4. download and copy card data excel sheet.
    5. split data (primarily from DACs), and rename data so it's all standardized. (data stored in google sheet)
    6. run script compile data and import into actual database.

    I could see there being overlap if there are similar steps taken to translate the card data from the spreadsheet, although I have to split the data up more than I imagine you would for Lackey. Images are another area I could see overlapping. I have that step reduced to a few ImageMagick commands.
    « Last Edit: April 11, 2020, 08:49:32 AM by NathanW »
    (\__/) This is a bunny.
    (='.'=) I know it's cute.
    (")_(")

    #CascadeDelendaEst

    Offline thejambi

    • Trade Count: (+10)
    • Jr. Member
    • **
    • Posts: 170
    • Programmer & Sound Guy
      • -
      • Midwest Region
      • BurnSoftware
    Re: RedemptionDB
    « Reply #8 on: April 11, 2020, 09:09:10 AM »
    0
    Oh yeah - doing multiple searches at once is something I'd go back to the viewer for.
    -Zach
    Titus 1:9

    Offline NathanW

    • Tournament Host
    • Trade Count: (+3)
    • *****
    • Posts: 545
      • -
      • Midwest Region
    Re: RedemptionDB
    « Reply #9 on: April 11, 2020, 09:42:59 AM »
    +1
    Oh yeah - doing multiple searches at once is something I'd go back to the viewer for.

    That will likely be covered by the more fully featured search filter I plan to add.  :)
    (\__/) This is a bunny.
    (='.'=) I know it's cute.
    (")_(")

    #CascadeDelendaEst

    Offline Gabe

    • Global Moderator
    • Trade Count: (+69)
    • *****
    • Posts: 10675
    • From Moses to the prophets, it's all about Him!
      • -
      • North Central Region
      • Land of Redemption
    Re: RedemptionDB
    « Reply #10 on: April 11, 2020, 05:07:37 PM »
    +1
    This is a great start to your project, Nathan! I love the ease of browsing. One additional thing you might add to your filter is "card number". That can come in handy if you don't know which card you're missing from a set but you know the number.

    I'll try to take the time to evoluate this more thoroughly and provide more feedback soon.
    Have you visited the Land of Redemption today?

    Offline thejambi

    • Trade Count: (+10)
    • Jr. Member
    • **
    • Posts: 170
    • Programmer & Sound Guy
      • -
      • Midwest Region
      • BurnSoftware
    Re: RedemptionDB
    « Reply #11 on: April 11, 2020, 05:46:44 PM »
    0
    Along those lines, also sorting by card number when looking through a set.
    -Zach
    Titus 1:9

    Offline NathanW

    • Tournament Host
    • Trade Count: (+3)
    • *****
    • Posts: 545
      • -
      • Midwest Region
    Re: RedemptionDB
    « Reply #12 on: April 11, 2020, 05:59:47 PM »
    +1
    Along those lines, also sorting by card number when looking through a set.

    Yep, better sorting options are definitely on the cards page makeover list.
    « Last Edit: April 11, 2020, 06:15:52 PM by NathanW »
    (\__/) This is a bunny.
    (='.'=) I know it's cute.
    (")_(")

    #CascadeDelendaEst

    Offline Reth

    • Trade Count: (+10)
    • Hero Member
    • *****
    • Posts: 1284
      • LFG
      • East Central Region
    Re: RedemptionDB
    « Reply #13 on: April 14, 2020, 02:58:50 PM »
    0
    Will the universal deck import also contain importing from Lackey exports?

    Offline NathanW

    • Tournament Host
    • Trade Count: (+3)
    • *****
    • Posts: 545
      • -
      • Midwest Region
    Re: RedemptionDB
    « Reply #14 on: April 14, 2020, 09:34:43 PM »
    +1
    Will the universal deck import also contain importing from Lackey exports?

    If you're talking about .dek files, yes, that would be fairly straightforward. Also the .txt export, with the quantities and card names.
    « Last Edit: April 14, 2020, 09:37:27 PM by NathanW »
    (\__/) This is a bunny.
    (='.'=) I know it's cute.
    (")_(")

    #CascadeDelendaEst

    Offline Reth

    • Trade Count: (+10)
    • Hero Member
    • *****
    • Posts: 1284
      • LFG
      • East Central Region
    Re: RedemptionDB
    « Reply #15 on: April 15, 2020, 08:43:51 AM »
    0
    Cool! Thx!

    Offline landonh5

    • Trade Count: (0)
    • New Member
    • *
    • Posts: 41
      • -
      • Northeast Region
    Re: RedemptionDB
    « Reply #16 on: April 15, 2020, 09:38:24 AM »
    0
    Are you planning on developing a way for a player to upload all their cards to the "Collections" section? I currently keep track of all my cards (couple thousand) by logging them on the card list spreadsheet. It would be fantastic to be able to load all of these at once.

    Offline NathanW

    • Tournament Host
    • Trade Count: (+3)
    • *****
    • Posts: 545
      • -
      • Midwest Region
    Re: RedemptionDB
    « Reply #17 on: April 15, 2020, 10:38:15 AM »
    +1
    Are you planning on developing a way for a player to upload all their cards to the "Collections" section? I currently keep track of all my cards (couple thousand) by logging them on the card list spreadsheet. It would be fantastic to be able to load all of these at once.

    The goal for importing cards from any source would generally follow these rules:

    • 1 card would be recognized per file line
    • Some recognizable part of a card name must be present, E.g. "David", will work, but words close to David, E.g. "Daivd", would not be recognized
    • quantities (if present) must be a number before the card name separated by at least a single space
    • Source file must be .txt, .dek , or .csv

    Basically the goal for universal card importing is to match the contents of a single line as close to a card name as possible and if there's ambiguity present multiple close options, or a simple name filter search so you can find the card yourself. This card importing would be available anywhere you might want to add multiple cards from a source file. Deck page and Collections page being the two main places this feature would see use.

    So yes, most likely you would export your card list as a .csv and then just use the quantity/name column.

    As I'm mostly in the planning stage for a lot of these features this might end up looking slightly different, but should be fairly close to this outline.
    (\__/) This is a bunny.
    (='.'=) I know it's cute.
    (")_(")

    #CascadeDelendaEst

    Offline NathanW

    • Tournament Host
    • Trade Count: (+3)
    • *****
    • Posts: 545
      • -
      • Midwest Region
    Re: RedemptionDB
    « Reply #18 on: April 22, 2020, 09:17:03 PM »
    0
    Just a reminder that you can post any ideas, however ambitious they might sound. :)
    (\__/) This is a bunny.
    (='.'=) I know it's cute.
    (")_(")

    #CascadeDelendaEst

    Offline goalieking87

    • Trade Count: (+52)
    • Full Member
    • ***
    • Posts: 496
      • East Central Region
    Re: RedemptionDB
    « Reply #19 on: April 23, 2020, 09:12:12 AM »
    0
    For collection management, the ability to “move” cards.

    The way I see this working is by having a master collection where you can manually add cards to inventory levels.  However, when you are building decks with the cards in your inventory, it automatically reduces your inventory level and increases that card count in your deck level.  There should also be an easy function to wipe out all of the cards in a deck and return them to inventory.

    Furthermore, it would be awesome to be able to layer your inventory with sub-levels so that you can separate your collection from cards you are willing to trade or sell.  Perhaps the option for others to only be able to see decks and inventories that you choose to make public.

    Include a feature where your inventories will automatically update when you trade someone.  When they are originally marked for trade, it could be updated to “pending” and then after confirmation on each individual end of the trade, that player’s inventories will be updated to reduce the quantity of cards traded and increase the quad received at the click of a button since the program would be able to link the trade between the players.

    For updating inventories, having an auto-save feature where it keeps the data as you are inputting would be valuable too.

    Thanks for working on this!

    Offline Bobbert

    • Trade Count: (+8)
    • Hero Member
    • *****
    • Posts: 1773
    • The player formerly known as Thomas Hunter
      • -
      • North Central Region
    Re: RedemptionDB
    « Reply #20 on: April 23, 2020, 02:21:33 PM »
    0
    I just want to say that this is an incredible resource, and I'm definitely going to be using it in the future. Well done on everything so far - it looks very sleek and I look forward to seeing how it develops.

    With that out of the way (and the reassurance that ambitious ideas are welcome), here's what would make this my first and last stop for card info:

    On the card search page, as it stands hovering a card shows the name, set, and a copy image link. My idea is for a detail view - my first thought is opening a box on double click, but it could be its own page as well, or whatever works. This view would have important info about the card, akin to what was on the old wiki. It would help particularly with old cards that have difficult-to-read abilities over the text, and possibly even be a resource to help with accessibility to the game for colorblind folks. Much of the basic stuff would be relatively simple, I imagine, as most of it would be simply filled by text that exists anyway for the db search. The tricky part would be Play-As and erratas. Really going the extra mile it could even include a rulings sections, where frequently asked questions can have a definitive place attached to the card so that people don't have to go diving on the boards/discord.

    Obviously this is a bit of a big ask (basically integrating the ORCID, and a ton of work manually entering stuff with the last suggestion) but having everything in one place would be sweet.

    Also, you have an extra S in "Revelation of John"
    « Last Edit: April 23, 2020, 02:32:41 PM by Bobbert »
    ANB is good. Change my mind.

    Offline NathanW

    • Tournament Host
    • Trade Count: (+3)
    • *****
    • Posts: 545
      • -
      • Midwest Region
    Re: RedemptionDB
    « Reply #21 on: April 23, 2020, 02:46:46 PM »
    +1
    For collection management, the ability to “move” cards.

    The way I see this working is by having a master collection where you can manually add cards to inventory levels.  However, when you are building decks with the cards in your inventory, it automatically reduces your inventory level and increases that card count in your deck level.  There should also be an easy function to wipe out all of the cards in a deck and return them to inventory.

    Furthermore, it would be awesome to be able to layer your inventory with sub-levels so that you can separate your collection from cards you are willing to trade or sell.  Perhaps the option for others to only be able to see decks and inventories that you choose to make public.

    Include a feature where your inventories will automatically update when you trade someone.  When they are originally marked for trade, it could be updated to “pending” and then after confirmation on each individual end of the trade, that player’s inventories will be updated to reduce the quantity of cards traded and increase the quad received at the click of a button since the program would be able to link the trade between the players.

    For updating inventories, having an auto-save feature where it keeps the data as you are inputting would be valuable too.

    Thanks for working on this!

    One of the main benefits of the framework I decided to go with is this exact sort of app-wide functionality, and I do plan on adding most if not all of the features and functionality you described there. Thanks for writing that out, makes me so happy that others are excited for the potential directions this project could head :D
    « Last Edit: April 23, 2020, 02:56:50 PM by NathanW »
    (\__/) This is a bunny.
    (='.'=) I know it's cute.
    (")_(")

    #CascadeDelendaEst

    Offline NathanW

    • Tournament Host
    • Trade Count: (+3)
    • *****
    • Posts: 545
      • -
      • Midwest Region
    Re: RedemptionDB
    « Reply #22 on: April 23, 2020, 02:54:06 PM »
    +1
    I just want to say that this is an incredible resource, and I'm definitely going to be using it in the future. Well done on everything so far - it looks very sleek and I look forward to seeing how it develops.

    With that out of the way (and the reassurance that ambitious ideas are welcome), here's what would make this my first and last stop for card info:

    On the card search page, as it stands hovering a card shows the name, set, and a copy image link. My idea is for a detail view - my first thought is opening a box on double click, but it could be its own page as well, or whatever works. This view would have important info about the card, akin to what was on the old wiki. It would help particularly with old cards that have difficult-to-read abilities over the text, and possibly even be a resource to help with accessibility to the game for colorblind folks. Much of the basic stuff would be relatively simple, I imagine, as most of it would be simply filled by text that exists anyway for the db search. The tricky part would be Play-As and erratas. Really going the extra mile it could even include a rulings sections, where frequently asked questions can have a definitive place attached to the card so that people don't have to go diving on the boards/discord.

    Obviously this is a bit of a big ask (basically integrating the ORCID, and a ton of work manually entering stuff with the last suggestion) but having everything in one place would be sweet.

    Also, you have an extra S in "Revelation of John"

    Those are definitely achievable ideas, I'm still trying to figure out which would be better for card info. A separate page, or a hover. I'll probably end up doing a combination of both. And the idea of having discussions attached to cards is a great idea too. When it comes to publicly listed decks, I plan to have the ability for people to comment on those, so commenting on cards wouldn't be much different. (also, for each card I'm planning on making a "submit error" form, so you can submit errors and they can be fixed right away)

    And you are right that the info is already there, just need to figure out how to display and present it best.

    EDIT: oh, I fixed the Revelation of John typo too.
    « Last Edit: April 23, 2020, 02:59:10 PM by NathanW »
    (\__/) This is a bunny.
    (='.'=) I know it's cute.
    (")_(")

    #CascadeDelendaEst

    Offline landonh5

    • Trade Count: (0)
    • New Member
    • *
    • Posts: 41
      • -
      • Northeast Region
    Re: RedemptionDB
    « Reply #23 on: April 23, 2020, 04:10:54 PM »
    0
    Another thought. When looking through the cards, I see there is an "add to deck" option. I tested this option out by making 3 "decks", and when I went to add a card, I wasn't given the option of telling it in which deck to put the card. I'm assuming this is a work in progress?

    Offline NathanW

    • Tournament Host
    • Trade Count: (+3)
    • *****
    • Posts: 545
      • -
      • Midwest Region
    Re: RedemptionDB
    « Reply #24 on: April 23, 2020, 04:14:36 PM »
    +1
    Another thought. When looking through the cards, I see there is an "add to deck" option. I tested this option out by making 3 "decks", and when I went to add a card, I wasn't given the option of telling it in which deck to put the card. I'm assuming this is a work in progress?

    Currently, the deck you have selected on the decks page is your "active deck" and it places the card in that deck. Making that more clear, as well as showing better what deck you have selected, are things I plan to add.
    « Last Edit: April 23, 2020, 05:20:03 PM by NathanW »
    (\__/) This is a bunny.
    (='.'=) I know it's cute.
    (")_(")

    #CascadeDelendaEst

     


    SimplePortal 2.3.3 © 2008-2010, SimplePortal