Foros del Web » Programando para Internet » Javascript »

JSDock: proyecto opensource

Estas en el tema de JSDock: proyecto opensource en el foro de Javascript en Foros del Web. Buenas: estoy buscando gente que quiera participar en el desarrollo de una librería en Javascript que imite el funcionamiento del Dock de Mac OS . ...
  #1 (permalink)  
Antiguo 27/11/2009, 14:35
Avatar de dggluz  
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 525
Antigüedad: 15 años
Puntos: 50
JSDock: proyecto opensource

Buenas: estoy buscando gente que quiera participar en el desarrollo de una librería en Javascript que imite el funcionamiento del Dock de Mac OS. La idea es la siguiente:
  • El desarrollo es sin fines de lucro (ni míos ni de ningún otro), una vez finalizado será publicado en ForosDelWeb como "aporte".
  • El desarrollo será OpenSource, nunca participé en uno de estos desarrollos ni sé cuál es la mejor forma de implementarlo, pero supongo que se hará a través de un sitio web con página de descarga, página de discusión, página de reportes de bugs y página de documentación... algo así como la de jQuery pero menos pretenciosa. En principio, no es mi idea crear un sitio desde cero para ello, pido la colaboración de alguien si puede informarme de algún medio que ya esté implementado.
  • El dock debe ser personalizable, incluir animaciones, etc.
  • Es ideal que el desarrollo sea lo más liviano posible (para su descarga, pero también para su ejecución); en ese sentido sería útil no depender de ningún framework.
  • Obviamente, sería ideal que sea código válido y que funcione en la mayor cantidad de navegadores posible; sobre todo cuanto más se ciñan a los estándares.
  • El nombre del proyecto puede cambiar .
  • Estoy buscando colaboradores, no socios. La participación puede ser esporádica; el único requisito es compartir el deseo de hacer el desarrollo. La idea es que sea un desarrollo colectivo, como tantos otros proyectos en la red.
Bueno, esa es la idea general; si quieren, pueden leer la historia de esto:
Cita:
Érase una vez: yo. Durante un tiempo he buscado un desarrollo en javascript que imite al Dock de Mac OS; encontré varios, pero ninguno me convencía. Ninguno era demasiado personalizable ni tenía animación al dar click; de modo que desarrollé uno para usar en mi sitio. Se me ocurrió hacerlo y luego publicarlo aquí como aporte, pero en realidad, el que hice tampoco me termina de convencer: tiene animación, pero no es personalizable, y además depende de jQuery. Esos cambios eran demasiado ambiciosos para mí sólo (teniendo en cuenta el tiempo necesario y mis actuales conocimientos de javascript, que no son malos pero tampoco son extraordinarios). De modo que tomé la decisión de intentar hacer el desarrollo de modo colectivo, así como funcionan actualmente muchos proyectos (quizás el caso paradigmático sea Linux). Si así lo desean, puedo contar cómo conseguí hacer el dock que ahora estoy implementando, para mejorar esa idea; o se puede comenzar todo desde cero.
Para los moderadores: dudé mucho si poner este tema en este foro o en "Emprendimiento Web", pero en vista de que este último se refiere a "emprendimiento" en el sentido de "empresa informal" (es subforo de "Haciendo negocios en el web"), es que decidí postear aquí. Si descubren que otra categoría es más correcta, les ruego que muevan el tema.

Espero que haya mucha gente que se "prenda". Muchas gracias.
  #2 (permalink)  
Antiguo 27/11/2009, 14:58
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: JSDock: proyecto opensource

nunca he tenido la oportunidad de ver mac os en funcionamiento, si puedes pasar el link de un vídeo para ver más u menos la funcionalidad del dock (para ver si es como lo imagino), gracias, buena iniciativa
  #3 (permalink)  
Antiguo 27/11/2009, 15:18
Avatar de dggluz  
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 525
Antigüedad: 15 años
Puntos: 50
Respuesta: JSDock: proyecto opensource

Mira, he estado buscando videos, pero la verdad es que no hay casi ninguno que simplemente "muestre" el dock, más bien todos muestran hacks o cosas similares. Sin embargo, en éste puedes apreciar el funcionamiento básico. Además, aquí Apple explica lo que es el dock. Por último, aquí puedes ver algunos docks desarrollados en javascript (de los que no me habían convencido) y en mi firma está el link a mi sitio, ahí puedes ver el que yo uso (no repito el link para no hacer spam). ¡Suerte!
  #4 (permalink)  
Antiguo 28/11/2009, 01:16
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: JSDock: proyecto opensource

