Memento Database: Difference between revisions

From Memento Database Wiki
Jump to navigation Jump to search
mNo edit summary
(46 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Stamp|2016-08-29|3.9.7|1.0.3}}
{{Stamp|2021-09-16|4.10.2|1.10.2}}
== Seminal Wiki ==
{{banner-menu}}
This wiki is in its infancy. During this time, you can expect it to be pretty accurate as far as it goes, but then it will just stop, perhaps with red links indicating pages yet to be written.
 
The existing [[User manual|'''''User Manual''''']] and '''''[[FAQ]]''''' are the last previous documentation available for Memento and should still be referenced while the wiki is still taking shape.
 
Read more about [[Memento Wiki|'''this wiki''']].
 
== Memento Database ==
== Memento Database ==
Memento Database is a database management software tool for mobile devices (Android) and personal computers (Microsoft Windows, Linux, Apple Macintosh). Elements of a user's database — [[Library|'''''libraries''''']] and associated files — may be synchronized across these [[#Platforms|'''''platforms''''']] via an available cloud service. Libraries also may be [[Sync with Google Sheets|'''''synchronized with Google Sheets spreadsheets stored on the user's Google Drive''''']] to enable the user's data to be manipulated or analyzed by either tool, as needed. [[Importing and exporting CSV files|'''''Import/export from/to comma-delimited (CSV) files''''']] enables coordinated use with external applications, like Microsoft Excel.
'''Memento Database''' is a database management software tool for mobile devices (Android) and personal computers (Microsoft Windows, Linux, Apple Macintosh). Elements of a user's database — [[Library|'''''libraries''''']] and associated files — may be synchronized across these [[#Platforms|'''''platforms''''']] via an available cloud service. Libraries also may be [[Synchronizing data|'''''synchronized with Google Sheets spreadsheets stored on the user's Google Drive''''']] to enable the user's data to be manipulated or analyzed by either tool, as needed. [[Importing and exporting data|'''''Import/export from/to comma-delimited (CSV) files''''']] enables coordinated use with external applications, like Microsoft Excel.


Data libraries may be linked, allowing any number of libraries to work together to form a database and provide a solution.
Data libraries may be linked, allowing any number of libraries to work together to form a database and provide a solution.
Line 14: Line 8:
All data can be stored in the [[Cloud storage and Teamwork|'''''Memento Cloud''''']]. All such libraries, photos, and files are synchronized automatically between the cloud and local copies on Android devices. Users can provide access to their data to other users, enabling [[Cloud storage and Teamwork|'''''teamwork use''''']].
All data can be stored in the [[Cloud storage and Teamwork|'''''Memento Cloud''''']]. All such libraries, photos, and files are synchronized automatically between the cloud and local copies on Android devices. Users can provide access to their data to other users, enabling [[Cloud storage and Teamwork|'''''teamwork use''''']].


=== Targeted use cases ===
=== Targeted users & use cases ===
Memento's goals include serving:
Memento's goals include serving:
; the casual, perhaps single-library user : who just wants to throw up a grocery list or recipe repository
:; the casual, perhaps single-library user: who just wants to throw up a grocery list or recipe repository
; the intermediate user : who might want to have some related libraries tracking some activities
:; the intermediate user: who might want to have some related libraries tracking some activities
; the power user : who might be pushing the boundaries in certain areas, like scripting, complex data structure, retail or barcode solutions, media solutions, contact applications, charting, or others.
:; the power user: who might be pushing the boundaries in certain areas, like scripting, complex data structure, retail or barcode solutions, media solutions, contact applications, product catalogs, charting, or others
; the organizational user : who might need teamwork collaboration, cross-platform compatibility, cloud storage, library protection, and others.
:; the organizational user: who might need teamwork collaboration, cross-platform compatibility, cloud storage & coordination, library protection, and others


Memento's online catalog of user templates contains thousands of predefined, ready-to-use libraries to use directly or serve as a starting place. It also gives users the opportunity to familiarize themselves with a large number of ways to use Memento to provide solutions.
Memento's online catalog of user templates contains thousands of predefined, ready-to-use libraries to use directly or serve as a starting place. It also gives users the opportunity to familiarize themselves with a large number of ways to use Memento to provide solutions.


=== '''''[[Platforms]]''''' ===
=== ''[[Platforms]]'' ===
Memento was first implemented on the Android platform for smartphones and tablets, and Android continues to be a prime platform for Memento. The Mobile Edition operates off locally stored data that may or may not be synchronized to the Memento Cloud.
Memento was first implemented on the Android platform for smartphones and tablets, and Android continues to be a prime platform for Memento. The '''Mobile Edition''' operates off locally stored data that may or may not be synchronized to the Memento Cloud.


Users using Microsoft Windows, Linux, or Apple Macintosh use the Memento Desktop Edition to work with data stored in the Memento Cloud. Data and files are synchronized with mobile platforms through the Cloud.
Users using Microsoft Windows, Linux, or Apple Macintosh use the Memento '''Desktop Edition''' to work with data stored in the Memento Cloud. Data and files are synchronized with mobile platforms through the Cloud.
 
=== Primary data structures ===
User data is stored in Memento in '''''[[Field|fields]]''''' making up '''''[[Entry|entries]]''''' within a '''''[[Library|library]]'''''. See '''''[[Terminology]]''''' to see how this relates to other database technologies and tools. A collection of libraries is called a '''''[[Library Groups|group]]'''''. A collection of fields within a Library structure is called a '''''[[Page|page]]'''''. When data is entered into fields, an '''''[[Entry|entry]]''''' is created, so while a library's structure is made up of fields, the library's data is made up of entries.


=== Programming languages ===
=== Programming languages ===
In general, '''no knowledge of programming languages is required''' to use Memento.
In general, '''no knowledge of programming languages is required''' to use Memento.


There is, however, a '''[[JavaScript field|JavaScript field type]]''' that can be used for scripting or calculation of a field value. For a full description of the language, see '''[https://developer.mozilla.org/docs/Web/JavaScript here]'''. The implementation is based on [https://www.mozilla.org/rhino/ '''the Rhino library'''].
There is, however, a '''[[JavaScript field|JavaScript field type]]''' that can be used for scripting or calculation of a field value. JavaScript may also be used to perform functions '''[[Actions|at the touch of a button]]''' or '''[[Triggers|at various junctures in the handling of a library entry]]'''. Memento provides a rich '''[[Memento JavaScript Library|API (Application Programming Interface)]]''' for JavaScript programming. For a full description of the JavaScript language, read '''[https://developer.mozilla.org/docs/Web/JavaScript here]'''. The implementation is based on [https://www.mozilla.org/rhino/ '''the Rhino library'''].
 
Memento also includes a proprietary scripting syntax for users to define an expression for a '''[[Calculation field]]'''. It is simpler and easier to learn than JavaScript and is generally more convenient to use, when scripting requirements are minimal.


Memento is implemented using the Java 8 language. If you have esoteric questions about field value limits, arithmetic operation details, etc, you could reference the [http://docs.oracle.com/javase/specs/index.html '''Java 8 documentation'''], (but I don't recommend it).
Memento is implemented using the Java 8 language. If you have esoteric questions about field value limits, arithmetic operation details, etc, you could reference the [http://docs.oracle.com/javase/specs/index.html '''Java 8 documentation'''], (but I don't recommend it).
=== Primary data structures ===
User data is stored in Memento in Fields within a Library. See '''''[[Terminology]]''''' to see how this relates to other database technologies and tools. A collection of libraries is called a Group. A collection of fields within a Library structure is called a Page. When data is entered into fields, an Entry is created, so while a library's structure is made up of fields, the library itself is made up of entries.


=== Essential features ===
=== Essential features ===
* Storing entries with custom [[Field|'''''fields''''']]
* Storing entries with custom [[Field|'''fields''']]
* Sorting, grouping, and filtering entries by any fields
* [[Slicing & Dicing|'''Performing Data analysis''']], including aggregation, charting, sorting, grouping, and filtering entries by any fields
* Displaying data in the form of a list, table, on a map, or in a calendar
* Displaying data in the form of a list, a set of cards, a table, on a map, or in a calendar
* [[Sync with Google Sheets|'''''Synchronization with Google Sheets''''']]
* [[Synchronizing data|'''Synchronization with Google Sheets''']]
* [[Cloud storage and Teamwork|'''''Teamwork''''']], by providing access to libraries to other users
* [[Cloud storage and Teamwork|'''Teamwork''''], by providing access to libraries to other users
* Access to data from [[Platforms|'''several Android devices and from laptop and desktop computers''']]; users can work with the same libraries on their phones, tablets, and PCs.
* Access to data from [[Platforms|'''several Android devices and from laptop and desktop computers''']]; users can work with the same libraries on their phones, tablets, and PCs.
* Dozens of [[Field Type|'''''types of fields''''']], including text, integer, real, boolean, date/time, rating, checkboxes, radio buttons, currency, image, signature, file, audio, contact, [[calculation field|'''''calculation''''']], '''''[[JavaScript]]''''', Google Maps coordinates, and others
* Dozens of [[Field Type|'''types of fields''']], including text, integer, real, boolean, date/time, rating, checkboxes, radio buttons, currency, image, signature, file, audio, contact, [[calculation field|'''calculation''']], '''[[JavaScript field|JavaScript]]''', geolocations with Google Maps coordinates, and others
* One-to-many, one-to-one, and many-to-many [[Link To Entry field|'''relationships between libraries''']]
* One-to-many, one-to-one, and many-to-many [[Link To Entry field|'''relationships between libraries''']]
* '''''[[Importing and exporting CSV files]]''''', permitting interoperation with popular programs like Microsoft Excel
* [[Importing and exporting data|'''Importing and exporting CSV files''']], permitting interoperation with popular programs like Microsoft Excel
* '''''[[Library protection]]''''' (encrypt entries using AES-128)
* '''[[Data Sources|Populating database entries]]''' at the touch of a button with data from Web services and other sources
* '''''[[Charts]]''''': Pie, Line, Bar, Columns, Area, Scatter, Stepped Area
* '''[[Library Protection]]''' (encrypt entries using AES-128)
* Mass calculations ([[Library|'''aggregation''']]): sum, maximum, minimum, average
* [[Charts List screen|'''Charts''']] — Pie, Line, Bar, Columns, Area, Scatter, Stepped Area
* [[Library|'''aggregation''']]): sum, maximum, minimum, average
* Reminders
* Reminders
* Backing up and restoring data
* [[Backup & Restore|'''Backing up and restoring data''']]
* Sending entries via SMS, e-mail, and other available services
* Sending entries via SMS, e-mail, and other available services
* Searching entries in libraries by barcode
* [[Barcode field|'''Searching entries in libraries by barcode''']]
* Online catalog of library templates -- thousands of templates available
* Online catalog of library templates -- thousands of templates available


Line 60: Line 57:
* The Memento [[User Interface|user interface]]
* The Memento [[User Interface|user interface]]
* [[Glossary]]
* [[Glossary]]
* [[User manual]]
* [[FAQ]]
* [[FAQ]]
* [[Products & Services]]
<small>[[About:Memento Wiki|Introduction to the Memento Wiki]]</small>


[[Category:Overview]]
[[Category:en]] [[Category:About]]

Revision as of 07:25, 16 September 2021

« Page as of 2021-09-16, editions Mobile 4.10.2, Desktop 1.10.2 »

Template:Banner-menu

Memento Database

Memento Database is a database management software tool for mobile devices (Android) and personal computers (Microsoft Windows, Linux, Apple Macintosh). Elements of a user's database — libraries and associated files — may be synchronized across these platforms via an available cloud service. Libraries also may be synchronized with Google Sheets spreadsheets stored on the user's Google Drive to enable the user's data to be manipulated or analyzed by either tool, as needed. Import/export from/to comma-delimited (CSV) files enables coordinated use with external applications, like Microsoft Excel.

Data libraries may be linked, allowing any number of libraries to work together to form a database and provide a solution.

All data can be stored in the Memento Cloud. All such libraries, photos, and files are synchronized automatically between the cloud and local copies on Android devices. Users can provide access to their data to other users, enabling teamwork use.

Targeted users & use cases

Memento's goals include serving:

the casual, perhaps single-library user
who just wants to throw up a grocery list or recipe repository
the intermediate user
who might want to have some related libraries tracking some activities
the power user
who might be pushing the boundaries in certain areas, like scripting, complex data structure, retail or barcode solutions, media solutions, contact applications, product catalogs, charting, or others
the organizational user
who might need teamwork collaboration, cross-platform compatibility, cloud storage & coordination, library protection, and others

Memento's online catalog of user templates contains thousands of predefined, ready-to-use libraries to use directly or serve as a starting place. It also gives users the opportunity to familiarize themselves with a large number of ways to use Memento to provide solutions.

Platforms

Memento was first implemented on the Android platform for smartphones and tablets, and Android continues to be a prime platform for Memento. The Mobile Edition operates off locally stored data that may or may not be synchronized to the Memento Cloud.

Users using Microsoft Windows, Linux, or Apple Macintosh use the Memento Desktop Edition to work with data stored in the Memento Cloud. Data and files are synchronized with mobile platforms through the Cloud.

Primary data structures

User data is stored in Memento in fields making up entries within a library. See Terminology to see how this relates to other database technologies and tools. A collection of libraries is called a group. A collection of fields within a Library structure is called a page. When data is entered into fields, an entry is created, so while a library's structure is made up of fields, the library's data is made up of entries.

Programming languages

In general, no knowledge of programming languages is required to use Memento.

There is, however, a JavaScript field type that can be used for scripting or calculation of a field value. JavaScript may also be used to perform functions at the touch of a button or at various junctures in the handling of a library entry. Memento provides a rich API (Application Programming Interface) for JavaScript programming. For a full description of the JavaScript language, read here. The implementation is based on the Rhino library.

Memento also includes a proprietary scripting syntax for users to define an expression for a Calculation field. It is simpler and easier to learn than JavaScript and is generally more convenient to use, when scripting requirements are minimal.

Memento is implemented using the Java 8 language. If you have esoteric questions about field value limits, arithmetic operation details, etc, you could reference the Java 8 documentation, (but I don't recommend it).

Essential features

Find out more about Memento

Introduction to the Memento Wiki