vision's People
vision's Issues
backend-independent state shape
Currently we use redux-firestore and react-redux-firebase to connect to data sources, and the state is in the shape of
{
"firebase": {
"data": { ... },
...
},
"firestore": {
"data": { ... },
...
},
...
}
We should redesign the state shape, as it doesn't make sense If the data source is changed.
the structure of Firestore database
Currently (as in PR #3 ) each sequence is store in one document, in the format of
{
name: '<seq name>',
values: [
{
timestamp: '<timestamp>',
value: '<value>'
},
...
]
}
and all documents live in a single collection. I think we can create different collections for development and production environments.
Any idea or comment about the format of sequences? Is there any other information we need to store?
Todos
- editor (react codemirror)
- remove chart
- lock chart
- navbar (import export)
- aggregate
- undo/redo
create test backend server
- Create a test backend server that generates fake data in a given pattern at a given frequency.
- The configuration file for Firestore should be language independent.
Configuration format
For human-editable configuration format
# chart-id should be a unique, valid name
chart:
# (required)
title: "Title"
# (optional)
description: "Some description"
# Multiple sources (optional)
sources:
- name: "source-name"
type: "chart type"
- name: "source-name"
type: "chart type"
- name: "source-name"
type: "chart type"
# Data is filtered to be in the range of [start, end]
# Both start & end is in RFC3339 format
# (optional, default to the first data)
# If start is negative, it means the offset from end
start: -3600
# (optional, default to now)
end: 2018-07-28T07:32:00Z
# (optional, only useful when agg_func is set)
segment: 60
# (optional)
agg_func: "average"
Grid won't update when redux is updated from uploaded layouts
Procedures to reproduce
1, switch to branch navbar
2. npm run start
3. click download to save a snapshot of the current layout.
4. randomly change layout
5. click upload to load the previous saved layout
A possible solution
Use versioning: feed key={timestamp}
so that React will be forcibly re-create the grid. This may solve to problem (we have to try...)
Related issues
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.