¿has visto este otro ejemplo? http://safalra.com/web-design/javasc...nstration.html me parece bueno aunque quizas le faltaria implementar algunas otras animaciones. pero mas importante aun no utiliza librerias. nota, no es mi intencion que desistas del proyecto porque la verdad me parece genial y mas aun si no se utiliza libreria. solo te muestro el enlace por si te convence o por si te es util de alguna forma.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #5 (permalink)  
Antiguo 28/11/2009, 01:27
Avatar de dggluz  
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 525
Antigüedad: 15 años
Puntos: 50
Respuesta: JSDock: proyecto opensource

Cita:
Iniciado por zerokilled Ver Mensaje
¿has visto este otro ejemplo? http://safalra.com/web-design/javasc...nstration.html me parece bueno aunque quizas le faltaria implementar algunas otras animaciones. pero mas importante aun no utiliza librerias. nota, no es mi intencion que desistas del proyecto porque la verdad me parece genial y mas aun si no se utiliza libreria. solo te muestro el enlace por si te convence o por si te es util de alguna forma.
Sí, lo vi... es el segundo de los que ponen en http://blog.neozeratul.com/2007/08/2...k-de-mac-os-x/, que es uno de los links que puse en mi post anterior. Pero mi idea es hacer uno más personalizable (que por ejemplo, pueda estar horizontal o vertical, etc.) y ese funciona de un modo un poco extraño: para mejorar la redimensión de imágenes, requiere de dos imágenes por ícono, algo que no siempre se puede pedir al usuario; además, quizás consuma muchos recursos. Pero ese es uno de los que más me ha gustado. ¡Suerte!
  #6 (permalink)  
Antiguo 28/11/2009, 01:38
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: JSDock: proyecto opensource

curioso, habia visto el demo del segundo link pero no me habia fijado que el link apuntaba a la misma URL que mencione. la verdad yo no se si pueda colaborar porque yo no tengo mucha idea de animacion. claro, se que es modificando periodicamente los estilos pero a eso no es lo que me refiero, sino a las tecnicas mas optimas para realizarlo. mantenos al tanto del proyecto
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #7 (permalink)  
Antiguo 28/11/2009, 10:48
Avatar de dggluz  
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 525
Antigüedad: 15 años
Puntos: 50
Respuesta: JSDock: proyecto opensource

Se trata más de tener ganas que de saber. El que implementé yo modifica el tamaño según el evento mousemove del body, pero se ejecuta sólo cada 25 ms (40 veces por segundo) para ahorrar recursos (un timer habilita un flag). Es una idea que se la debo a AnesGy y que empecé a implementar con muy buenos resultados; el se basó en el conocimiento de refresco de monitores y de animación (parece ser que 12 marcos por segundo es lo mínimo que se usa). Es cuestión de experimentar.
¿Alguno sabe alguna forma "pre hecha" de implementar la página de desarrollo? Porque ir pasándonos un montón de código fuente por acá es la otra opción... ¡Suerte!
  #8 (permalink)  
Antiguo 30/11/2009, 00:37
Avatar de dggluz  
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 525
Antigüedad: 15 años
Puntos: 50
Respuesta: JSDock: proyecto opensource

Gente: para comenzar a tener algo (y hasta poder tener un sitio propio del proyecto), decidí que a lo mejor era bueno empezar a trabajar en esto.
A continuación propongo el modelo de DOM que se me ocurre que puede implementar el proyecto (en realidad, este DOM representa cómo debería quedar el dock después de la carga de javascript):

La aclaración:
  • dock: el div que contiene a todo el resto. Es más que nada para poder referenciar el resto de los nodos a partir de éste y no del body.
  • bg: es un div que sencillamente tiene el "fondo" del dock... en principio, creo que sólo con el div alcanza, y que la imagen de fondo sea justamente background del div (aunque eso presenta el problema de cómo imitar la perspectiva que algunos docks tienen ).
  • title: sería en principio el "tooltip" que aparece al pasar sobre cualquier ícono del dock. Como sólo puede mostrarse un (o ningún) tooltip por vez, me parece correcto que sea sólo un div para todos los íconos, y que vaya desplazándose, apareciendo, desapareciendo y cambiando el texto según sea necesario.
  • wrapper: contenedor de los íconos, no sé si sea del todo necesario, pero no me pareció mal incluirlo para que los íconos sean todos "hermanos" entre sí pero que no sean hermanos de el "title" y el "bg"; lo puse más que nada por prolijidad.
  • elems: bueno, son los íconos propiamente dichos. En realidad, el ícono no sería sólo una imagen, de modo que este div haría de "contenedor" o "wrapper" del ícono. Nótese que son varios.
  • Enlace: simplemente es un link, que es útil no sólo por si el programador desea que los íconos del dock sean efectivamente links, sino también para que el dock "funcione" (que al menos sea un menú con links) en los casos en que javascript esté desactivado.
  • icon: ahora sí, la imagen del ícono.
  • disjunto: bueno, pensé este div en relación a poder "mover" con facilidad al ícono. Simplemente es un div que compite por el espacio del padre, con el ícono, de modo que haciéndolo crecer y decrecer se puede mover al ícono (se lo puede hacer revotar, etc).
