Skip to content

BetaMee/DayOne

Repository files navigation

DayOne is just an application for recording your one day

English version

Start

  • yarn run start

Technology stack

  • Desktop application framework: electon
  • Desktop application build kits: electron-forge
  • UI application framework: React (hooks version)
  • UI application build tools: Webpack
  • Data calculating: Ramda.js
  • Asynchronous processing: Rx.js
  • Development language: Typescript

Completed part

  • Setup of application
  • Basic project allocation
  • Use mobx as global state management for React
  • The resize support of some div region

Technical points that need to be solved in the future

  • Add data layer
  • The suspended ceiling for ListViewMode component
  • The animated scroll for ListViewMode component
  • The animated drag and drop for ListViewMode component
  • The multiselect of animated drag and drop for ListViewMode component
  • onFocus event handler for some components
  • Performance optimization
  • BlockViewMode component
  • MapViewMode component
  • CalendarViewMode component
  • Appilication status component
  • Setting window
  • New Journal window
  • Communication between the main process and the rendering process
  • Fingerprint or password identification of Mac OS for application
  • Try new build tools: Docker、Travis

中文版

启动

yarn run start

技术栈

  • 应用基础框架:electon
  • 应用脚手架:electron-forge
  • UI 页面框架:React(使用最新的 hooks 版本)
  • UI 页面构建工具:Webpack
  • 数据计算:Ramda.js
  • 异步处理:Rx.js
  • 开发语言:Typescript

已完成的部分

  • 应用的启动
  • 应用的基础划分
  • 接入 mobx 作状态管理
  • 区域拖拽重置宽度

未来需要解决的技术点

  • 接入数据层
  • ListViewMode 组件悬浮吸顶
  • ListViewMode 组件添加动画滚动
  • ListViewMode 组件添加动画拖拽
  • ListViewMode 组件添加动画多选拖拽
  • 应用部分组件添加 onFocus 支持
  • 性能优化(特别是区域拖拽重置带来的组件刷新)
  • BlockViewMode 组件 — [ ] MapViewMode 组件
  • CalendarViewMode 组件
  • 应用状态组件
  • 设置窗口
  • 新增 Journal 窗口
  • 主进程和渲染进程之间的通信
  • Mac OS 指纹或者密码识别
  • 新增构建工具:Docker、Travis