Implementación de Horarios y Cronogramas

Rate this content
Bookmark

Planby es un componente basado en React para una rápida implementación de Horarios, Cronogramas, Guía de Programas Electrónicos, Eventos de Música/Deporte, Planificador de Calendario y muchas más ideas. Utiliza una vista virtual personalizada que te permite operar con un gran número de datos. El componente tiene una API sencilla que puedes integrar fácilmente con otras bibliotecas de interfaz de usuario de terceros. El tema del componente se personaliza según las necesidades del diseño de la aplicación.

Karol Kozer
Karol Kozer
6 min
23 Oct, 2023

Video Summary and Transcription

La charla de hoy se centra en la implementación de horarios y cronogramas utilizando el componente PlanBy. PlanBy es una herramienta basada en React que ofrece una interfaz sencilla y características como barra lateral, cronograma, diseño y actualización en vivo del programa. Utiliza una vista virtualizada personalizada para manejar grandes cantidades de datos de manera eficiente. El componente permite una fácil personalización y se puede utilizar para construir programadores, agendas de conferencias, guías de TV y más. La instalación es sencilla, requiere solo unos pocos componentes, un gancho y dos envoltorios.

Available in English

1. Introducción a las Líneas de Tiempo y al Componente PlanBy

Short description:

Hoy voy a hablar sobre cómo implementar horarios y líneas de tiempo. Las líneas de tiempo son herramientas simples que muestran el tiempo, el ciber y el contenido. Los usuarios pueden ver eventos futuros y pasados horizontal y verticalmente. La perspectiva del usuario se centra en el tiempo, el ciber y el contenido. Sin optimización, tener muchos elementos en el sitio web puede causar problemas de rendimiento y fallos. Posicionar programas en el diseño también puede ser problemático. Las buenas y malas soluciones dependen de los objetivos del proyecto y la interacción del usuario. El componente PlanBy es una herramienta basada en React para implementar líneas de tiempo de manera rápida y sencilla.

Hola a todos. Hoy voy a hablar sobre cómo implementar horarios y líneas de tiempo. Estoy seguro de que cada uno de nosotros ha enfrentado una serie de problemas con las líneas de tiempo. Mi nombre es Karol Kozer. Soy ingeniero de software senior y soy el creador de PlanBy y un proyecto OpenSource.

Permítanme decir unas palabras sobre las líneas de tiempo. La línea de tiempo es una herramienta realmente simple que muestra el tiempo, el ciber y el contenido. En la parte superior, tenemos una línea de tiempo con el tiempo. A la izquierda hay una barra lateral que enumera los proveedores. En el medio, hay un diseño con eventos posicionados en una línea de tiempo. Básicamente, los usuarios tienen la posibilidad de ver todos los eventos futuros y pasados para todos los proveedores dados, tanto horizontal como verticalmente.

Veamos qué problemas tenemos con las líneas de tiempo. Concentrémonos en cómo se ve desde la perspectiva del usuario. El usuario solo puede ver el tiempo, el ciber y el contenido. Básicamente, el usuario puede moverse por el diseño, tanto horizontal como verticalmente para ver eventos futuros y pasados. También me gustaría mencionar que a nuestro usuario no le importa sobre la implementación técnica y solución en nuestra aplicación.

Permítanme arrojar algo de luz sobre cómo funciona bajo el capó. Sin ninguna optimización y soluciones de rendimiento, podemos tener, digamos, 5,000 elementos en el sitio web. Lo más importante en este tipo de característica es el rendimiento versus los grandes datos en el sitio web. Básicamente, mantener todos los elementos sin ninguna optimización y soluciones de rendimiento en la página puede llevar a terribles ralentizaciones de la aplicación, que eventualmente causaron el fallo del navegador. También la posición de todos los programas en el diseño parece simple, pero a veces también podría ser problemático.

Concentrémonos en la siguiente pregunta. ¿Existen buenas y malas soluciones? Diría que este es un tema realmente complejo y solo depende de lo que te gustaría lograr o cuál es la solución correcta para tu proyecto. También, tienes que tener en cuenta cómo interactuar rápidamente con el usuario. Tienes que pensar en características como filtros, recordatorios, modal y muchos, muchos más. Finalmente, me gustaría presentarles el componente plan by. La definición de plan by es bastante sencilla. Plan by es un componente basado en React que te permite implementar tu propia línea de tiempo de manera rápida y sencilla. Esa es toda la definición, nada loco. Plan by se desarrolla con React y TypeScript con una cantidad mínima de recursos.

2. Características e Instalación del Componente PlanBy

Short description:

PlanBy utiliza una vista virtualizada personalizada para manejar grandes cantidades de datos y posicionar elementos en el horario. Solo renderiza los elementos visibles, lo que lo hace más rápido y eficiente. El componente tiene una interfaz sencilla con características como barra lateral, línea de tiempo, diseño y actualización en vivo del programa. Puedes personalizar el diseño y construir fácilmente programadores, agendas de conferencias, guías de TV y más. La instalación es sencilla, solo requiere unos pocos componentes, un hook y dos wrappers.