Bien, eso fue mi opinión. Espero sus críticas.

PD: por favor, colaboren o esto no será un proyecto colectivo. Pueden aportar en el tema que quieran. Se me ocurrieron varios problemas a resolver: cuál es la estructura inicial (antes de ejecutar el "constructor" - o lo que fuere - del dock), qué efectos incluir, en qué formas se debe mostrar, etc. Con lo que quieran aportar, ¡háganlo!

PD2: creo que a medida que el proyecto crezca, se va a ir haciendo más necesario un sitio dedicado para el desarrollo del mismo. Pensé en usar dokuwiki para que podamos empezar a trabajar de una vez; si a alguien se le ocurre algo mejor, coméntelo.
Por otra parte, faltaría resolver el tema del hosting y el del dominio (¡ah!, aún habría que decidir el nombre del proyecto así coincide con el del domino, ¿no creen?)... como es un proyecto sin fines de lucro, supongo que el hosting debería ser gratuito, lo mismo que el dominio. Los dominios en Argentina son gratuitos (.com.ar, .org.ar, etc.), pero no quiero que eso haga más "regional" este proyecto. Otra opción es que el sitio tenga publicidad y que con eso se solvente el dominio - y eventualmente el hosting. Una última cosa al respecto: registrar el dominio bajo mi nombre me daría unos "poderes" sobre el mismo que sería injusto que tuviera si el proyecto es colectivo. Sin embargo, no sé cómo se podría registrar un proyecto "colectivo". ¿Qué debo hacer? ¡Escucho (leo) ideas! ¡Suerte!
  #9 (permalink)  
Antiguo 02/12/2009, 06:06
Avatar de AnesGy  
Fecha de Ingreso: mayo-2009
Mensajes: 518
Antigüedad: 15 años
Puntos: 19
Respuesta: JSDock: proyecto opensource

Tu ya hiciste el código para tu página web. Lo único que hay que hacer es que se inserten los elementos automáticamente en base a un array de elementos o una función. No debería ser muy complicado.

De todas formas una librería entera para el código javascript para hacer la barra de herramientas del Mac es algo... no es una librería. La librería es un grupo de funciones. Más bien sería un snippet como lo llaman ahora.

Acuérdate de lo de la optimización de frames que te dije, y creo que es un aporte pequeñito al proyecto, pero algo es algo.
__________________
Si alguna vez parece que soy grosero, pido perdón, es un intento fallido de ser directo.

AnesGy SD. Name it, Get it
  #10 (permalink)  
Antiguo 02/12/2009, 11:01
Avatar de dggluz  
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 525
Antigüedad: 15 años
Puntos: 50
Respuesta: JSDock: proyecto opensource

Pues sí, lo que tengo en mi sitio es algo; pero me gustaría que fuese mucho más personalizable, además mi código depende de jQuery, y sería bueno que fuese independiente de éste. Desde luego que pienso incluir tu consejo de los frames . ¡Suerte!
  #11 (permalink)  
Antiguo 08/12/2009, 16:41
Avatar de AnesGy  
Fecha de Ingreso: mayo-2009
Mensajes: 518
Antigüedad: 15 años
Puntos: 19
Respuesta: JSDock: proyecto opensource

Creo que deberías enfocar esto de otra manera, en vez de un jsdock pensaría en un jsGraphics Suite o algo, algo que suene cool, pero que no sólo se centre en la barra de tareas de Mac, para que sea una librería.
__________________
Si alguna vez parece que soy grosero, pido perdón, es un intento fallido de ser directo.

AnesGy SD. Name it, Get it
  #12 (permalink)  
Antiguo 08/12/2009, 23:57
Avatar de dggluz  
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 525
Antigüedad: 15 años
Puntos: 50
Respuesta: JSDock: proyecto opensource

Mmmm.... es una propuesta interesante, pero es mucho más ambicioso. Creo que voy a intentarlo. En cuanto tenga un poco de tiempo iré avanzando el proyecto. ¡Suerte!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:41.