Giter VIP home page Giter VIP logo

pixel-shelf's Introduction

Hi, I'm Alex! ๐Ÿ‘‹

I am a Software Engineer with over a decade of programming experience. I enjoy designing, writing, and documenting computer programs.

  • ๐ŸŽ“ I've graduated with a Master of Science in Software Engineering
  • ๐ŸŒฑ Iโ€™m currently studying iOS/macOS app development and Apple's design language in my free time
  • ๐Ÿ“‹ I'm currently practicing my test driven development skills

Favorite Platforms to Program For

  • macOS/iOS
  • Web
  • Discord
  • Docker
  • Android

You can check out some of my programming projects here on GitHub, or visit my website to learn more about me and what I do.

pixel-shelf's People

Contributors

abaratti avatar alexsmbaratti avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

pixel-shelf's Issues

Export Functionality

Allow users to download a file that can be uploaded to another Pixel Shelf instance to restore the state of the original instance

Create new schema for API responses

The current schema for API responses follows the following general pattern:

{
    "status": 200,
    "data": {}
}

The status code is fairly redundant and never used. I am open to suggestions to what may be more effective schema. That may be as simple as just returning the data, but I would like it to look somewhat sophisticated if possible. In addition, I am open to suggestions for error schemas.

If you have suggestions, please reply with a comment below with your suggestions.

Authentication and Login

Is your feature request related to a problem? Please describe.
All pages and API endpoints are currently exposed with no authentication requirement.

Describe the solution you'd like
Some form of login that protects endpoints and pages. Either custom login or use Discord or Twitch authentication.

Describe alternatives you've considered
N/A

Additional context
N/A

Enter Apple Maps API Information from Front End

Is your feature request related to a problem? Please describe.
Currently, the config.json file must be used to enter Apple Maps API information. Information includes key ID, team ID, and key path at minimum.

Describe the solution you'd like
Allow the entering of this information via a setup prompt or using the backend page.

Describe alternatives you've considered
N/A

Additional context
N/A

Change month-day-year format to Unix time format

Because only dates were needed, it was initially decided to use three integer fields for storing dates in the SQLite database: month, day, and year. However, this is causing more issues than solutions. Note that time and timezones are not relevant to Pixel Shelf. Switching to Unix time will make it simple to tell if a date is invalid or unknown, easy to plot library size over time, and fix date rendering issues.

Enter IGDB API Information from Front End

Is your feature request related to a problem? Please describe.
Currently, the config.json file must be used to enter IGDB API information. Information includes client ID and client secret at minimum.

Describe the solution you'd like
Allow the entering of this information via a setup prompt or using the backend page.

Describe alternatives you've considered
N/A

Additional context
N/A

Allow for Complete Editing of Library Entries

Is your feature request related to a problem? Please describe.
Game title, platform, date added, and retailers cannot yet be edited yet in the menu.

Describe the solution you'd like
Allow for editing of all fields.

Describe alternatives you've considered
N/A

Additional context
N/A

Mass Import Can't Handle Certain Characters

Characters, specifically single quote characters, cause SQL issues. This leads to a variety of problems, including causing the library count by platform to be inaccurate. This is believed to occur because a library entry will be added, but not game or edition entries to complement it. This causes the count by platform endpoint to miss these entries.

Move Progress Field into Library Table

Upon further deliberation, progress would be best in the library table. While this means any potential duplicate copies may not be synced, it also means that game entries can be aggregated and shared, and that deleting an in progress library entry will not cause that game to continue to appear on the index screen. It also allows a user to easily hyperlink to the library entry in question.

API Documentation

Create detailed documentation of API endpoints, including params, body, and response information

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.