Code Monkey home page Code Monkey logo

exilence-next's Introduction

Exilence Next Become a Patreon

Exilence Next is a desktop application that helps you calculate how valuable your character, inventory and stash tabs are. The data is broken down and summarized over time, to see how much you earn on an hourly basis. To add to this, you can also group up with friends directly within the app to see your combined net worth.

The app is a successor to our old application named Exilence, previously known as ExileParty.

Preview image

Contents

Download

Download the latest release at https://github.com/viktorgullmark/exilence-next/releases/latest

Platform

Currently runs with:

  • Electron 15.1.0
  • React 17.0.1
  • mobx 6.0.1
  • .NET Core 3.1
  • node 16.x
  • npm 7.x

Contributing with development

Before submitting a PR, please see our contributing guidelines.


Prerequisite for building LINUX

You will need to manually set protocol handling. Follow steps below:

  1. Create ~/.local/share/applications/ExilenceNext.desktop with:
[Desktop Entry]
Name=Exilence Next
Exec=<ABSOLUTE PATH TO ExilenceNext>/ExilenceNextApp/dist/appimage %u
Icon=<ABSOLUTE PATH TO ExilenceNext>/ExilenceNextApp/public/icon.ico
Terminal=false
Type=Application
MimeType=x-scheme-handler/exilence;
  1. Run:
  • update-mime-database ~/.local/share/mime
  • update-desktop-database ~/.local/share/applications

Run the following to get started with the client:

npm install
npm start (to serve the project)
npm run build (optional, to build the installer for production) 
---
npm run release (optional, to build the installer for production and release)
---
npm run smoke-build-linux (build for linux)
npm run smoke-build-mac (build for macOS)
npm run smoke-build-win (build for windows)

NOTE: Running a build using node versions newer than v14 seem to fail on MacOS and Linux. For development on these platforms, it's recommended to use v14.16.1 (Latest LTS).

Contact us

Communicate with us at our Discord https://discord.gg/yxuBrPY

Report bugs at https://github.com/viktorgullmark/exilence-next/issues

Supporting us

If you feel like chiming in with something, here's our Patreon: https://www.patreon.com/exilence

Acknowledgements

  • https://poe.ninja for providing a great API, which lets us calculate net worth of players

License

This work is licensed under the Creative Commons Attribution-NonCommercial 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc/3.0/ or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.

exilence-next's People

Contributors

dependabot[bot] avatar kaptengrek avatar kryo4096 avatar m-schiller avatar niklasabrahamsson avatar petterannerwall avatar pezem avatar roelsprimont avatar romankrru avatar sbsrnt avatar viktorgullmark avatar vilsol avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

exilence-next's Issues

Basic error handling for actions

The error handling is not working as intended as of now. Even if some errors occur, the actions will respond inappropriately.

We need to go through every step of the snapshot chain (as well as InitSession) to validate that it works all the way.

Add IconButton for user in Toolbar with option for signing out

Add a user icon (see Material UI icons) that triggers a dropdown, which lets you sign out (simply redirect to /login for now) from your current session.

It should be placed to the far right in the Toolbar, maybe with some kind of separator to keep it isolated from the profile/snapshot functionality.

image

Refactor ProfileDialogContainer

This component is very messy right now. It should be refactored to use custom hooks for league/stash tab selections, so we can reuse this logic elsewhere as needed.

Remember window size for the app

Can be stored in uiStateStore with persistence, or by using some Electron extension/functionality to handle this.

Will need to be loaded in electron.js, since that's where the initial window size is set.

Add first six stash tabs to default profile

We have a default profile that is created on first launch ("profile 1"). This should include a set of default tabs as well, so a user can start snapshots immediately on first use.

The profile is created with the mobx store on startup, but the stash tab ids have to be added later on in the login action flow, since thats when we fetch the actual tabs.

Tweak the side menu options

  1. Change icon for the net worth page to a more relevant icon.
  2. Add translations for the menu options
  3. Remove the login route link

Add filtering to ItemTable

Add a basic input field that filters the ItemTable. See attached image for suggested positioning of the input field.

image

Store poe.ninja price categories in database

Store poe.ninja price categories in database for easier update on new leagues

Current Categories

  • Incubator
  • Fossil
  • Resonator
  • Essence
  • DivinationCard
  • Prophecy
  • SkillGem
  • BaseType
  • HelmetEnchant
  • UniqueMap
  • Map
  • UniqueJewel
  • UniqueFlaskUniqueWeapon
  • UniqueArmour
  • UniqueAccessory
  • Beast

Ability to remove a profile

There should be a icon button in the toolbar next to the profile functions, that lets you remove a profile.

Make sure it automatically sets another profile as active when deletion occurs.

Implement Oauth2

Used for verification on the backend that the user have access to the account they supplied before creating auth tokens and connecting to signalr

Rework/improve snapshot action flow

Currently the action flow for snapshots is a bit messy. It needs to be cleaned up with further refactoring to make it easier to understand.

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.