{"id":24268,"library":"projen","title":"Projen","description":"Projen is a CDK (Cloud Development Kit) for software projects, allowing you to define and manage project configurations (e.g., build scripts, dependencies, CI/CD) using code. Version 0.99.52, with active development and regular releases.","status":"active","version":"0.99.52","language":"python","source_language":"en","source_url":"https://github.com/projen/projen","tags":["project generation","infrastructure as code","cdk","build tools"],"install":[{"cmd":"pip install projen","lang":"bash","label":"Install from PyPI"}],"dependencies":[],"imports":[{"note":"standard top-level import","symbol":"Project","correct":"from projen import Project"},{"note":"submodule for TypeScript projects","symbol":"TypeScriptProject","correct":"from projen.typescript import TypeScriptProject"},{"note":"submodule for Python projects","symbol":"PythonProject","correct":"from projen.python import PythonProject"}],"quickstart":{"code":"from projen import Project\n\nproject = Project(\n    name=\"my-project\",\n    project_type=\"library\",\n    python_executable=\"python3\",\n)\n\nproject.synth()","lang":"python","description":"Create and synthesize a basic Projen project."},"warnings":[{"fix":"Use `Project(name=\"my-project\")` instead of `Project(\"my-project\")`.","message":"In projen 0.80+, the `Project` class no longer accepts `name` as a positional argument; it must be a keyword argument.","severity":"breaking","affected_versions":">=0.80.0"},{"fix":"Replace `jest=True` with `jestOptions=JestOptions(...)`","message":"The `TypeScriptProject` option `jest` is deprecated; use `jestOptions` instead.","severity":"deprecated","affected_versions":">=0.70.0"},{"fix":"Use Python 3.9 in your environment, or check for compatibility with newer versions.","message":"Projen uses `~=3.9` for Python requirement, which means Python 3.9 exactly. Using Python 3.10+ may cause unexpected issues.","severity":"gotcha","affected_versions":"all"},{"fix":"Always call `project.synth()` after configuration.","message":"The `synth()` method is required to generate project files; forgetting to call it results in an empty directory.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Run `pip install projen`","cause":"Projen not installed in the current Python environment.","error":"ModuleNotFoundError: No module named 'projen'"},{"fix":"Use keyword argument: `Project(name=\"my-project\")`","cause":"Passing `name` as a positional argument in projen 0.80+.","error":"TypeError: Project.__init__() takes 1 positional argument but 2 were given"},{"fix":"Use `from projen.typescript import TypeScriptProject`","cause":"Importing from wrong submodule or using outdated import path.","error":"AttributeError: module 'projen' has no attribute 'TypeScriptProject'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}