PlanBy utiliza una vista virtualizada personalizada, o puedes llamarla línea de tiempo virtualizada, que te permite operar con una gran cantidad de data y posicionar todos los elementos en tu horario de forma predeterminada. Y esto es realmente, realmente genial.

A continuación, me gustaría centrarme en cómo funciona PlanBy. Básicamente, PlanBy solo renderiza los elementos que son visibles para el usuario y realiza todos los cálculos en segundo plano. Cuando el usuario se desplaza hacia abajo o hacia la derecha, PlanBy está actualizando la vista con solo los elementos visibles para el usuario. Todos los elementos fuera del diseño no están incluidos en la estructura HTML, lo que hace que el componente PlanBy sea mucho más rápido y eficiente.

PlanBy tiene una interfaz sencilla e incluye todas las características necesarias como barra lateral, línea de tiempo, diseño y actualización en vivo del programa. Además, hay una característica opcional que permite ocultar cualquier elemento que no quieras incluir en el diseño. Básicamente, el componente tiene una API realmente sencilla que te permite implementar tus propios elementos junto con tus preferencias. Puedes usar los componentes de estilos de PlanBy para desarrollar características principales, ya sabes, o hacer estilos personalizados en línea con el design elegido.

Veamos qué podemos construir con PlanBy. Usando PlanBy puedes construir lo que quieras, programadores, conferencias, eventos musicales, guías de TV, planificadores de calendario y muchas, muchas más ideas. La instalación del componente es realmente fácil. Solo necesitas instalar el paquete usando yarn o npm. La configuración es muy sencilla y minimalista. La configuración es muy sencilla y minimalista. Me gusta mucho eso. Todo lo que necesitas hacer es importar unos pocos componentes, un hook y dos wrappers. Y eso es todo. Mantengamos la configuración. Esto es realmente, realmente sencillo, y puedes crear hermosos horarios como este en unos pocos minutos. Muchas gracias por tu tiempo y nos vemos en la masterclass de React Advanced en Londres. Adiós.

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

A Framework for Managing Technical Debt
TechLead Conference 2023TechLead Conference 2023
35 min
A Framework for Managing Technical Debt
Top Content
Let’s face it: technical debt is inevitable and rewriting your code every 6 months is not an option. Refactoring is a complex topic that doesn't have a one-size-fits-all solution. Frontend applications are particularly sensitive because of frequent requirements and user flows changes. New abstractions, updated patterns and cleaning up those old functions - it all sounds great on paper, but it often fails in practice: todos accumulate, tickets end up rotting in the backlog and legacy code crops up in every corner of your codebase. So a process of continuous refactoring is the only weapon you have against tech debt.In the past three years, I’ve been exploring different strategies and processes for refactoring code. In this talk I will describe the key components of a framework for tackling refactoring and I will share some of the learnings accumulated along the way. Hopefully, this will help you in your quest of improving the code quality of your codebases.

Debugging JS
React Summit 2023React Summit 2023
24 min
Debugging JS
Top Content
As developers, we spend much of our time debugging apps - often code we didn't even write. Sadly, few developers have ever been taught how to approach debugging - it's something most of us learn through painful experience.  The good news is you _can_ learn how to debug effectively, and there's several key techniques and tools you can use for debugging JS and React apps.
Monolith to Micro-Frontends
React Advanced Conference 2022React Advanced Conference 2022
22 min
Monolith to Micro-Frontends
Top Content
Many companies worldwide are considering adopting Micro-Frontends to improve business agility and scale, however, there are many unknowns when it comes to what the migration path looks like in practice. In this talk, I will discuss the steps required to successfully migrate a monolithic React Application into a more modular decoupled frontend architecture.
Power Fixing React Performance Woes
React Advanced Conference 2023React Advanced Conference 2023
22 min
Power Fixing React Performance Woes
Top Content
Next.js and other wrapping React frameworks provide great power in building larger applications. But with great power comes great performance responsibility - and if you don’t pay attention, it’s easy to add multiple seconds of loading penalty on all of your pages. Eek! Let’s walk through a case study of how a few hours of performance debugging improved both load and parse times for the Centered app by several hundred percent each. We’ll learn not just why those performance problems happen, but how to diagnose and fix them. Hooray, performance! ⚡️
Building a Voice-Enabled AI Assistant With Javascript
JSNation 2023JSNation 2023
21 min
Building a Voice-Enabled AI Assistant With Javascript
Top Content
In this talk, we'll build our own Jarvis using Web APIs and langchain. There will be live coding.
Video Editing in the Browser
React Summit 2023React Summit 2023
24 min
Video Editing in the Browser
Video editing is a booming market with influencers being all the rage with Reels, TikTok, Youtube. Did you know that browsers now have all the APIs to do video editing in the browser? In this talk I'm going to give you a primer on how video encoding works and how to make it work within the browser. Spoiler, it's not trivial!

