finish peddler app translation
This commit is contained in:
parent
42f2da1177
commit
95e0581e40
@ -2,7 +2,7 @@
|
||||
title: Peddler App
|
||||
description: You hear the ice cream man in his truck, you try to catch him, but the guy is already far away.
|
||||
tags: [Tech, SideProject]
|
||||
image: '/blog/peddler-app/banner.png'
|
||||
image: "/blog/peddler-app/banner.png"
|
||||
imageCaption: Peddler App provisional logo
|
||||
date: 2023-12-11
|
||||
author: Juan Manzanero
|
||||
@ -56,7 +56,7 @@ next features:
|
||||
- Customers can just create a profile with their name or alias, and set
|
||||
locations, for example: house
|
||||
- Once a peddler is near, the backend will send a notification to the customer
|
||||
- If the customer taps and confirms the notification
|
||||
- The customer taps and confirms the notification
|
||||
|
||||
Of course, customers would change notifications settings and more, but that's
|
||||
the core idea.
|
||||
|
54
src/content/blog/es/peddler-app.mdx
Normal file
54
src/content/blog/es/peddler-app.mdx
Normal file
@ -0,0 +1,54 @@
|
||||
---
|
||||
title: Peddler App
|
||||
description: Escuchas al heladero en su camioneta, intentas alcanzarlo, pero ya está lejos.
|
||||
tags: [Tech, SideProject]
|
||||
image: /blog/peddler-app/banner.png
|
||||
imageCaption: Logo provisional de Peddler App
|
||||
date: 2023-12-11
|
||||
author: Juan Manzanero
|
||||
rss: true
|
||||
---
|
||||
|
||||
 _Logo provisional de Peddler App_
|
||||
|
||||
## La idea
|
||||
|
||||
Escuchas al heladero en su camioneta, intentas alcanzarlo, pero ya está lejos.
|
||||
|
||||
¿Por qué no recibir una notificación en tu celular cuando el heladero está cerca de ti?, así puedes tocar la
|
||||
notificación y solicitar al heladero que pase en tu ubicación.
|
||||
|
||||
Ese es el propósito de esta app.
|
||||
|
||||
## Abrumador para mi
|
||||
|
||||
Nunca he desarrollado una app grande por mi mismo, pero quiero intentarlo y ver qué ocurre.
|
||||
|
||||
Quiero seguir el camino Indie Hacker, compartiendo en público el progreso, y recibiendo feedback
|
||||
de la comunidad.
|
||||
|
||||
Este post es el primer paso antes de diseñarlo en Figma o incluso crear la landing page, así que
|
||||
quiero escuchar si te interesa, por qué no, o que sería genial para la app.
|
||||
|
||||
## Empezando pequeño
|
||||
|
||||
Realmente quiero empezar pequeño, lanzando un Minimum Viable Product (MVP), con las siguientes funcionalidades:
|
||||
|
||||
- Registro de usuarios y login
|
||||
- Dos tipos de usuarios, "peddlers" (vendedores ambulantes) y clientes
|
||||
- Peddlers
|
||||
- Si el usuario es peddler (quiere vender), redireccionar al formulario de peddlers
|
||||
- Peddlers pueden crear un perfil con el nombre de su empresa y productos que ofrece, por ejemplo helado, dulces, etc
|
||||
- Una vez que el registro es finalizado, peddlers pueden iniciar rutas
|
||||
- La app obtiene la ubicación del peddler, mostrándolo en el mapa
|
||||
- El backend detectará si el peddler entra en el radio de un cliente, y enviará una notificación push al cliente
|
||||
- Una vez que el peddler tiene una solicitud, la app mostrará la ubicación del cliente solicitante en el mapa
|
||||
- El peddler puede ir a la ubicación, y completar la transacción
|
||||
- Clientes
|
||||
- Clientes pueden crear una perfil con su nombre o alias, y registrar ubicaciones, por ejemplo: casa
|
||||
- Una vez que un peddler está cerca, el backend enviará una notificación push al cliente
|
||||
- El cliente toca y confirma la notificación
|
||||
|
||||
Por supuesto, clientes pueden cambiar la configuración de las notificaciones, pero esa es la idea core.
|
||||
|
||||
Para el MVP no quiero implementar pagos dentro de la app, pero desde luego, podría ser un feature futuro.
|
@ -95,7 +95,6 @@ estaría genial lanzar un videojuego pequeño, pero terminado.
|
||||
Créeme, es muy, **MUY** difícil desarrollar videojuegos, así que en lugar de abrumarme, mantendré mis
|
||||
**ambiciones simples**, pero **constantes**.
|
||||
|
||||
|
||||
### ¡Felices fiestas!
|
||||
|
||||

|
||||
|
@ -7,29 +7,29 @@ import type { CollectionEntry } from "astro:content";
|
||||
import { getLangFromUrl } from "@/i18n/utils";
|
||||
|
||||
interface Props {
|
||||
post: CollectionEntry<"blog">;
|
||||
post: CollectionEntry<"blog">;
|
||||
}
|
||||
|
||||
export async function getStaticPaths() {
|
||||
const allBlogPosts = await getCollection(
|
||||
"blog",
|
||||
({ data }) => data.draft !== true,
|
||||
);
|
||||
const filterEsPosts = allBlogPosts.map((post) => {
|
||||
const [lang, ...slug] = post.slug.split("/");
|
||||
const allBlogPosts = await getCollection(
|
||||
"blog",
|
||||
({ data }) => data.draft !== true,
|
||||
);
|
||||
const filterEsPosts = allBlogPosts.map((post) => {
|
||||
const [lang, ...slug] = post.slug.split("/");
|
||||
|
||||
if (lang === "es")
|
||||
return {
|
||||
...post,
|
||||
slug: slug.toString(),
|
||||
};
|
||||
else null;
|
||||
});
|
||||
if (lang === "es")
|
||||
return {
|
||||
...post,
|
||||
slug: slug.toString(),
|
||||
};
|
||||
else null;
|
||||
});
|
||||
|
||||
return filterEsPosts.map((post) => ({
|
||||
params: { slug: post?.slug },
|
||||
props: { post },
|
||||
}));
|
||||
return filterEsPosts.map((post) => ({
|
||||
params: { slug: post?.slug },
|
||||
props: { post },
|
||||
}));
|
||||
}
|
||||
|
||||
const { post } = Astro.props;
|
||||
@ -39,13 +39,13 @@ const lang = getLangFromUrl(Astro.url);
|
||||
---
|
||||
|
||||
<Layout title={post.data.title} description={post.data.description}>
|
||||
<article class="prose prose-invert">
|
||||
<h1>{post.data.title}</h1>
|
||||
<Content components={{ ...components }} />
|
||||
<hr />
|
||||
<p>
|
||||
<strong>Publicado: </strong>
|
||||
{post.data.date && formatDate(new Date(post.data.date), lang)}
|
||||
</p>
|
||||
</article>
|
||||
<article class="prose prose-invert">
|
||||
<h1>{post.data.title}</h1>
|
||||
<Content components={{ ...components }} />
|
||||
<hr />
|
||||
<p>
|
||||
<strong>Publicado: </strong>
|
||||
{post.data.date && formatDate(new Date(post.data.date), lang)}
|
||||
</p>
|
||||
</article>
|
||||
</Layout>
|
||||
|
Loading…
x
Reference in New Issue
Block a user