diff --git a/CHANGELOG.md b/CHANGELOG.md
new file mode 100644
index 00000000..206c44af
--- /dev/null
+++ b/CHANGELOG.md
@@ -0,0 +1,5 @@
+## 0.1.0 (2019-12-28)
+
+* added item evaluation
+* added currency conversion
+* added ingame search
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 00000000..90fac91f
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,91 @@
+# Contributing
+
+When contributing to this repository, please first discuss the change you wish to make via issue,
+email, or any other method with the owners of this repository before making a change.
+
+Please note we have a code of conduct, please follow it in all your interactions with the project.
+
+## Pull Request Process
+
+1. Ensure any install or build dependencies are removed before the end of the layer when doing a
+ build.
+2. Add your changes to the CHANGELOG.md.
+3. Increase the version numbers in any examples files and the README.md to the new version that this
+ Pull Request would represent. The versioning scheme we use is [SemVer](http://semver.org/).
+4. You may merge the Pull Request in once you have the sign-off of two other developers, or if you
+ do not have permission to do that, you may request the second reviewer to merge it for you.
+
+## Code of Conduct
+
+### Our Pledge
+
+In the interest of fostering an open and welcoming environment, we as
+contributors and maintainers pledge to making participation in our project and
+our community a harassment-free experience for everyone, regardless of age, body
+size, disability, ethnicity, gender identity and expression, level of experience,
+nationality, personal appearance, race, religion, or sexual identity and
+orientation.
+
+### Our Standards
+
+Examples of behavior that contributes to creating a positive environment
+include:
+
+* Using welcoming and inclusive language
+* Being respectful of differing viewpoints and experiences
+* Gracefully accepting constructive criticism
+* Focusing on what is best for the community
+* Showing empathy towards other community members
+
+Examples of unacceptable behavior by participants include:
+
+* The use of sexualized language or imagery and unwelcome sexual attention or
+advances
+* Trolling, insulting/derogatory comments, and personal or political attacks
+* Public or private harassment
+* Publishing others' private information, such as a physical or electronic
+ address, without explicit permission
+* Other conduct which could reasonably be considered inappropriate in a
+ professional setting
+
+### Our Responsibilities
+
+Project maintainers are responsible for clarifying the standards of acceptable
+behavior and are expected to take appropriate and fair corrective action in
+response to any instances of unacceptable behavior.
+
+Project maintainers have the right and responsibility to remove, edit, or
+reject comments, commits, code, wiki edits, issues, and other contributions
+that are not aligned to this Code of Conduct, or to ban temporarily or
+permanently any contributor for other behaviors that they deem inappropriate,
+threatening, offensive, or harmful.
+
+### Scope
+
+This Code of Conduct applies both within project spaces and in public spaces
+when an individual is representing the project or its community. Examples of
+representing a project or community include using an official project e-mail
+address, posting via an official social media account, or acting as an appointed
+representative at an online or offline event. Representation of a project may be
+further defined and clarified by project maintainers.
+
+### Enforcement
+
+Instances of abusive, harassing, or otherwise unacceptable behavior may be
+reported by contacting the project team at [kyusung4698@gmail.com]. All
+complaints will be reviewed and investigated and will result in a response that
+is deemed necessary and appropriate to the circumstances. The project team is
+obligated to maintain confidentiality with regard to the reporter of an incident.
+Further details of specific enforcement policies may be posted separately.
+
+Project maintainers who do not follow or enforce the Code of Conduct in good
+faith may face temporary or permanent repercussions as determined by other
+members of the project's leadership.
+
+### Attribution
+
+This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
+available at [http://contributor-covenant.org/version/1/4][version]
+
+[homepage]: http://contributor-covenant.org
+[version]: http://contributor-covenant.org/version/1/4/
\ No newline at end of file
diff --git a/LICENSE.md b/LICENSE.md
new file mode 100644
index 00000000..b31f0a27
--- /dev/null
+++ b/LICENSE.md
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) [2019] [Nicklas Ronge]
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
\ No newline at end of file
diff --git a/README.md b/README.md
index d48d6891..edb6bb70 100644
--- a/README.md
+++ b/README.md
@@ -1,27 +1,156 @@
-# PoeOverlay
+# PoE Overlay
-This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 8.3.21.
+A Overlay for Path of Exile. Providing advanced features like evaluating items. The ***core aspect*** is to blend in game. Built with Electron and Angular.
-## Development server
+
+- [Status](#status)
+- [Features](#features)
+- [Roadmap](#roadmap)
+- [Enduser](#enduser)
+ - [Getting Started](#getting-started)
+ - [Prerequisites](#prerequisites)
+ - [Installing](#installing)
+ - [Shortcuts](#shortcuts)
+- [Developer](#developer)
+ - [Getting Started](#getting-started-1)
+ - [Prerequisites](#prerequisites-1)
+ - [Installing](#installing-1)
+ - [Running the tests](#running-the-tests)
+ - [And coding style tests](#and-coding-style-tests)
+ - [Building](#building)
+ - [Built With](#built-with)
+ - [Contributing](#contributing)
+ - [Versioning](#versioning)
+- [Authors](#authors)
+- [License](#license)
+- [Acknowledgments](#acknowledgments)
+
-Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files.
+## Status
-## Code scaffolding
+This project is currently in a ***pilot phase***. If you encounter any bugs or have feature request please open up a issue on github.
-Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`.
+## Features
-## Build
+* Evaluating of item prices from `poe.trade` in `Chaos Orbs` uses the values of the currency market from `poe.ninja` to convert the currencies.
+* Modal dialog to open the search result website *in game*.
-Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `--prod` flag for a production build.
+![ctrl_d_preview](img/ctrl_d_preview.gif)
-## Running unit tests
+## Roadmap
-Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io).
+| Module | Status | Notes |
+| ------------- |-------------: | ------- |
+| Core | 50% | + overlay
+ global shortcuts
- auto updating
- user settings like league, custom shortcuts etc.
+| Shared | 25% | + item frame
+ currency frame
- item parser in all languages
- item parser reliablity improvement
+| Evaluate | 33% | + Basic search implemented
- Advanced search with filter on modifiers
- Chart to display values instead of avg |
+| Trade | 0% | - Send messages
- Trade UI
- etc. |
+| Command | 0% | - bind in-game commmands to shortcuts (like /dnd, /hideout) |
-## Running end-to-end tests
-Run `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/).
+## Enduser
-## Further help
+### Getting Started
-To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md).
+These instructions will get you a executable to run and enjoy the overlay.
+
+#### Prerequisites
+
+* Path of Exile ***must be*** in windowed fullscreen mode
+* Path of Exile ***must be*** in language englisch
+* Path of Exile ***must be*** using the latest league (Metamorph)
+
+#### Installing
+
+1. Head over to [Releases](https://github.com/Kyusung4698/PoE-Overlay/releases) and download the latest zip
+2. Extract zip
+3. Run `poe-overlay.exe`
+
+#### Shortcuts
+
+|Shortcut |Description
+|--- |---
+| `ctrl+d` | Displays the item in a frame and evaluates the price. You can open poe.trade on click of the currency value.
+| `f5` | Exits overlay
+
+## Developer
+
+### Getting Started
+
+These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
+
+#### Prerequisites
+
+Your editor of choice for a node project - like [vscode](https://code.visualstudio.com/).
+
+The first thing to install is [nodejs](https://nodejs.org/en/). Download your matching executable and follow the instructions.
+
+Then you need to install the [windows-build-tools](https://github.com/felixrieseberg/windows-build-tools) from an elevated PowerShell or CMD.exe. This may take a while (10-15min).
+```
+npm install --global --production windows-build-tools
+```
+
+#### Installing
+
+1. Clone the repository.
+2. Open up the folder with your editor.
+3. Run ```npm install``` to install all required npm packages.
+4. Run ```npm run robotjs:rebuild``` to generate a executable [robotjs](https://github.com/octalmage/robotjs) version.
+
+That's it. Your Project should now be ready to run:
+```
+npm run start
+```
+
+### Running the tests
+
+These are used to test for eg. the external APIs (poe.trade, poe.ninja, etc.). To run those:
+```
+npm run ng:test
+```
+
+#### And coding style tests
+
+These will run certain linters to keep the project in a clean state.
+
+```
+npm run ng:lint
+```
+
+### Building
+
+A electron executable can be generate by calling:
+```
+npm run electron:windows
+```
+
+### Built With
+
+* [Electron](https://electronjs.org/) - The desktop app framework
+* [Angular](https://angular.io/) - A component framework
+
+### Contributing
+
+Please read [CONTRIBUTING.md](CONTRIBUTING.md) for details on our code of conduct, and the process for submitting pull requests to us.
+
+### Versioning
+
+We use [SemVer](http://semver.org/) for versioning. For the versions available, see the [tags on this repository](https://github.com/Kyusung4698/PoE-Overlay/tags).
+
+## Authors
+
+* **Nicklas Ronge** - *Initial work* - [Kyusung4698](https://github.com/Kyusung4698)
+
+See also the list of [contributors](https://github.com/Kyusung4698/PoE-Overlay/contributors) who participated in this project.
+
+## License
+
+This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details
+
+## Acknowledgments
+
+* [Grinding Gear Games](https://www.pathofexile.com/) the game
+* [PoE TradeMacro](https://github.com/PoE-TradeMacro/POE-TradeMacro) initial inspiration
+* [poe.ninja](https://poe.ninja/) currency values
+* [poe.trade](https://poe.trade/) item values
+* [libggpk](https://github.com/MuxaJIbI4/libggpk) parsing content.ggpk
\ No newline at end of file
diff --git a/img/ctrl_d_preview.gif b/img/ctrl_d_preview.gif
new file mode 100644
index 00000000..1c6bd9cc
Binary files /dev/null and b/img/ctrl_d_preview.gif differ
diff --git a/package.json b/package.json
index 07533c2d..70e9119f 100644
--- a/package.json
+++ b/package.json
@@ -8,10 +8,12 @@
"author": {
"name": "Kyusung4698"
},
- "version": "1.0.0",
+ "version": "0.1.0",
"scripts": {
"postinstall": "electron-builder install-app-deps",
"ng:serve": "ng serve",
+ "ng:test": "ng test",
+ "ng:lint": "ng lint --fix",
"start": "npm-run-all -p ng:serve electron:serve",
"build": "npm run electron:serve-tsc && ng build",
"build:dev": "npm run build",
@@ -20,7 +22,6 @@
"electron:serve": "wait-on http-get://localhost:4200/ && npm run electron:serve-tsc && electron . --serve",
"electron:local": "npm run build:prod && electron .",
"electron:windows": "npm run build:prod && electron-builder build --windows",
- "electron:windows:fast": "electron-builder build --windows",
"electron:version": "electron -v && electron -a",
"robotjs:rebuild": "npm rebuild --runtime=electron --target=7.1.7 --disturl=https://atom.io/download/atom-shell --abi=75"
},
diff --git a/src/app/core/service/input/window.service.ts b/src/app/core/service/input/window.service.ts
index b7fba237..22c63229 100644
--- a/src/app/core/service/input/window.service.ts
+++ b/src/app/core/service/input/window.service.ts
@@ -31,7 +31,8 @@ export class WindowService {
parent: this.electron.getCurrentWindow(),
autoHideMenuBar: true,
width: 1000,
- height: 800
+ height: 800,
+ backgroundColor: '#0F0F0F'
});
win.loadURL(url);
}
diff --git a/src/app/modules/evaluate/component/evaluate-dialog/evaluate-dialog.component.html b/src/app/modules/evaluate/component/evaluate-dialog/evaluate-dialog.component.html
index 07bc5978..783ec7d0 100644
--- a/src/app/modules/evaluate/component/evaluate-dialog/evaluate-dialog.component.html
+++ b/src/app/modules/evaluate/component/evaluate-dialog/evaluate-dialog.component.html
@@ -5,15 +5,18 @@