Skip to content

sapristi/journal-startpage

Repository files navigation

Contributors Forks Stargazers Issues license-shield


Journal Startpage

Provides a startpage with productivity tools!

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Installation
  3. How to use
  4. Roadmap
  5. Develop
  6. Contributing
  7. License
  8. Credits

About The Project

product-screenshot

Tools:

  • Journal
  • Notes (textual or tabular)
  • Tasks
  • Display calendar
  • Show bookmarks from selected folder
  • Show future events from a caldav public link

Global shortcuts allow for keyboard-first usage.

It uses your browser sync storage, so that your data is safely backed-up, and can be shared between computers.

(back to top)

Installation


Firefox

Chrome
       Download             Download      

How to use

Basic usage

Create new notes / journal entries tasks.

To edit a field, double click on it. Once you are done editing:

  • Ctrl + Enter will save your changes
  • Esc will revert your changes (you can disable this in the settings, and make Esc save your changes as well).

Browser sync

If you are using your browser with an account, then the data will also be synchronised with that account. This means the your notes will be available on other computers, if you are using the same browser account.

Note that:

  • synchronisation is managed by the browser - every change may not always be synced immediatly.
  • settings are not synchronised.

See:

Advanced topics

Display events

You can display incoming events of a given calendar by setting the public CalDAV URL for this calendar in the CalDAV public url setting field:

caldav input share google calendar share nextcloud calendar
CaalDAV input Google calendar share link Nextcloud calendar share link

NextCloud sync - experimental

NextCloud sync allows you to synchronise your notes with the notes app of a NextCloud instance.

The feature is still incomplete, and a bit experimental:

  • To enable, set the nextcloud host (e.g. https://my-nexcloud.com), username and password (you can generate a service account in your nextcloud security settings).
  • The synchronisation button will then be available sync button. Synchronisation is manual only.
  • Synchronisation will:
    • create a note on NextCloud for each new note in the extension (with the category journal-notes)
    • when a note was already synchronised, the last modification will be synchronised (whether it comes from the extension or nextcloud)
    • a note deleted on nextcloud will be deleted in the extension
    • a note created on NextCloud will not be created in the extension
    • a note deleted on the extension will not be deleted in NextCloud

Permissions

In order to interact with external services (such as Google, NextCloud, etc), the extension needs permission to do so. When accessing a new service, a pop-up should appear requesting for "access to your data" - which is necessary to perform HTTP calls to this service. This extension only accesses the data necessary to provide the advertised features, and does not share anything with third parties.

permission request

Important Note: if a value for CalDAV url or nextCloud url was already set, you will need to remove it, then add it again, for the permission request to take effect.

Roadmap

  • Customize colors

  • Improve calendar display

  • Handle multiple open tabs: data is not overriden

  • Select locale

  • Search journal

  • Browser sync storage

  • Tabular notes

  • Bookmarks

  • Show events from calDAV calendar

  • Short term:

    • Display total space usage
    • Reorder tasks
    • Double click to delete entry
  • Long term:

    • Trash bin
    • Sync data:
      • Notion ?
      • Nextcloud notes ?
    • Rework journal:
      • Allow to change date ?
      • Integrate with calendar ?

See the open issues for a full list of proposed features (and known issues).

(back to top)

Develop

  • pnpm start to run in develop mode (using localStorage instead of sync storage, because it cannot register as an extension this way)
  • pnpm build:dev to build development version of the extension
  • pnpm build to build the production assets

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue. Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

Distributed under the GNU General Public License v3.0. See LICENSE for more information.

(back to top)

Credits

(back to top)