Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/tangorabox/resumefx

JavaFX Webview of JSON resume files
https://github.com/tangorabox/resumefx

javafx jpro jsonresume jsonresume-theme webapp

Last synced: about 3 hours ago
JSON representation

JavaFX Webview of JSON resume files

Awesome Lists containing this project

README

        

# ResumeFX (JavaFX Webview of jsonresume files)
[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
[![Build Status](https://travis-ci.com/TangoraBox/ResumeFX.svg?branch=master)](https://travis-ci.com/TangoraBox/ResumeFX)
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=com.tangorabox%3Aresume-fx&metric=alert_status)](https://sonarcloud.io/dashboard?id=com.tangorabox%3Aresume-fx)

ResumeFX renders a JavaFX view of .json file that follows [jsonresume.org](https://jsonresume.org) standard and has the
necessary configuration to be embedded in the web browser thanks to [JPro](https://www.jpro.one).

You can view a production example with my own resume here: https://cv.tangorabox.com

**The architecture style follows MVVM with minimal and very clean code thanks to the help of my
[own JavaFX micro-framework library](https://github.com/TangoraBox/ReactiveDeskFX).**

JSON file loading and validation have been delegated to a
[third-party library](https://github.com/eaxdev/Java-JsonResume-Validator) to speed up development.

For the graphic icons, I have used [FontAwesomeFX library](https://bitbucket.org/Jerady/fontawesomefx/src/master/).

In the test folder, I wrote some classes to prototype each component, and I have used
[CSSFX](https://github.com/McFoggy/cssfx) and my own [Component-Inspector](https://github.com/TangoraBox/ComponentInspector)
to speed up CSS style prototyping.

---

## Features

- Run on desktop and web browser (`mvn jpro:run`)

- Responsive layout

- Mobile layout

- Double spaces on summary fields will be replaced with line breaks

- `Dockerfile`, `docker-compose-yml` and `.gitlab-ci.yml` CI/CD example files

- JSON file can be loaded externally to allow file edition without redeploy the project (see `docker-compose.yml`)

---

## Usage

Java 11 or higher is required.

- To launch as desktop mode, simply run ResumeFXLauncher class.
- To launch as web-browser mode, execute `mvn jpro:run`

### JSON file Limitations

- Some fields must be numeric (eg: skill level handles a maximum value of 5)
- Date fields must be in YYYY-MM-DD pattern
- Picture field must be a valid and accessible url

---

## Contributing

> If you want to contribute to upgrade this project with new features or fixing bugs, you're welcome, please make a pull request.

---

## Team

| **GaRzY** |
| :---:
| [![GaRzY](https://avatars0.githubusercontent.com/u/10849239?s=200)](https://github.com/garzy)
| `github.com/garzy` |

---

## Support

Reach out to me at one of the following places!

- Mail to [[email protected]](mailto:[email protected])
- Twitter at `@garzydj`

---

## License

[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)

- **[GPL v3](https://opensource.org/licenses/gpl-3.0.html)**