{"id":19753924,"url":"https://github.com/trisha/genshin-impact-character-tracker","last_synced_at":"2026-05-26T16:07:30.803Z","repository":{"id":54826910,"uuid":"331139405","full_name":"trisha/genshin-impact-character-tracker","owner":"trisha","description":"An app for tracking your Genshin Impact characters and your in-game goals for them.","archived":false,"fork":false,"pushed_at":"2021-12-25T07:11:04.000Z","size":21753,"stargazers_count":0,"open_issues_count":1,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-10T22:15:30.152Z","etag":null,"topics":["genshin-impact"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/trisha.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-01-19T23:41:08.000Z","updated_at":"2021-12-25T07:11:07.000Z","dependencies_parsed_at":"2022-08-14T04:00:58.232Z","dependency_job_id":null,"html_url":"https://github.com/trisha/genshin-impact-character-tracker","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trisha%2Fgenshin-impact-character-tracker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trisha%2Fgenshin-impact-character-tracker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trisha%2Fgenshin-impact-character-tracker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trisha%2Fgenshin-impact-character-tracker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/trisha","download_url":"https://codeload.github.com/trisha/genshin-impact-character-tracker/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241085438,"owners_count":19907254,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["genshin-impact"],"created_at":"2024-11-12T02:55:40.667Z","updated_at":"2026-05-26T16:07:25.758Z","avatar_url":"https://github.com/trisha.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Genshin Impact Character Tracker\nA browser-based app for manually tracking your Genshin Impact characters and their stats, and for managing your in-game goals.\n\nThe purpose of this project is to have all your character information stored online, which you can bookmark or keep open in a tab, and which takes less time to load than the actual game itself. You can add, edit, and delete your goals or notes for each character in the dashboard view--no need to flip through pages of crossed-out notes anymore!\n\n## Link to Live Project\nhttps://genshin-impact.herokuapp.com/\n\nTest account:  \nEmail: test@email.com  \nPassword: test\n\n## Features\n- Sequelize hook to convert email address to lowercase before validating \n- Password hashing using bcrypt\n- Local login authentication using passport\n- Multi-select and search from a dynamic dropdown list when adding characters\n- Multi-select edit and delete character comments\n- Dynamic CSS: see what happens when you adjust your browser size 👀\n- Colored text dependent on each character's vision (element)\n\n## Technologies Used\n- HTML\n- CSS, Scss\n- JavaScript\n- Express\n- Node.js\n- EJS, EJS Layouts \n- Bootstrap, Bootstrap-select\n- Axios (for API calls)\n- Passport (for user authentication)\n- Bcrypt (for password hashing)\n\n## Next Steps\n- Add confirmation modal when deleting character.\n- Have 'add new note' more visible (instead of at bottom), perhaps on side\n- Have Edit and Delete note buttons more visible, perhaps as a float\n- Update Characters view  to match Figma wireframes\n- Add ability to enter character stats (ATK, DEF, HP, etc.)  \n- Add weapon slot and domain information \n- Aggregate domain information on dashboard, depending on the day \n\n## Contact \nReach out to Trisha at genshin.character.tracker@gmail.com for comments or inquiries!\n\n--- \n\n## Project Planning\n[Entity Relationship Diagram:](https://lucid.app/lucidchart/invitations/accept/18a984d6-26ce-4ce0-a51e-ee6e22bc8714)\n![Lucidchart ERD Screenshot](public/img/screenshots/ERD.png)\n\n[Wireframes:](https://www.figma.com/file/YYpdBfzQkJaAiz9c5pFhUF/Genshin-Character-Tracker-Wireframes?node-id=0%3A1)\n![Figma Wireframes Screenshot](public/img/screenshots/Wireframes.png)\n\nInspiration: \n- https://genshin.gg/\n- https://www.gensh.in/\n- https://genshin.poporing.life/\n- https://www.genshingamer.com/\n\n## Screenshots\nMy Characters view:\n![My Character View](public/img/screenshots/My_Characters_2021-01-29.png)\nCharacter detail view:\n![Character Detail View](public/img/screenshots/Character_View_2021-01-29.png)\nMy Goals view:\n![View Goals Screenshot](public/img/screenshots/My_Goals_2021-01-29.png)\nAdd Goal view:\n![Add Goal Screenshot](public/img/screenshots/Add_Goal_2021-01-29.png)\nEdit Goals view:\n![Edit Goals Screenshot](public/img/screenshots/Edit_Goals_2021-01-29.png) \n\n\n## How to Setup After Cloning\n1. Install node dependencies: \n```npm install```\n- Install the Sequelize CLI if you don't have it already: `npm i sequelize-cli` or `npm i -g sequelize-cli` to install globally\n\n2. Create a SQL database called \"genshin_tracker\" (Make sure that the config.json database name matches your database name): `psql`, `CREATE DATABASE genshin_tracker;`\n3. Migrate models: `sequelize db:migrate`\n4. Run the API to populate the stockCharacter model: `node server_api.js`\n5. Run the code: `node server.js` or `nodemon` (if you have nodemon installed)\n6. Go to port 3000 in your browser: `localhost:3000`\n\n\n## Timeline\nClick [here](notes/timeline.md) (notes/timeline.md) for a more detailed progress timeline. \n\n1/20/21 - Found and added Genshin custom font\n\n1/21/21 - Added background and EJS layout scss, 404 page  \n\n1/23/21 - Minimized scope of project, added user model  \n\n1/25/21 - Added login authentication, password hashing, flash messages, navbar, character and goal models    \n\n1/26/21 - Populated stockCharacter model with API, added bootstrap-select multi-select+search form for adding characters, incorporated ability to view all and delete characters, aligned link formatting in the navigation bar. \n\n1/27/20 - Added multi-select form with user's characters to dashboard page, added ability to add comments/notes for each character, and display them grouped by character\n\n1/28/20 - Added ability to bulk edit or bulk delete comments using the same form. Refactored 'add new character' multi-select search form to be based on stockCharacters, instead of having hard-coded dropdown values.  \n\n1/30/20 - Have white spaces and  new lines in character notes show up in display view.\n\n\n\n## Background\nWhenever I talk about anything related to my characters in Genshin Impact on Reddit or with my friends--such as character builds or team compositions--I find that I oftentimes have to open the game just to see what my character's stats are, the name and level of their weapon they're using, or which artifacts (plus their main- and sub- stats) they have equipped. \n\nI also keep forgetting if I can use my resin (i.e. Genshin's stamina currency) on artifacts, or whether I should use them on today's ascension domains. \n\nAnd I'll forget which specific artifacts I'm farming for each character (in order to fulfill artifact set bonuses): Whenever I see my domain drops, I have to find my physical list of artifacts so I can know whether I'm done running a domain or whether I should continue to do another run.\n\nThis app arose from the intersection of the pain points above, and the exigence below. \n\n## Credit\nCharacter information API: https://github.com/genshindev/api  \nBackground image: https://www.gensh.in/gallery/wallpaper#lg=1\u0026slide=0 \n\n\n\u003c!-- 3/8/21 Feedback from Dave:\nx Remove mention of bcrypt on homepage.\n- Add 'stroke' for geo text, since hard to read.\nx Have images open in new tab.\n- Confirm password when signing up.\n- Add profile page (instead of 404 not found).\n- Have Delete button display a 'Confirm Delete' and 'Cancel' button show up. \n- Issue when adding all characters at once: font color doesn't show up, everything is white.\n --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrisha%2Fgenshin-impact-character-tracker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftrisha%2Fgenshin-impact-character-tracker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrisha%2Fgenshin-impact-character-tracker/lists"}