añadidos links al acortador en proyectos
This commit is contained in:
BIN
content/proyectos/url-short/1.gif
Normal file
BIN
content/proyectos/url-short/1.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.5 MiB |
BIN
content/proyectos/url-short/image.png
Normal file
BIN
content/proyectos/url-short/image.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 10 KiB |
15
content/proyectos/url-short/index.md
Normal file
15
content/proyectos/url-short/index.md
Normal file
@@ -0,0 +1,15 @@
|
||||
---
|
||||
date : '2026-03-22T15:03:19-03:00'
|
||||
draft : false
|
||||
title : 'Url Short'
|
||||
image : 'image.png'
|
||||
---
|
||||
|
||||
Finalmente me decidi por realizar mi primer proyecto usando go. Este es un acortador de urls el cual permite registar las urls en una base de datos sqlite3 y recuperar la url normal al acceder a la api.
|
||||
|
||||
## Funcionalidades
|
||||
- Acortar Urls dando una id random Uint64 casteada a int64.
|
||||
- Enviar un 301 a la pagina que necesites redireccionar.
|
||||
|
||||
El [Fuente](https://fedesrv.ddns.net/git/fede/url-short) se encuentra en ese link.
|
||||
|
||||
@@ -112,7 +112,6 @@
|
||||
"hover:scale-120",
|
||||
"hover:shadow-[0_8px_0_black]",
|
||||
"hover:shadow-xl",
|
||||
"hover:text-blue-700",
|
||||
"hover:text-blue-900",
|
||||
"hover:text-white",
|
||||
"hover:z-2",
|
||||
@@ -179,7 +178,6 @@
|
||||
"text-2xl",
|
||||
"text-4xl",
|
||||
"text-6xl",
|
||||
"text-blue-500",
|
||||
"text-blue-700",
|
||||
"text-center",
|
||||
"text-gray-300",
|
||||
@@ -234,9 +232,11 @@
|
||||
"el-inicio-de-la-catastrofe",
|
||||
"estructura-de-navegación-drilling",
|
||||
"frontend",
|
||||
"funcionalidades",
|
||||
"gestión-de-productos",
|
||||
"gimp",
|
||||
"grad",
|
||||
"image.png",
|
||||
"imagemagick",
|
||||
"implementación",
|
||||
"instanciacion-del-sqlconnection",
|
||||
|
||||
@@ -1,9 +1,13 @@
|
||||
<div class="container mx-auto px-4 py-8">
|
||||
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
|
||||
{{ range first 3 (where .Site.RegularPages "Section" "proyectos") }}
|
||||
{{ range where site.RegularPages "Section" "proyectos" }}
|
||||
|
||||
<div
|
||||
class="hover:scale-120 hover:z-2 transform-3d hover:rotate-z-2 duration-100 hover:-translate-y-2 bg-white rounded-lg shadow-md overflow-hidden border-3 hover:shadow-xl ease-in"
|
||||
>
|
||||
<a
|
||||
href="{{ .Permalink }}"
|
||||
>
|
||||
{{ if .Params.image }}
|
||||
<img
|
||||
src="{{path.Join .Path .Params.image}}"
|
||||
@@ -26,11 +30,6 @@
|
||||
</p>
|
||||
|
||||
<div class="flex justify-between items-center">
|
||||
<a
|
||||
href="{{ .Permalink }}"
|
||||
class="text-blue-500 hover:text-blue-700"
|
||||
>Ver más</a
|
||||
>
|
||||
|
||||
{{ with .Params.tags }}
|
||||
<div class="flex flex-wrap">
|
||||
@@ -45,6 +44,7 @@
|
||||
{{ end }}
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
{{ end }}
|
||||
</div>
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -278,9 +278,42 @@
|
||||
<div class="container mx-auto px-4 py-8">
|
||||
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
|
||||
|
||||
|
||||
<div
|
||||
class="hover:scale-120 hover:z-2 transform-3d hover:rotate-z-2 duration-100 hover:-translate-y-2 bg-white rounded-lg shadow-md overflow-hidden border-3 hover:shadow-xl ease-in"
|
||||
>
|
||||
<a
|
||||
href="https://fedesrv.ddns.net/proyectos/url-short/"
|
||||
>
|
||||
|
||||
<img
|
||||
src="/proyectos/url-short/image.png"
|
||||
alt="Url Short"
|
||||
class="w-full h-48 object-cover"
|
||||
/>
|
||||
|
||||
|
||||
<div class="p-4">
|
||||
<h2 class="text-xl font-bold mb-2">Url Short</h2>
|
||||
<p class="text-gray-700 mb-4">
|
||||
<p>Finalmente me decidi por realizar mi primer proyecto usando go. Este es un acortador de urls el cual permite registar las urls en una base de datos …</p>
|
||||
</p>
|
||||
|
||||
<div class="flex justify-between items-center">
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
|
||||
<div
|
||||
class="hover:scale-120 hover:z-2 transform-3d hover:rotate-z-2 duration-100 hover:-translate-y-2 bg-white rounded-lg shadow-md overflow-hidden border-3 hover:shadow-xl ease-in"
|
||||
>
|
||||
<a
|
||||
href="https://fedesrv.ddns.net/proyectos/paneldb/"
|
||||
>
|
||||
|
||||
<div
|
||||
class="w-full h-48 bg-gray-200 flex items-center justify-center"
|
||||
@@ -296,20 +329,20 @@
|
||||
</p>
|
||||
|
||||
<div class="flex justify-between items-center">
|
||||
<a
|
||||
href="https://fedesrv.ddns.net/proyectos/paneldb/"
|
||||
class="text-blue-500 hover:text-blue-700"
|
||||
>Ver más</a
|
||||
>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
|
||||
<div
|
||||
class="hover:scale-120 hover:z-2 transform-3d hover:rotate-z-2 duration-100 hover:-translate-y-2 bg-white rounded-lg shadow-md overflow-hidden border-3 hover:shadow-xl ease-in"
|
||||
>
|
||||
<a
|
||||
href="https://fedesrv.ddns.net/proyectos/controlstock/"
|
||||
>
|
||||
|
||||
<div
|
||||
class="w-full h-48 bg-gray-200 flex items-center justify-center"
|
||||
@@ -325,20 +358,20 @@
|
||||
</p>
|
||||
|
||||
<div class="flex justify-between items-center">
|
||||
<a
|
||||
href="https://fedesrv.ddns.net/proyectos/controlstock/"
|
||||
class="text-blue-500 hover:text-blue-700"
|
||||
>Ver más</a
|
||||
>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
|
||||
<div
|
||||
class="hover:scale-120 hover:z-2 transform-3d hover:rotate-z-2 duration-100 hover:-translate-y-2 bg-white rounded-lg shadow-md overflow-hidden border-3 hover:shadow-xl ease-in"
|
||||
>
|
||||
<a
|
||||
href="https://fedesrv.ddns.net/proyectos/coordkeeper/"
|
||||
>
|
||||
|
||||
<img
|
||||
src="/proyectos/coordkeeper/index.png"
|
||||
@@ -354,15 +387,11 @@
|
||||
</p>
|
||||
|
||||
<div class="flex justify-between items-center">
|
||||
<a
|
||||
href="https://fedesrv.ddns.net/proyectos/coordkeeper/"
|
||||
class="text-blue-500 hover:text-blue-700"
|
||||
>Ver más</a
|
||||
>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -6,8 +6,15 @@
|
||||
<description>Recent content on Blog Fede</description>
|
||||
<generator>Hugo</generator>
|
||||
<language>en-us</language>
|
||||
<lastBuildDate>Fri, 02 May 2025 02:13:53 -0300</lastBuildDate>
|
||||
<lastBuildDate>Sun, 22 Mar 2026 15:03:19 -0300</lastBuildDate>
|
||||
<atom:link href="https://fedesrv.ddns.net/index.xml" rel="self" type="application/rss+xml" />
|
||||
<item>
|
||||
<title>Url Short</title>
|
||||
<link>https://fedesrv.ddns.net/proyectos/url-short/</link>
|
||||
<pubDate>Sun, 22 Mar 2026 15:03:19 -0300</pubDate>
|
||||
<guid>https://fedesrv.ddns.net/proyectos/url-short/</guid>
|
||||
<description><p>Finalmente me decidi por realizar mi primer proyecto usando go. Este es un acortador de urls el cual permite registar las urls en una base de datos sqlite3 y recuperar la url normal al acceder a la api.</p>
<h2 id="funcionalidades">Funcionalidades</h2>
<ul>
<li>Acortar Urls dando una id random Uint64 casteada a int64.</li>
<li>Enviar un 301 a la pagina que necesites redireccionar.</li>
</ul>
<p>El <a href="https://fedesrv.ddns.net/git/fede/url-short">Fuente</a> se encuentra en ese link.</p></description>
|
||||
</item>
|
||||
<item>
|
||||
<title>Panel Web</title>
|
||||
<link>https://fedesrv.ddns.net/proyectos/paneldb/</link>
|
||||
|
||||
@@ -6,8 +6,15 @@
|
||||
<description>Recent content in Proyectos on Blog Fede</description>
|
||||
<generator>Hugo</generator>
|
||||
<language>en-us</language>
|
||||
<lastBuildDate>Fri, 02 May 2025 02:13:53 -0300</lastBuildDate>
|
||||
<lastBuildDate>Sun, 22 Mar 2026 15:03:19 -0300</lastBuildDate>
|
||||
<atom:link href="https://fedesrv.ddns.net/proyectos/index.xml" rel="self" type="application/rss+xml" />
|
||||
<item>
|
||||
<title>Url Short</title>
|
||||
<link>https://fedesrv.ddns.net/proyectos/url-short/</link>
|
||||
<pubDate>Sun, 22 Mar 2026 15:03:19 -0300</pubDate>
|
||||
<guid>https://fedesrv.ddns.net/proyectos/url-short/</guid>
|
||||
<description><p>Finalmente me decidi por realizar mi primer proyecto usando go. Este es un acortador de urls el cual permite registar las urls en una base de datos sqlite3 y recuperar la url normal al acceder a la api.</p>
<h2 id="funcionalidades">Funcionalidades</h2>
<ul>
<li>Acortar Urls dando una id random Uint64 casteada a int64.</li>
<li>Enviar un 301 a la pagina que necesites redireccionar.</li>
</ul>
<p>El <a href="https://fedesrv.ddns.net/git/fede/url-short">Fuente</a> se encuentra en ese link.</p></description>
|
||||
</item>
|
||||
<item>
|
||||
<title>Panel Web</title>
|
||||
<link>https://fedesrv.ddns.net/proyectos/paneldb/</link>
|
||||
|
||||
BIN
public/proyectos/url-short/1.gif
Normal file
BIN
public/proyectos/url-short/1.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.5 MiB |
BIN
public/proyectos/url-short/image.png
Normal file
BIN
public/proyectos/url-short/image.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 10 KiB |
248
public/proyectos/url-short/index.html
Normal file
248
public/proyectos/url-short/index.html
Normal file
@@ -0,0 +1,248 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="es">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Url Short</title>
|
||||
<link rel="stylesheet" href="/css/main.css">
|
||||
<link rel="stylesheet" href="/css/styles.css">
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<main>
|
||||
|
||||
<nav class="bg-gray-800 fixed w-full top-0 z-3">
|
||||
<div class="mx-auto px-4">
|
||||
<div class="flex items-center justify-between h-16">
|
||||
<div class="flex items-center">
|
||||
<a href="/" class="text-white font-bold text-xl"
|
||||
>Fede Landing Site</a
|
||||
>
|
||||
</div>
|
||||
|
||||
<div class="hidden md:flex">
|
||||
<a
|
||||
href="/git"
|
||||
target="_blank"
|
||||
class="text-gray-300 hover:text-white px-3 py-2"
|
||||
>Git</a
|
||||
>
|
||||
<a
|
||||
class="text-gray-300 hover:text-white px-3 py-2 muted"
|
||||
href="https://fedesrv.ddns.net/git/fede/CV/media/branch/master/Federico_Polidoro_CV.pdf"
|
||||
target="_blank"
|
||||
>CV</a
|
||||
>
|
||||
<a
|
||||
href="https://github.com/fedpo2"
|
||||
target="_blank"
|
||||
class="text-gray-300 hover:text-white px-3 py-2"
|
||||
>GitHub</a
|
||||
>
|
||||
<a
|
||||
href="mailto:federico.nicolas.polidoro@gmail.com"
|
||||
target="_blank"
|
||||
class="text-gray-300 hover:text-white px-3 py-2"
|
||||
>Email</a
|
||||
>
|
||||
<a
|
||||
href="https://www.linkedin.com/in/federico-polidoro-40137a25b/"
|
||||
target="_blank"
|
||||
class="text-gray-300 hover:text-white px-3 py-2"
|
||||
>LinkedIn</a
|
||||
>
|
||||
</div>
|
||||
|
||||
<div class="md:hidden cursor-context-menu">
|
||||
<button
|
||||
onclick="toggleOffCanvas()"
|
||||
class="border px-2 py-1 rounded text-white"
|
||||
>
|
||||
<svg
|
||||
class="h-6 w-6"
|
||||
fill="none"
|
||||
viewBox="0 0 24 24"
|
||||
stroke="currentColor"
|
||||
>
|
||||
<path
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
stroke-width="2"
|
||||
d="M0 6h25M0 12h25M0 18h25"
|
||||
/>
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div
|
||||
id="offCanvas"
|
||||
class="fixed top-16 right-0 w-64 h-screen bg-gray-800 transform translate-x-full transition-transform duration-200 ease-in-out"
|
||||
>
|
||||
<div class="flex flex-col p-4">
|
||||
<a
|
||||
href="/git"
|
||||
target="_blank"
|
||||
class="text-gray-300 hover:text-white px-3 py-2"
|
||||
>Git</a
|
||||
>
|
||||
<a
|
||||
class="text-gray-300 hover:text-white px-3 py-2 muted"
|
||||
href="https://fedesrv.ddns.net/git/fede/CV/media/branch/master/Federico_Polidoro_CV.pdf"
|
||||
target="_blank"
|
||||
>CV</a
|
||||
>
|
||||
<a
|
||||
href="https://github.com/fedpo2"
|
||||
target="_blank"
|
||||
class="text-gray-300 hover:text-white px-3 py-2"
|
||||
>GitHub</a
|
||||
>
|
||||
<a
|
||||
href="mailto:federico.nicolas.polidoro@gmail.com"
|
||||
target="_blank"
|
||||
class="text-gray-300 hover:text-white px-3 py-2"
|
||||
>Email</a
|
||||
>
|
||||
<a
|
||||
href="https://www.linkedin.com/in/federico-polidoro-40137a25b/"
|
||||
target="_blank"
|
||||
class="text-gray-300 hover:text-white px-3 py-2"
|
||||
>LinkedIn</a
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
<script>
|
||||
function toggleOffCanvas() {
|
||||
const offCanvas = document.getElementById("offCanvas");
|
||||
offCanvas.classList.toggle("translate-x-full");
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<style>
|
||||
@font-face {
|
||||
font-family: 'MiFuente';
|
||||
src: url('/calamity.ttf') format('truetype');
|
||||
}
|
||||
header{
|
||||
font-family: 'MiFuente', sans-serif;
|
||||
}
|
||||
</style>
|
||||
<div class="mt-16 bg-sky-300">
|
||||
<header class="text-center text-6xl pt-5">Url Short</header>
|
||||
|
||||
<div class="flex justify-center">
|
||||
<div class="flex w-100 ">
|
||||
<hr class="w-[50%] mt-6">
|
||||
<p class="text-4xl">
|
||||
|
||||
o
|
||||
|
||||
</p>
|
||||
<hr class="w-[50%] mt-6">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="flex flex-col justify-center w-fit mx-auto mt-2">
|
||||
<div class="rounded-t-full bg-sky-600">.</div>
|
||||
<div class="flex justify-center gap-2 p-8 bg-sky-600">
|
||||
|
||||
<button class="p-1 rounded bg-white transform hover:scale-120
|
||||
transition-all duration-100 ease-linear border-2 hover:z-2 active:z-0" onclick="openmodal("1.gif")">
|
||||
<img src="1.gif" alt="Carousel Image" class="
|
||||
h-[20rem] rounded">
|
||||
</button>
|
||||
|
||||
<button class="p-1 rounded bg-white transform hover:scale-120
|
||||
transition-all duration-100 ease-linear border-2 hover:z-2 active:z-0" onclick="openmodal("image.png")">
|
||||
<img src="image.png" alt="Carousel Image" class="
|
||||
h-[20rem] rounded">
|
||||
</button>
|
||||
|
||||
</div>
|
||||
<div class="rounded-b-full bg-sky-600 shadow-xl/30 mb-4">.</div>
|
||||
|
||||
|
||||
<dialog id="1.gif" class="fixed inset-0 flex items-center justify-center
|
||||
z-50 w-full h-full bg-black bg-opacity-50"
|
||||
style="background-color: rgba(0,0,0,0.2);" onclick="openmodal("1.gif")" hidden>
|
||||
<img src="1.gif" alt="Carousel Image" class="
|
||||
mt-2 p-1 bg-white border-2
|
||||
h-[80%] rounded-md opacity-100">
|
||||
</dialog>
|
||||
|
||||
<dialog id="image.png" class="fixed inset-0 flex items-center justify-center
|
||||
z-50 w-full h-full bg-black bg-opacity-50"
|
||||
style="background-color: rgba(0,0,0,0.2);" onclick="openmodal("image.png")" hidden>
|
||||
<img src="image.png" alt="Carousel Image" class="
|
||||
mt-2 p-1 bg-white border-2
|
||||
h-[80%] rounded-md opacity-100">
|
||||
</dialog>
|
||||
|
||||
<script>
|
||||
function openmodal(id){
|
||||
let dialog = document.getElementById(id);
|
||||
dialog.toggleAttribute("hidden");
|
||||
}
|
||||
</script>
|
||||
|
||||
</div>
|
||||
<div class="flex justify-center">
|
||||
<div class="flex w-100 ">
|
||||
<hr class="w-[50%] mt-6">
|
||||
<p class="text-4xl">
|
||||
|
||||
o
|
||||
|
||||
</p>
|
||||
<hr class="w-[50%] mt-6">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex justify-center mt-2">
|
||||
<article><p>Finalmente me decidi por realizar mi primer proyecto usando go. Este es un acortador de urls el cual permite registar las urls en una base de datos sqlite3 y recuperar la url normal al acceder a la api.</p>
|
||||
<h2 id="funcionalidades">Funcionalidades</h2>
|
||||
<ul>
|
||||
<li>Acortar Urls dando una id random Uint64 casteada a int64.</li>
|
||||
<li>Enviar un 301 a la pagina que necesites redireccionar.</li>
|
||||
</ul>
|
||||
<p>El <a href="https://fedesrv.ddns.net/git/fede/url-short">Fuente</a> se encuentra en ese link.</p>
|
||||
</article>
|
||||
</div>
|
||||
</div>
|
||||
<div class="bg-sky-300 rounded-b-full shadow-md">
|
||||
<p>.</p>
|
||||
</div>
|
||||
|
||||
|
||||
</main>
|
||||
<br>
|
||||
<footer class="text-center text-sm text-gray-500 mt-12 py-6 border-t">
|
||||
© 2026 Federico Polidoro
|
||||
</footer>
|
||||
</body>
|
||||
</html>
|
||||
@@ -3,12 +3,15 @@
|
||||
xmlns:xhtml="http://www.w3.org/1999/xhtml">
|
||||
<url>
|
||||
<loc>https://fedesrv.ddns.net/</loc>
|
||||
<lastmod>2025-05-02T02:13:53-03:00</lastmod>
|
||||
</url><url>
|
||||
<loc>https://fedesrv.ddns.net/proyectos/paneldb/</loc>
|
||||
<lastmod>2025-05-02T02:13:53-03:00</lastmod>
|
||||
<lastmod>2026-03-22T15:03:19-03:00</lastmod>
|
||||
</url><url>
|
||||
<loc>https://fedesrv.ddns.net/proyectos/</loc>
|
||||
<lastmod>2026-03-22T15:03:19-03:00</lastmod>
|
||||
</url><url>
|
||||
<loc>https://fedesrv.ddns.net/proyectos/url-short/</loc>
|
||||
<lastmod>2026-03-22T15:03:19-03:00</lastmod>
|
||||
</url><url>
|
||||
<loc>https://fedesrv.ddns.net/proyectos/paneldb/</loc>
|
||||
<lastmod>2025-05-02T02:13:53-03:00</lastmod>
|
||||
</url><url>
|
||||
<loc>https://fedesrv.ddns.net/proyectos/controlstock/</loc>
|
||||
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user