Workshops on related topic

React Performance Debugging Masterclass
React Summit 2023React Summit 2023
170 min
React Performance Debugging Masterclass
Top Content
Featured WorkshopFree
Ivan Akulov
Ivan Akulov
Ivan’s first attempts at performance debugging were chaotic. He would see a slow interaction, try a random optimization, see that it didn't help, and keep trying other optimizations until he found the right one (or gave up).
Back then, Ivan didn’t know how to use performance devtools well. He would do a recording in Chrome DevTools or React Profiler, poke around it, try clicking random things, and then close it in frustration a few minutes later. Now, Ivan knows exactly where and what to look for. And in this workshop, Ivan will teach you that too.
Here’s how this is going to work. We’ll take a slow app → debug it (using tools like Chrome DevTools, React Profiler, and why-did-you-render) → pinpoint the bottleneck → and then repeat, several times more. We won’t talk about the solutions (in 90% of the cases, it’s just the ol’ regular useMemo() or memo()). But we’ll talk about everything that comes before – and learn how to analyze any React performance problem, step by step.
(Note: This workshop is best suited for engineers who are already familiar with how useMemo() and memo() work – but want to get better at using the performance tools around React. Also, we’ll be covering interaction performance, not load speed, so you won’t hear a word about Lighthouse 🤐)
Building a Shopify App with React & Node
React Summit Remote Edition 2021React Summit Remote Edition 2021
87 min
Building a Shopify App with React & Node
Top Content
WorkshopFree
Jennifer Gray
Hanna Chen
2 authors
Shopify merchants have a diverse set of needs, and developers have a unique opportunity to meet those needs building apps. Building an app can be tough work but Shopify has created a set of tools and resources to help you build out a seamless app experience as quickly as possible. Get hands on experience building an embedded Shopify app using the Shopify App CLI, Polaris and Shopify App Bridge.We’ll show you how to create an app that accesses information from a development store and can run in your local environment.
Build a chat room with Appwrite and React
JSNation 2022JSNation 2022
41 min
Build a chat room with Appwrite and React
WorkshopFree
Wess Cope
Wess Cope
API's/Backends are difficult and we need websockets. You will be using VS Code as your editor, Parcel.js, Chakra-ui, React, React Icons, and Appwrite. By the end of this workshop, you will have the knowledge to build a real-time app using Appwrite and zero API development. Follow along and you'll have an awesome chat app to show off!
Hard GraphQL Problems at Shopify
GraphQL Galaxy 2021GraphQL Galaxy 2021
164 min
Hard GraphQL Problems at Shopify
WorkshopFree
Rebecca Friedman
Jonathan Baker
Alex Ackerman
Théo Ben Hassen
 Greg MacWilliam
5 authors
At Shopify scale, we solve some pretty hard problems. In this workshop, five different speakers will outline some of the challenges we’ve faced, and how we’ve overcome them.

Table of contents:
1 - The infamous "N+1" problem: Jonathan Baker - Let's talk about what it is, why it is a problem, and how Shopify handles it at scale across several GraphQL APIs.
2 - Contextualizing GraphQL APIs: Alex Ackerman - How and why we decided to use directives. I’ll share what directives are, which directives are available out of the box, and how to create custom directives.
3 - Faster GraphQL queries for mobile clients: Theo Ben Hassen - As your mobile app grows, so will your GraphQL queries. In this talk, I will go over diverse strategies to make your queries faster and more effective.
4 - Building tomorrow’s product today: Greg MacWilliam - How Shopify adopts future features in today’s code.
5 - Managing large APIs effectively: Rebecca Friedman - We have thousands of developers at Shopify. Let’s take a look at how we’re ensuring the quality and consistency of our GraphQL APIs with so many contributors.
0 To Auth In An Hour For Your JavaScript App
JSNation 2023JSNation 2023
57 min
0 To Auth In An Hour For Your JavaScript App
WorkshopFree
Asaf Shen
Asaf Shen
Passwordless authentication may seem complex, but it is simple to add it to any app using the right tool.
We will enhance a full-stack JS application (Node.js backend + Vanilla JS frontend) to authenticate users with One Time Passwords (email) and OAuth, including:
- User authentication – Managing user interactions, returning session / refresh JWTs- Session management and validation – Storing the session securely for subsequent client requests, validating / refreshing sessions
At the end of the workshop, we will also touch on another approach to code authentication using frontend Descope Flows (drag-and-drop workflows), while keeping only session validation in the backend. With this, we will also show how easy it is to enable biometrics and other passwordless authentication methods.