Skip to content

Requirements

James Brucker edited this page Jun 11, 2025 · 7 revisions
  • Users must authenticate themselves to view or edit data sources.
  • Authentication mechanisms include LINE auth and OAuth using Google.
  • A user can define multiple data sources such as "Electric Meter" or "Water Meter".
  • Each "data source" has a name, optional description, and a series of data entries. Each data entry includes a date/time and a numerical value.
  • A "data source" may include additional information to describe or differentiate the source, such as place name, address, PEA meter number, or a thumbnail photo.
  • For each data source, an authorized user can input entrie(s) with a date/time and numerical value, such as electric meter reading.
  • An authorized user can view and edit past data entries.
  • The user who creates a data source can grant permission to other users to access and view/edit the data source's data.
  • Log all access to the application.
  • Log all input and editing of data values.
  • Record or regularly export all logs to an external location in a way that prevents deletion of logs.

Platform Requirements

  • Application has both a web-based and mobile interface.
  • The initial mobile interface is a LINE MiniApp.
  • The web application and database can be self-hosted for development and testing.
  • The application and database can be deployed to a cloud service or VPS.
  • Design and implementation should not be tightly coupled to vendor-specific technology to avoid vendor lock-in.

Aspirational Features (Nice to Have)

  • Graph of data for a selected period.
  • Sort and filter data, such as filter by date range.
  • User can export data to a file or other device.
  • Monitor and block suspicious or excessive use.
  • Later versions will add an Android application, but this is not included in the initial implementation.

Clone this wiki locally