{"id":13936278,"url":"https://github.com/leemengtw/gist-evernote","last_synced_at":"2025-07-13T22:32:12.327Z","repository":{"id":40589171,"uuid":"118334455","full_name":"leemengtw/gist-evernote","owner":"leemengtw","description":"A Python application that sync Github Gists and save them to Evernote notebook as screenshots.","archived":false,"fork":false,"pushed_at":"2022-12-07T23:43:54.000Z","size":28363,"stargazers_count":37,"open_issues_count":6,"forks_count":4,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-07-03T16:12:06.394Z","etag":null,"topics":["data-science","evernote","gists","github","github-graphql","jupyter-notebook","pet-project","python","selenium","sync"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/leemengtw.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-01-21T12:52:42.000Z","updated_at":"2025-04-25T23:55:57.000Z","dependencies_parsed_at":"2023-01-24T07:30:57.927Z","dependency_job_id":null,"html_url":"https://github.com/leemengtw/gist-evernote","commit_stats":null,"previous_names":["leemengtaiwan/gist-evernote"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/leemengtw/gist-evernote","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leemengtw%2Fgist-evernote","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leemengtw%2Fgist-evernote/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leemengtw%2Fgist-evernote/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leemengtw%2Fgist-evernote/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/leemengtw","download_url":"https://codeload.github.com/leemengtw/gist-evernote/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leemengtw%2Fgist-evernote/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264515112,"owners_count":23620925,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["data-science","evernote","gists","github","github-graphql","jupyter-notebook","pet-project","python","selenium","sync"],"created_at":"2024-08-07T23:02:32.217Z","updated_at":"2025-07-13T22:32:10.778Z","avatar_url":"https://github.com/leemengtw.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# Gist-Evernote\n\nA Python application that sync your Github Gists and save them to your [Evernote](https://evernote.com/) notebook as screenshots. With the app, you can search your work (Jupyter notebooks, Markdown files, Python scripts, etc) all in one place with pretty result. :sunglasses: :notebook:\n\n## Demo\nA simple use case for search notebooks including `subplot`:\n\n![demo-subplots](images/demo-subplots.gif)\n\n## Background\nAs a heavy Evernote user and a data scientist, I wondered won't it be wonderful to be able to search all my [Jupyter notebooks](http://jupyter.org/) directly inside Evernote. Thanks to the [OCR technology](https://help.evernote.com/hc/en-us/articles/208314518-How-Evernote-makes-text-inside-images-searchable) built by Evernote, this become possible. Without further ado, try it yourself :wink:\n\n## Getting Started\nThis project is written in Python and tested only on macOS currently.\nTo start synchronizing your gist to Evernote, follow the instruction below to setup the application.\n\n### Prerequisites\n\n#### Python 2.7\n\n```bash\npython --version\nPython 2.7.14 :: Anaconda, Inc.\n```\n\nThis is due to [Evernote API](https://github.com/evernote/evernote-sdk-python)'s limited support of\n[Python3](https://github.com/evernote/evernote-sdk-python3), but will try to migrate in near future.\n\n#### [Chrome browser](https://www.google.com.tw/chrome/browser/desktop/index.html)\n\n#### [Chrome driver](https://sites.google.com/a/chromium.org/chromedriver/downloads)\nLatest version is recommended. After downloading, put the driver under path like `/usr/local/bin`.  \n\nCheck whether the driver is in the path:\n```bash\nls /usr/local/bin | grep chromedriver\nchromedriver\n```\n\nMake sure the path where the driver locate is accessible via `$PATH` environment variable:\n\n```bash\necho $PATH\n... :/usr/local/bin: ...\n```\n\nIf the path is not included in `$PATH`, you can add the path to `$PATH` temporarily:\n```bash\nexport PATH=$PATH:/usr/local/bin\n```    \n\n#### brew and dependencies\n\n```commandline\nbrew install portmidi pygobject pkg-config cairo gobject-introspection\n```\n\n#### path setting\n\nMake sure to include necessary path in `~/.bash_profile`:\n\n```text\nexport PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/local/lib:/usr/local/opt/libffi/lib/pkgconfig\n```\n\n#### [Github Personal Access Token](https://github.com/settings/tokens)\nTo grant the app to retrieve your gists,\nyou have to give the app a access token. You can read more about the token [here](https://github.com/blog/1509-personal-api-tokens).\n\nAllow following permission when creating the token:\n\n```commandline\nadmin:org_hook, gist, notifications, read:gpg_key, read:public_key, read:repo_hook, repo, user\n```\n\nAfter creating the token, you should save the token for later usage:\n\n\u003cimg src=\"images/github-token.png\" alt=\"github-token\" width=\"50%\"/\u003e\n\n\n#### [Evernote Developer Tokens](https://dev.evernote.com/doc/articles/dev_tokens.php)\nTo grant the app to create/update notes to your Evernote notebooks, create a [Production Token](https://www.evernote.com/api/DeveloperToken.action) and save for later usage.\n\n\u003cimg src=\"images/evernote-token.png\" alt=\"evernote-token\" width=\"50%\"/\u003e\n\n### Installation\nFirst clone the repo and get into the root folder:\n\n```commandline\ngit clone https://github.com/leemengtaiwan/gist-evernote.git\ncd gist-evernote\n```\n\nTo install all the dependencies, [Conda](https://conda.io/docs/) is recommended:  \n\n```commandline\nconda env create -n gist-evernote -f environment.yaml\nsource activate gist-evernote\n```\n\nOr use `pip` instead:\n\n```commandline\npip install -r requirements.txt\n```\n\n### Setup\nTell the app about your Github and Evernote tokens acquired [previously](#Github Personal Access Token):\n\n```commandline\npython setup.py\n```\n\nYou will be asked to provided your tokens and the name of notebook you want your gists to be sync. Alternative, you can modify the [settings.py](settings.py) directly:\n\n```python\nGITHUB_AUTH_TOKEN = \"\"\nEVERNOTE_PROD_TOKEN = \"\"\nEVERNOTE_SANDBOX_TOKEN = \"\"\nNOTEBOOK_TO_SYNC = \"gist-evernote\"\n\n```\n\n### Start to sync your gists\nFinally, after input our credentials, now we can run the sync app:\n\n```commandline\npython app.py\n```\n\nIf anything go well, it will start to fetch your gists,\ntake screenshots of them and save them as new notes in Evernote. Have a coffee before it finish :sunglasses::coffee:\n\nTo reflect modification to synced gists to Evernote, just run the app again and it will try to do its best:\n\n```commandline\npython app.py\n```\n\n## Contributing\n\nThere are still many things left to be improved. Any advice or pull request is highly appreciated.\nNotes that the Python Docstrings of this repo follow\n[Numpy Style](http://www.sphinx-doc.org/ja/stable/ext/example_numpy.html#example-numpy).\n\n\n## Authors\n\n* **Meng Lee** - find me at `b98705001@gmail.com`\n\n## License\n\nThis project is licensed under the MIT License -\nsee the [LICENSE.txt](LICENSE.txt) for details.\n\n## Acknowledgements\n\n* [Github GraphQL API v4](https://developer.github.com/v4/)\n* [Evernote Python SDK](https://github.com/evernote/evernote-sdk-python)\n\n## Future Work\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleemengtw%2Fgist-evernote","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fleemengtw%2Fgist-evernote","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleemengtw%2Fgist-evernote/lists"}