{"id":43919449,"url":"https://github.com/ledyba/niki","last_synced_at":"2026-02-06T22:07:37.078Z","repository":{"id":40573241,"uuid":"353083404","full_name":"ledyba/niki","owner":"ledyba","description":"niki - A personal diary system.","archived":false,"fork":false,"pushed_at":"2025-08-09T21:28:12.000Z","size":8999,"stargazers_count":0,"open_issues_count":9,"forks_count":0,"subscribers_count":2,"default_branch":"magistra","last_synced_at":"2025-08-09T23:27:02.937Z","etag":null,"topics":["diary","fastify","typescript","vue"],"latest_commit_sha":null,"homepage":"","language":"Vue","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ledyba.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2021-03-30T17:20:48.000Z","updated_at":"2025-08-09T21:28:16.000Z","dependencies_parsed_at":"2024-12-25T02:45:33.741Z","dependency_job_id":null,"html_url":"https://github.com/ledyba/niki","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ledyba/niki","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ledyba%2Fniki","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ledyba%2Fniki/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ledyba%2Fniki/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ledyba%2Fniki/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ledyba","download_url":"https://codeload.github.com/ledyba/niki/tar.gz/refs/heads/magistra","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ledyba%2Fniki/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29178626,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-06T20:14:21.878Z","status":"ssl_error","status_checked_at":"2026-02-06T20:14:21.443Z","response_time":59,"last_error":"SSL_read: 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":["diary","fastify","typescript","vue"],"created_at":"2026-02-06T22:07:36.487Z","updated_at":"2026-02-06T22:07:37.071Z","avatar_url":"https://github.com/ledyba.png","language":"Vue","funding_links":[],"categories":[],"sub_categories":[],"readme":"# niki - A personal diary system.\n\n*niki* is a diary system:\n\n[![screenshot.png](screenshot.png)](screenshot.png)\n\n## How to deploy\n\nPlease use docker-compose \u0026amp; make.\n\n```sh\ngit clone https://github.com/ledyba/niki.git\ncd niki\n# edit compose.yml as you like.\nmake build\nmake up\n```\n\nthen open `http://\u003cyour-host\u003e:8888`.\n\n## Security\n\nIn default, everyone can access your diary via Internet.\n\nTo protect, please change these line from `docker-compose.yml`:\n```yaml\n  web:\n    ...\n    ports:\n      - '127.0.0.1:8888:8888' # niki is accessible only from localhost.\n```\n\nThen, make a reverse proxy to `niki` with some authentication.\n\nFor example, if you are using nginx:\n\n```\nserver {\n  listen      443 ssl http2;\n  listen [::]:443 ssl http2;\n  server_name  niki.example.com; # put your host\n\n  ssl_certificate ...;\n  ssl_certificate_key ...;\n\n  # protect your diary using basic auth.\n  # for more details, see\n  # https://docs.nginx.com/nginx/admin-guide/security-controls/configuring-http-basic-authentication/\n  auth_basic \"Basic Authentication\";\n  auth_basic_user_file /etc/nginx/conf.d/.htpasswd;\n\n  # protect your diary using SSL client cert.\n  # for more details, see\n  # https://pages.karamandi.com/2017/08/01/client-certificate-hass-nginx.html\n  ssl_verify_client on;\n  ssl_client_certificate /etc/nginx/your-ca.crt;\n\n  client_max_body_size 512m;\n  location / {\n    expires off;\n    proxy_set_header Host $host;\n    proxy_set_header X-Real-IP $remote_addr;\n    proxy_set_header X-Forwarded-Proto https;\n    proxy_set_header X-Forwarded-Host $host;\n    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\n    proxy_redirect http:// https://;\n    proxy_pass http://127.0.0.1:8888/;\n  }\n}\n\n```\n\n## Upgrading database\n\nSee [this article](https://josepostiga.com/how-to-upgrade-postgresql-version-and-transfer-your-old-data-using-docker/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fledyba%2Fniki","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fledyba%2Fniki","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fledyba%2Fniki/lists"}