{"id":24973317,"url":"https://github.com/bluedynamics/plone-kickstarter","last_synced_at":"2025-03-29T06:13:01.368Z","repository":{"id":41851755,"uuid":"430247137","full_name":"bluedynamics/plone-kickstarter","owner":"bluedynamics","description":"Kickstarter to run Plone (Backend/ ClassicUI) with pip, make \u0026 Co.","archived":false,"fork":false,"pushed_at":"2022-08-22T09:44:48.000Z","size":50,"stargazers_count":0,"open_issues_count":1,"forks_count":2,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-02-03T18:38:37.809Z","etag":null,"topics":["cookiecutter","python"],"latest_commit_sha":null,"homepage":"","language":"Makefile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bluedynamics.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-11-21T01:25:54.000Z","updated_at":"2021-12-29T16:39:59.000Z","dependencies_parsed_at":"2022-08-11T19:21:07.385Z","dependency_job_id":null,"html_url":"https://github.com/bluedynamics/plone-kickstarter","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bluedynamics%2Fplone-kickstarter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bluedynamics%2Fplone-kickstarter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bluedynamics%2Fplone-kickstarter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bluedynamics%2Fplone-kickstarter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bluedynamics","download_url":"https://codeload.github.com/bluedynamics/plone-kickstarter/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246145089,"owners_count":20730495,"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":["cookiecutter","python"],"created_at":"2025-02-03T18:27:10.785Z","updated_at":"2025-03-29T06:13:01.338Z","avatar_url":"https://github.com/bluedynamics.png","language":"Makefile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Kickstarting Plone 6 (backend)\n\nBakes a configuration to start Plone 6 Backend using *make*, *mxdev*, *pip*, *cookiecutter* and *WSGI*.\n\nThis cookiecutter templates result helps in\n\n- building Plone or an add-on for Plone using pip, mxdev and a Makefile\n- running Plone (with add-on)\n- developing an add-on with above tools\n- launching and debugging Plone from within VisualCode\n\n## Prerequisites\n\n- `cookiecutter`\n\n  ```bash\n  pip install \"cookiecutter==2.1.1\"\n  ```\n\n- (optional, for mode *add-on*) `plonecli` (and `bobtemplates.plone` (\u003e= 6.0b10) if you want to create a plone customization or add-on.\n\n  ```bash\n  pip install plonecli \"bobtemplates.plone\u003e=6.0b10\"\n  ```\n\n  Best is to install the two tools into your standard Python 3 (not the venv inside the project).\n\n## Options\n\n`project_name`\n    Name of the project or add-on.\n    In mode *standalone* just the target folder name;\n    in mode *add-on* the dotted name of the package.\n\n`mode`\n    - `standalone` (default): generate a build system for a Plone site,\n      but folder does not directly contain a source package (like generated with *plonecli*).\n    - `addon`: generate a integrated build for an add-on.\n\n`requirements-out`\n    *mxdev* is used to help with development with sources on top f stable constraints.\n    It generates a pip requirements file.\n    Configure here how the file is named.\n    Default: `requirements-mxdev.txt`.\n`admin_user`\n    *cookiecutter-zope-instance* is used to generate an instance configuration for the Plone/Zope application server.\n    It creates an initial user with full access.\n    This is the username.\n    Default: `admin`.\n`admin_user`\n    *cookiecutter-zope-instance* is used to generate an instance configuration for the Plone/Zope application server.\n    It creates an initial user with full access.\n    This is the password.\n    If empty a password is generated.\n    Default: empty.\n`plone_version`\n    Plone Release to be used in the constraints file.\n    Default: Should be most recent version, except short after a new release (PR's welcome).\n`listen`\n    *host:port* for the WSGI server to listen on.\n    Usually \"localhost:8080\" for local development or \"0.0.0.0:8080\" if the port needs to be accessible from the outside.\n    Default: `localhost:8080`\n\nThese options can be stored in a `plone-kickstarter.yaml`:\n\n```YML\n    default_context:\n        project_name: 'admin'\n        mode: 'addon'\n        admin_user: 'admin\n```\n\nPass additional parameters `--no-input --config-file plone-kickstarter.yaml`.\n*cookiecutter* takes the stored values or the defaults and does not ask further questions.\n\n## Usage\n\n```bash\n    cookiecutter -f https://github.com/bluedynamics/plone-kickstarter\n```\n\nIt supports two mode: ``standalone`` and ``add-on``.\n\n**standalone** creates a setup for a minimal vanilla Plone site.\nThe setup can then be enhanced for your needs.\n\n**add-on** is meant to add a the setup to a prior created plonecli code.\n\n### Create a vanilla Plone site\n\n- Ensure Python 3.9 is installed (including pip).\n- Run cookiecutter with option `mode` set to ``standalone``.\n- Enter generated directory.\n- Run ``make run``\n\n### Create a Plone add-on\n\n#### TL/DR\n\n```bash\npip install plonecli \"bobtemplates.plone\u003e=6.0b10\" git+https://github.com/cookiecutter/cookiecutter.git#egg=cookiecutter\nplonecli create add-on acme.foo\n# (set Plone verson to 6.0.0a2, otherwise answer questions with defaults)\ncookiecutter -f https://github.com/bluedynamics/plone-kickstarter.git\n# (select add-on mode, otherwse defaults)\ncd acme.foo\nmake run\n```\n\n#### Detailed\n\nInstall *plonecli*\n\n```bash\npip install plonecli \"bobtemplates.plone\u003e=6.0b10\"\n```\n\nFirst create your Plone project, let's call it \"acme.foo\" using *plonecli* and *bobtemplates.plone*:\n\n```bash\n    plonecli create add-on acme.foo\n```\n\nAnswer all questions and use Plone latest Plone 6 (6.0.0a2 at the time of writing).\n\nThen add the magic to the newly created project by applying this cookiecutter template:\n\n```bash\n    cookiecutter -f https://github.com/bluedynamics/plone-kickstarter\n```\n\nYou have to answer the project package with the same name as the add-on name, so `acme.foo` in this case.\n\nRun cookiecutter with option `mode` set to ``add-on``.\n\nFor details on the usage of the Makefile read the generated file `README_USAGE.md`.\n\nEnter the created project\n\n```bash\n    cd acme.foo\n```\n\nUse the Makefile\n\n```bash\n    make run\n```\n\nFor details on the usage of the Makefile read the generated file `README_USAGE.md`.\n\n## Visual Studio Code support\n\n### Prerequisite\n\nInstall the official Microsoft Python plugin.\n\n### Usage in VSCode\n\n- Start VSCode in your projetc folder with\n\n  ```bash\n  code .\n  ```\n\n- Select the python environment that you have used to build the project (your virtualenv).\n\n- When you click on the debug icon you can see up to two run configurations in the drop-down box at the top:\n\n  - `Python: Plone ($PROJECTNAME)`\n  - `Python: Test Plone  ($PROJECTNAME)` (only in mode add-on)\n\nWith those you can run and test Plone, you can set breakpoints have access to the interactive debugger of VisualCode.\n\nHave fun!\n\n## Contributors\n\n- Philipp Auersperg @zworkb\n- Jens Klein @jensens\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbluedynamics%2Fplone-kickstarter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbluedynamics%2Fplone-kickstarter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbluedynamics%2Fplone-kickstarter/lists"}