StegSchreck / AngularCV

Angular based self-hosted online-CV
https://cv.schreck.berlin/
GNU Affero General Public License v3.0
54 stars 80 forks source link
angular angularjs aws css curriculum-vitae cv gh-pages github-page github-pages hacktoberfest material material-design material-ui online-cv roboto self-hosted template typescript uberspace

AngularCV

Build Status Codacy Badge Codacy Badge License Latest Release

This project serves the purpose of having a simple, self-hosted online-CV outside of LinkedIn, Xing, etc.

For a live demo, you can visit cv.schreck.berlin, for which this project was created initially.

Configuration

The data for the experience, education, publications, projects, volunteering, and contact sections are configured in a JSON format in /src/app/cv-item/data/cv-items.data.*.ts. Please notice the division of the education and publications section, which is applied here. This enables you to re-arrange the the sections to your likings.

In the end, this is just an example of how it can be done. Feel free to take it as a template and adjust everything to your needs.

Set Your Own Data

Here is what you will have to change in order to adapt this project for yourself.

In order to comply with the license of this project and the third-party elements in it, please leave the "About" section unchanged as well as the link to it in the footer.

Feature Toggles

AngularCV offers some feature toggles (a.k.a. feature switches) to adjust the experience of the website. However, some features are part of the basic functionality and should not be deactivated and thus do not have a feature toggle, e.g. the work experience tab. The feature toggles are defined in src/app/feature-toggle/feature-toggles.data.ts. Currently, these feature toggles are implemented:

Localization

By switching the default_language feature toggle (see above), you can define which language to choose for navigation menu entries, page titles, etc. You can also let the user switch the language by activating the localization feature toggle. You will still need to adjust your data in src/app/cv-item/data/cv-items.data.*.ts to adapt the same language, where * is a placeholder for the language you defined as default language before.

Add data for another language

To add additional languages you need to perform three steps. If you would like to add support for Italian for example it would be this:

Angular Basics

See the Angular basic guide for the basics. For more information, visit the Angular website.

Deployment to Production

After you cloned/forked this project and adjusted it to your needs (configured with your data), you might want to deploy it in order to make it available to anyone.

See my AWS deployment guide for a possible way how to achieve this with Amazon Web Services (AWS).

Alternatively, you can use Uberspace, see the corresponding Uberspace deployment guide.

As another option, you can use GitHub Pages, see the corresponding GitHub Pages deployment guide.

Similar, you can also use GitLab Pages. For this, see the corresponding GitLab Pages deployment guide.

Acknowledgments

This project uses a free license for WebStorm by benefiting from JetBrains' open source community support program.

Third Party Stuff

This project uses Angular and the Material Design components for Angular. Furthermore, the following third-party sources are included:

The images in the /src/assets/img/item-thumbnails directory in this repository are property of their respective right owners and do not fall under the license of this repository. They're included for show-case purposes.