diff --git a/components/Card.vue b/components/Card.vue new file mode 100644 index 0000000..e2e0fd0 --- /dev/null +++ b/components/Card.vue @@ -0,0 +1,70 @@ + + + + + diff --git a/components/FancyBox.vue b/components/FancyBox.vue new file mode 100644 index 0000000..dfca4a9 --- /dev/null +++ b/components/FancyBox.vue @@ -0,0 +1,40 @@ + + + diff --git a/components/tabs/Contact.vue b/components/tabs/Contact.vue index 33ced61..d0ce8a3 100644 --- a/components/tabs/Contact.vue +++ b/components/tabs/Contact.vue @@ -2,7 +2,7 @@
-
+
@@ -72,7 +72,7 @@
{{ $t('contact_email') }}
- @@ -82,7 +82,7 @@
-
+

@@ -130,19 +130,38 @@

-
@@ -165,6 +184,7 @@ export default { email: '', message: '', }, + sent: false, sending: false, error: false, } @@ -186,18 +206,24 @@ export default { }, methods: { send_email() { + this.sending = true; emailjs.send('portfolio', 'template_portfolio', { user_name: this.form.name, user_email: this.form.email, message: this.form.message }, 'u0e_FkHOlD75wLr8g') - .then((_) => { - this.sending = true; - this.clear_email(); - setTimeout(() => {this.sending = false}, 5000); - }, (_) => { - this.error = true; - this.clear_email(); - setTimeout(() => {this.error = false}, 5000); - }); + .then((_) => { + this.sent = true; + this.sending = false; + this.clear_email(); + setTimeout(() => { + this.sent = false + }, 5000); + }, (_) => { + this.error = true; + this.sending = false; + setTimeout(() => { + this.error = false + }, 5000); + }); }, clear_email() { this.form = { diff --git a/components/tabs/Home.vue b/components/tabs/Home.vue index 96e3f77..89b649d 100644 --- a/components/tabs/Home.vue +++ b/components/tabs/Home.vue @@ -53,7 +53,7 @@ caret-animation='blink' >

-

+

{{ $t('profile_description') }}

diff --git a/components/tabs/Portfolio.vue b/components/tabs/Portfolio.vue index d5941ae..5f42c6a 100644 --- a/components/tabs/Portfolio.vue +++ b/components/tabs/Portfolio.vue @@ -1,15 +1,491 @@ - diff --git a/layouts/default.vue b/layouts/default.vue index 94688b7..45fe6dd 100644 --- a/layouts/default.vue +++ b/layouts/default.vue @@ -39,10 +39,22 @@ export default { backdrop-filter: saturate(180%) blur(10px); } +/* Ref: https://stackoverflow.com/questions/3247358/how-do-i-wrap-text-with-no-whitespace-inside-a-td#answer-5108367 */ +.wrap-word { + white-space: -moz-pre-wrap !important; /* Mozilla, since 1999 */ + white-space: -webkit-pre-wrap; /* Chrome & Safari */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + word-wrap: break-word; /* Internet Explorer 5.5+ */ + word-break: break-all; + white-space: normal; +} + .fade-enter-from, .fade-leave-to { - opacity: 0; + opacity: 0; } + .fade-enter-active, .fade-leave-active { - transition: opacity 0.1s ease-in-out; + transition: opacity 0.1s ease-in-out; } diff --git a/locales/en-US.js b/locales/en-US.js index 441dd53..98ab65e 100644 --- a/locales/en-US.js +++ b/locales/en-US.js @@ -26,6 +26,9 @@ export default { skills_title_languages: 'Languages', skills_languages: [['Spanish', '(Native)'], ['English', '(A2)']], /* Projects */ + project_title: 'Projects', + project_education_title: 'Education', + project_work_title: 'Work experience', /* Contacts */ contact_title: 'Have a Project in Mind? Let\'s Build Something Great Together!', contact_subtitle: 'I\'m excited to hear from you and discuss how we can collaborate to bring your ideas to life. Whether it\'s a web application, API development or any other web solution, let\'s turn your ideas into reality and make an impact in the digital world. Contact me now to get started!', @@ -40,9 +43,13 @@ export default { contact_email_message: 'Message', contact_email_message_placeholder: 'Type a message...', contact_email_send: 'Submit', + contact_email_sending: 'Sending ...', contact_email_sent: 'Message sent successfully!', contact_email_sent_error: 'Error sending message!', /* Utils */ + see: 'See preview', years: 'yrs', year: 'yr', + present: 'Present', + months: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'], }; diff --git a/locales/es-ES.js b/locales/es-ES.js index ffbb127..c998968 100644 --- a/locales/es-ES.js +++ b/locales/es-ES.js @@ -26,6 +26,9 @@ export default { skills_title_languages: 'Idiomas', skills_languages: [['Español', '(Nativo)'], ['Ingles', '(A2)']], /* Projects */ + project_title: 'Proyectos', + project_education_title: 'Educación', + project_work_title: 'Experiencia laboral', /* Contacts */ contact_title: '¿Tienes un proyecto en mente? ¡Construyamos algo grandioso juntos!', contact_subtitle: 'Estoy emocionado por saber de ti y hablar cómo podemos colaborar para dar vida a tus ideas. Ya sea una aplicación web, desarrollo de API o cualquier otra solución web, convertamos tus ideas en realidad y hagamos un impacto en el mundo digital. ¡Contáctame ahora para empezar!', @@ -40,9 +43,13 @@ export default { contact_email_message: 'Mensaje', contact_email_message_placeholder: 'Escribe un message...', contact_email_send: 'Enviar', + contact_email_sending: 'Enviando ...', contact_email_sent: '¡Mensaje enviado exitosamente!', contact_email_sent_error: '¡Error enviando el mensaje!', /* Utils */ + see: 'Ver vista previa', years: 'años', year: 'año', + present: 'Presente', + months: ['Ene', 'Feb', 'Mar', 'Abr', 'May', 'Jun', 'Jul', 'Ago', 'Sep', 'Oct', 'Nov', 'Dic'], }; diff --git a/package.json b/package.json index 801b68c..e14850b 100644 --- a/package.json +++ b/package.json @@ -10,6 +10,7 @@ }, "dependencies": { "@emailjs/browser": "^3.11.0", + "@fancyapps/ui": "^5.0.20", "@nuxtjs/i18n": "^7.3.1", "core-js": "^3.25.3", "nuxt": "^2.15.8", diff --git a/static/projects/logo/FIAI.jpg b/static/projects/logo/FIAI.jpg new file mode 100644 index 0000000..ff23711 Binary files /dev/null and b/static/projects/logo/FIAI.jpg differ diff --git a/static/projects/logo/freelancer.png b/static/projects/logo/freelancer.png new file mode 100644 index 0000000..7782ca1 Binary files /dev/null and b/static/projects/logo/freelancer.png differ diff --git a/static/projects/logo/mapio.png b/static/projects/logo/mapio.png new file mode 100644 index 0000000..6e1780b Binary files /dev/null and b/static/projects/logo/mapio.png differ diff --git a/static/projects/logo/uci.jpeg b/static/projects/logo/uci.jpeg new file mode 100644 index 0000000..e8f9f8a Binary files /dev/null and b/static/projects/logo/uci.jpeg differ diff --git a/static/projects/web/call-website.jpg b/static/projects/web/call-website.jpg new file mode 100755 index 0000000..755ac5b Binary files /dev/null and b/static/projects/web/call-website.jpg differ diff --git a/static/projects/web/dota-stats.jpg b/static/projects/web/dota-stats.jpg new file mode 100755 index 0000000..be027f0 Binary files /dev/null and b/static/projects/web/dota-stats.jpg differ diff --git a/static/projects/web/faranduleando-inside.jpg b/static/projects/web/faranduleando-inside.jpg new file mode 100644 index 0000000..a5afbef Binary files /dev/null and b/static/projects/web/faranduleando-inside.jpg differ diff --git a/static/projects/web/faranduleando-new-inside.jpg b/static/projects/web/faranduleando-new-inside.jpg new file mode 100644 index 0000000..542460c Binary files /dev/null and b/static/projects/web/faranduleando-new-inside.jpg differ diff --git a/static/projects/web/faranduleando-new-outside.jpg b/static/projects/web/faranduleando-new-outside.jpg new file mode 100644 index 0000000..f9c4cf5 Binary files /dev/null and b/static/projects/web/faranduleando-new-outside.jpg differ diff --git a/static/projects/web/faranduleando-outside.jpg b/static/projects/web/faranduleando-outside.jpg new file mode 100644 index 0000000..59c5c47 Binary files /dev/null and b/static/projects/web/faranduleando-outside.jpg differ diff --git a/static/projects/web/fici-web.jpg b/static/projects/web/fici-web.jpg new file mode 100644 index 0000000..b55dc5e Binary files /dev/null and b/static/projects/web/fici-web.jpg differ diff --git a/static/projects/web/gta-website.jpg b/static/projects/web/gta-website.jpg new file mode 100644 index 0000000..baa5ed6 Binary files /dev/null and b/static/projects/web/gta-website.jpg differ diff --git a/static/projects/web/inyenius-shop.jpg b/static/projects/web/inyenius-shop.jpg new file mode 100644 index 0000000..8327367 Binary files /dev/null and b/static/projects/web/inyenius-shop.jpg differ diff --git a/static/projects/web/inyenius-website.jpg b/static/projects/web/inyenius-website.jpg new file mode 100644 index 0000000..0174c31 Binary files /dev/null and b/static/projects/web/inyenius-website.jpg differ diff --git a/static/projects/web/keymac-about.jpg b/static/projects/web/keymac-about.jpg new file mode 100644 index 0000000..c6d5297 Binary files /dev/null and b/static/projects/web/keymac-about.jpg differ diff --git a/static/projects/web/keymac-all-work.jpg b/static/projects/web/keymac-all-work.jpg new file mode 100644 index 0000000..cfcf0ed Binary files /dev/null and b/static/projects/web/keymac-all-work.jpg differ diff --git a/static/projects/web/keymac-loading.jpg b/static/projects/web/keymac-loading.jpg new file mode 100644 index 0000000..23c3377 Binary files /dev/null and b/static/projects/web/keymac-loading.jpg differ diff --git a/static/projects/web/keymac-tool.jpg b/static/projects/web/keymac-tool.jpg new file mode 100644 index 0000000..ef83295 Binary files /dev/null and b/static/projects/web/keymac-tool.jpg differ diff --git a/static/projects/web/keymac-v3.jpg b/static/projects/web/keymac-v3.jpg new file mode 100644 index 0000000..1c8800c Binary files /dev/null and b/static/projects/web/keymac-v3.jpg differ diff --git a/static/projects/web/keymac-web-home.jpg b/static/projects/web/keymac-web-home.jpg new file mode 100644 index 0000000..e6aa8cd Binary files /dev/null and b/static/projects/web/keymac-web-home.jpg differ diff --git a/static/projects/web/keymac-website.jpg b/static/projects/web/keymac-website.jpg new file mode 100644 index 0000000..7de4b01 Binary files /dev/null and b/static/projects/web/keymac-website.jpg differ diff --git a/static/projects/web/leverage-launcher-0.jpg b/static/projects/web/leverage-launcher-0.jpg new file mode 100644 index 0000000..35d7ed1 Binary files /dev/null and b/static/projects/web/leverage-launcher-0.jpg differ diff --git a/static/projects/web/leverage-launcher-1.jpg b/static/projects/web/leverage-launcher-1.jpg new file mode 100644 index 0000000..0fbe60b Binary files /dev/null and b/static/projects/web/leverage-launcher-1.jpg differ diff --git a/static/projects/web/leverage-v1.jpg b/static/projects/web/leverage-v1.jpg new file mode 100644 index 0000000..96f7047 Binary files /dev/null and b/static/projects/web/leverage-v1.jpg differ diff --git a/static/projects/web/leverage-v2.jpg b/static/projects/web/leverage-v2.jpg new file mode 100644 index 0000000..c076df6 Binary files /dev/null and b/static/projects/web/leverage-v2.jpg differ diff --git a/static/projects/web/leverage-v3.jpg b/static/projects/web/leverage-v3.jpg new file mode 100644 index 0000000..05d60f7 Binary files /dev/null and b/static/projects/web/leverage-v3.jpg differ diff --git a/static/projects/web/leverage-v4-0.jpg b/static/projects/web/leverage-v4-0.jpg new file mode 100644 index 0000000..a47798d Binary files /dev/null and b/static/projects/web/leverage-v4-0.jpg differ diff --git a/static/projects/web/leverage-v4-1.jpg b/static/projects/web/leverage-v4-1.jpg new file mode 100644 index 0000000..1a6b840 Binary files /dev/null and b/static/projects/web/leverage-v4-1.jpg differ diff --git a/static/projects/web/rust-stats.jpg b/static/projects/web/rust-stats.jpg new file mode 100644 index 0000000..3acf2c3 Binary files /dev/null and b/static/projects/web/rust-stats.jpg differ diff --git a/static/projects/web/trunkers-website.jpg b/static/projects/web/trunkers-website.jpg new file mode 100644 index 0000000..330965c Binary files /dev/null and b/static/projects/web/trunkers-website.jpg differ diff --git a/yarn.lock b/yarn.lock index 611a7d3..3287152 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1285,6 +1285,11 @@ resolved "https://registry.yarnpkg.com/@emailjs/browser/-/browser-3.11.0.tgz#0e78de2f85096d1a9ad5b5977b060bb5d1784cb4" integrity sha512-RkY3FKZ3fPdK++OeF46mRTFpmmQWCHUVHZH209P3NE4D5sg2Atg7S2wa3gw5062Gl4clt4Wn5SyC4WhlVZC5pA== +"@fancyapps/ui@^5.0.20": + version "5.0.20" + resolved "https://registry.yarnpkg.com/@fancyapps/ui/-/ui-5.0.20.tgz#c9e25d333ad27568ee950e0092d0747ae42b8237" + integrity sha512-g7go/W0mIplnpVCWNm6uHF6VZeDSAJnPHzx0bxyETfzyYqtwpv0LpNYP8TbWqFELvXdXwNkQwHvHxkI9FvGlqQ== + "@fortawesome/fontawesome-common-types@6.4.0": version "6.4.0" resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.4.0.tgz#88da2b70d6ca18aaa6ed3687832e11f39e80624b"