{"id":19475324,"url":"https://github.com/nicodebo/dream-note","last_synced_at":"2026-05-12T20:05:37.479Z","repository":{"id":126342611,"uuid":"74175990","full_name":"nicodebo/dream-note","owner":"nicodebo","description":"A personal command line tool to manage my dream journal","archived":false,"fork":false,"pushed_at":"2017-08-13T21:25:58.000Z","size":44,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-25T15:51:09.523Z","etag":null,"topics":["dreaming","latex-document","lucid-dreaming"],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nicodebo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-11-19T00:02:02.000Z","updated_at":"2021-08-29T10:05:24.000Z","dependencies_parsed_at":"2023-04-26T19:01:12.579Z","dependency_job_id":null,"html_url":"https://github.com/nicodebo/dream-note","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/nicodebo/dream-note","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nicodebo%2Fdream-note","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nicodebo%2Fdream-note/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nicodebo%2Fdream-note/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nicodebo%2Fdream-note/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nicodebo","download_url":"https://codeload.github.com/nicodebo/dream-note/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nicodebo%2Fdream-note/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32954838,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-12T09:19:52.626Z","status":"ssl_error","status_checked_at":"2026-05-12T09:17:33.438Z","response_time":102,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dreaming","latex-document","lucid-dreaming"],"created_at":"2024-11-10T19:31:50.076Z","updated_at":"2026-05-12T20:05:37.431Z","avatar_url":"https://github.com/nicodebo.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# dreamnote\n\nWrite my dream journal with (Neo)vim and compile it into this beautiful [LaTeX\nTemplate](http://www.latextemplates.com/template/the-legrand-orange-book).\n\n## Feature\n\n* Editor automatically opens at the right location of the LaTeX source\n* Compile and view your document easily\n* Count the number of dreams you have wrote down\n* Automatic version control of the source\n* Modular organisation of the LaTeX source (1 latex file for each month)\n\n## How to install ?\n\n1.  The script depends on the following tools:\n    *  python 3.6\n    *  vim or neovim\n    *  curl (used to download the template)\n    *  unzip (used to extract the template archive)\n    *  perl (used for some text processing tasks)\n    *  texlive (the typesetting system)\n    *  xdg-utils (used to open the pdf)\n    *  git (set up with a name and an email address)\n    *  rubber (used to parse compilation error log)\n\n    For exemple on archlinux: `pacman -S neovim curl unzip perl texlive-most xdg-utils git\n    rubber`\n\n2. Clone this repository and run the makefile:\n\n```bash\ncd /tmp\ngit clone https://github.com/nicodebo/dream-note\ncd dream-note\nmake\n```\nThe make command will do the following:\n* The template configuration file will be copied to `$XDG_CONFIG_HOME/dreamnote/dreamrc`\n* A python virtual environment will be created under `$XDG_DATA_HOME/dreamnote/venv`\n* This repository will be copied to `$HOME/bin/dream-note`\n* A symlink of the `dreamnote` main executable is created under `$HOME/bin`\n  (`$HOME/bin` should be in your `$PATH` in order to run `dreamnote` from every\n  location)\n\nNote:\n* You can change the directory of the virtual environment and the directory\n  where the source are installed by invoking `make` in the following manner:\n  ```bash\n  make venv_dreamnote=/path/to/dreamnote/venv source_dir=/path/to/dreamnote/source\n  ```\n  and make sure `/path/to/dreamnote/source` is in your `$PATH`\n* To update: \n  ```bash\n  # go to directory where the source are installed\n  cd /path/to/dreamnote/source # or cd $HOME/bin/dream-note if you ran bare make \n  # get the latest dreamnote source \n  git pull\n  # to update the virtual environment\n  make\n  ```\n* To change the directory of the virtual environment after the first\n  installation change the `venv_root`value of the dreamnote configuration file\n  launch make to build the venv.\n\n## How to use\n\n### Help\n\n[//]: # (:r! sed -n 19,43p ~/Documents/Dev/dream-note/dreamnote)\n\n```\nUsage:\ndreamnote [Option]\nA personal tool to create and manage my dream journal\n\nOptions:\n-h, -help       Display this help message and exit\n-i \u003cname\u003e       Initialize a dream note named \u003cname\u003e in the current\n                directory\n-a              Insert a dream at the current date in the dream note\n-A \u003cdate\u003e       Insert a dream at a user specified date. \u003cdate\u003e must be in\n                the YYYY-MM-DD format with YYYY=[0000;9999], MM=[01-12] and\n                DD=[01-31].\n-c              Compile the main tex file into a pdf with latexmk and the\n                pdflatex compiler and open the resulting pdf in the default\n                previewer.\n-s              Compute and display some dream informations\n```\n\n### Example\n\n1. Open a terminal and move to the directory where you want your dream journal source to be located.\n\n2. Initialize an empty dream journal:\n\n    ```bash\n    dreamnote -i my_dream_journal\n    ```\n\n    The hereabove command will create a folder, named `my_dream_journal`, where\n    the contents of the journal will be located (LaTeX source). Some folder\n    structuring is done and a first git commit is automatically done (if git is\n    available).\n\n3. Write down the dream of the past night:\n\n    ```bash\n    dreamnote -a\n    ```\n\n    Neovim (or vim) pops up with a section containing today's date and right\n    below a subsection filled in with dummy text. Change the text with a nice\n    dream title and start typing your dream under the subsection. Add as many\n    dream as you want (or remember) by adding new subsection. When finished,\n    save and quit the editor and a git commit will be automatically done,\n    taking into account the fresh modifications. Note: add a flag to your dream\n    titles. (n), (pl), and (l) respectively for normal dream, pre-lucid dream,\n    lucid dream. (i.e. \\subsection{dream title (l)}) Alternatively, no flag\n    represent a normal dream. This is useful if you want to count the number of\n    normal, pre-lucid and lucid dream with `dreamnote -s` option.\n\n4. Visualize your dream journal:\n\n    ```\n    dreamnote -c\n    ```\n\n    This command will compile and display the resulting pdf in your default pdf\n    viewer. Errors will be displayed if there is any, as well as warnings.\n\n## Structure of the latex document\n\nThe latex document is organized as shown in the following tree:\n\n```\n\u003cname\u003e (name of the dream note)\n│   main.tex\n│\n└───contents\n    │\n    └───part1 (ex: 2016)\n        │   part.tex (ex: 2016.tex)\n        │\n        └───chapters\n        │      01.tex\n        │      02.tex\n        │      ...\n        │\n        part2\n        │\n        ...\n```\n\nEach year is represented as a folder with the name of the year and contains\na part.tex file which input all the chapter of the corresponding directory.\nEach chapter represents a month [01-12] of the year and each one is input in\nthe part.tex file. At a higher level the main.tex file import each part.tex.\nDreams are written each day (ideally) in chapters file (ex: 01.tex).\n\n\u003c!--## TODO--\u003e\n\n\u003c!--* Add an option to search the dream note for specific dreams containing--\u003e\n\u003c!--specific keywords. No, this can be done with the pdf reader.--\u003e\n\u003c!--* stat: draw graph of cumulated sum of dream through the time ? by year ?--\u003e\n\u003c!--* Add an option to add a package in the preamble and use this function to add--\u003e\n\u003c!--the import package.--\u003e\n\u003c!--* find recurring dream themes by doing some word count stat ?--\u003e\n\u003c!--* write a git commit description that check the newly added dreams (section--\u003e\n  \u003c!--and/or subsection)--\u003e\n\u003c!--* check if $EDITOR is equal to vim or nvim. Otherwise just open the file--\u003e\n  \u003c!--normaly with $EDITOR, if it is empty put a warning message--\u003e\n  \u003c!--or use $EDITOR only if not vim or nvim.--\u003e\n\u003c!--* in usage, strip the $0 to only get the last part--\u003e\n\u003c!--* remove that perl dependency--\u003e\n\u003c!--* Do you wish to edit the dream anyway ? : make yes the default choice.--\u003e\n\u003c!--* README.md :--\u003e\n  \u003c!--* add cc 3.0 license ? Not sure since I'm just downloading the template from--\u003e\n   \u003c!--the source https://creativecommons.org/licenses/by-nc-sa/3.0/fr/#. No, the--\u003e\n   \u003c!--licence is in the latex source. Just add an MIT licence to my project.--\u003e\n  \u003c!--* add python3 dependency and pandas library or better: use only the base--\u003e\n   \u003c!--python library--\u003e\n  \u003c!--* Add hyperlink to each dependency--\u003e\n  \u003c!--* Add a use case for dreamnote -A and dreamnote -s--\u003e\n  \u003c!--* Write texlive consistently--\u003e\n  \u003c!--* Add a animated gif ?--\u003e\n\u003c!--* Tests :--\u003e\n  \u003c!--* test if curl, latexmk, xdg-open, unzip are not install, the program work as--\u003e\n   \u003c!--expected.--\u003e\n  \u003c!--* make some bats tests. It's becomming hazardous to modify without tests and--\u003e\n\u003c!--* Add uninstall function--\u003e\n\u003c!--* fix mixed indentation--\u003e\n\u003c!--* Always check return code of command ? : https://github.com/robbyrussell/oh-my-zsh/wiki/Coding-style-guide--\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnicodebo%2Fdream-note","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnicodebo%2Fdream-note","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnicodebo%2Fdream-note/lists"}