Journal

The gist: build an app for capturing memories.

Start out by building an app that lets you make text entries in your journal. Simple enough! Title them by the date and the time of creation. Have it be a little text log.

How the data is stored is up to you. It could be as simple as txt files on the file system or in a database. There are pros and cons to any choice for this.

Mock-Ups

Here's what a simple version of the UI could look like:

Journal mock-up. In the left third, a list of datetimes, with the first shaded to indicate selection. Above the list, an "Add entry" button. In the remaining two-thirds, the datetime as a heading followed by the entry content

Specs

  • Entry creation with text
  • Render entries with the timestamp as the title
  • Edit existing entries

Concepts

  • Text editing
  • Data storage

Extra Credit

  • Search
  • Tags to add some organization
  • Location to associate more metadata
  • Support image entries
  • Support video entries
  • Support Markdown
  • Support rich text
  • Sync entries across devices

References

  • Day One — really fantastic journal app

See Also

  • Notebook — more advanced/expanded version