{"id":21034791,"url":"https://github.com/robgietema/nick","last_synced_at":"2025-08-07T20:09:53.971Z","repository":{"id":40772664,"uuid":"464107900","full_name":"robgietema/nick","owner":"robgietema","description":"Nearly Headless CMS","archived":false,"fork":false,"pushed_at":"2025-05-11T21:24:43.000Z","size":4437,"stargazers_count":14,"open_issues_count":4,"forks_count":1,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-05-12T16:17:06.770Z","etag":null,"topics":["cms","rest-api"],"latest_commit_sha":null,"homepage":"https://nickcms.org","language":"JavaScript","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/robgietema.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":"SUPPORT.md","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-02-27T10:46:38.000Z","updated_at":"2025-05-11T21:24:47.000Z","dependencies_parsed_at":"2024-05-06T20:42:23.719Z","dependency_job_id":null,"html_url":"https://github.com/robgietema/nick","commit_stats":{"total_commits":215,"total_committers":1,"mean_commits":215.0,"dds":0.0,"last_synced_commit":"25800e8c3a853f47244abe8ec6c62894ef33654f"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robgietema%2Fnick","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robgietema%2Fnick/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robgietema%2Fnick/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robgietema%2Fnick/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/robgietema","download_url":"https://codeload.github.com/robgietema/nick/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254349648,"owners_count":22056390,"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":["cms","rest-api"],"created_at":"2024-11-19T13:08:25.229Z","updated_at":"2025-08-07T20:09:53.966Z","avatar_url":"https://github.com/robgietema.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Nick: Nearly Headless CMS\n\n## Introduction\n\n[Nick](http://nickcms.org) is a (nearly) headless CMS written in Node.js which provides a RESTful hypermedia API. The API is compatible with the [REST API](https://plonerestapi.readthedocs.io/en/latest/) of the [Plone CMS](http://plone.org) and can be used together with the web frontend [Volto](https://voltocms.com/).\n\n## Documentation\n\n[https://docs.nickcms.org](https://docs.nickcms.org)\n\n## Getting started\n\nA live demo of Nick with the latest release is available at:\n\n[https://demo.nickcms.org](https://demo.nickcms.org)\n\nExample `GET` request on the portal root\n\n    curl -i https://demo.nickcms.org -H \"Accept: application/json\"\n\n## Installation\n\n### Prerequisites\n\n- [Node.js](https://nodejs.org/)\n- [PostgreSQL](https://www.postgresql.org/)\n\n### Create Database\n\n    $ CREATE DATABASE \"nick\";\n    $ CREATE USER \"nick\" WITH ENCRYPTED PASSWORD 'nick';\n    $ GRANT ALL PRIVILEGES ON DATABASE \"nick\" TO \"nick\";\n    $ ALTER DATABASE \"nick\" OWNER TO \"nick\";\n\n### Bootstrap Project\n\n    $ pnpm install\n    $ pnpm bootstrap\n\n## Development\n\n### Run backend\n\n    $ pnpm start\n\n### Testing\n\n    $ pnpm test\n\n## Yeoman Generator\n\nIf you want to create your own project and use Nick as a dependency you can use the Yeoman generator package for that. This way you are able to customize your project without making changes to the core of Nick.\n\n### Installation\n\nFirst, install [Yeoman](http://yeoman.io) and @robgietema/generator-nick using [npm](https://www.npmjs.com/) (we assume you have pre-installed [node.js](https://nodejs.org/)).\n\n    $ npm install -g yo\n    $ npm install -g @robgietema/generator-nick\n    $ npm install -g corepack@latest\n    $ corepack enable pnpm\n\n### Creating a new project\n\n    $ yo @robgietema/nick my-nick-project\n\nThis will bootstrap a new Nick project inside the current folder.\n\n### Create Database\n\nConnect to the PostgreSQL console and create a database and a user with the correct permission using the following commands:\n\n    $ CREATE DATABASE \"my-nick-project\";\n    $ CREATE USER \"my-nick-project\" WITH ENCRYPTED PASSWORD 'my-nick-project';\n    $ GRANT ALL PRIVILEGES ON DATABASE \"my-nick-project\" TO \"my-nick-project\";\n    $ ALTER DATABASE \"my-nick-project\" OWNER TO \"my-nick-project\";\n\n### Boostrap the project\n\nThen bootstrap Nick with:\n\n    $ cd my-nick-project\n    $ pnpm bootstrap\n    $ pnpm start\n\n## Docker image\n\nInstall [Docker Desktop](https://www.docker.com/get-started/).\n\n### Backend\n\nNavigate to the root of the repository, and run the following command to run the Docker container for backend.\n\n```shell\ndocker compose up --build\n```\n\nThis will expose port `8080`.\nYou can make requests to `http://localhost:8080/` to fetch content.\n\nTo shut down the containers, run the following command.\n\n```shell\ndocker compose down\n```\n\n## Contribute\n\n- Issue tracker: [https://github.com/robgietema/nick/issues](https://github.com/robgietema/nick/issues)\n- Source Code: [https://github.com/robgietema/nick](https://github.com/robgietema/nick)\n- Documentation [https://docs.nickcms.org](https://docs.nickcms.org)\n\n## Support\n\nIf you are having issues, please let us know via the [issue tracker](https://github.com/robgietema/nick/issues).\n\n## License\n\nMIT License. Copyrights hold Rob Gietema.\nSee [LICENSE.md](LICENSE.md) for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobgietema%2Fnick","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frobgietema%2Fnick","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frobgietema%2Fnick/lists"}