Commit Graph
43 Commits
Author SHA1 Message Date
sankalp e5f77143bf feat(src/djinit/utils): add get_full_app_config_path static method to compute full AppConfig pathAdd a static method get_full_app_config_path that builds the full path to an AppConfig class, handling nested app structures and module resolution. Improves reliability of AppConfig path calculation.
- New Features
  - Added `get_full_app_config_path` method to generate full AppConfig paths.
- Enhancements
  - Centralized AppConfig path calculation logic using existing `calculate_app_module_path`.
- Bug Fixes
  - None
2026-04-20 14:27:59 +05:45
sankalp 7d91c037ca feat(src/djinit/creators): add unified URL registration and AppConfig path handling
- New Features: Automatically include app URLs in project urls.py and api/v1/urls.py; Generate full AppConfig paths using a unified utility
- Enhancements: Improved nested-app detection and path resolution across predefined, standard, single, and unified structures; Refined context transformation for base settings; Updated URL template rendering
- Bug Fixes: Fixed duplicate include‑statement handling; Corrected URL update error paths and exception safety
2026-04-20 14:27:53 +05:45
sankalp ee0b22f2ae feat(src/djinit/creators): add API v1 URL integration for predefined structures and enhance context variables
- Add conditional logic to `_add_to_api_v1_urls` when `structure_type` is `"predefined"`
- Include `module_name` in contexts for `justfile` and `Procfile` templates
- Clarify `module_name` usage in `.env.sample` generation comment
2026-04-20 14:24:38 +05:45
sankalp 4c40dd21fd fix(src/djinit/templates/project): update template placeholders and dependency references
New Features
- Replace double‑curly placeholder syntax with direct variable usage in justfile and procfile templates.

Enhancements
- Change psycopg2-binary to psycopg[binary] in pyproject.toml template.
- Update ruff.isort known‑first‑party from project_name to module_name.
- Adjust server commands to reference module_name placeholder and use variable syntax directly.

Bug Fixes- Fix placeholder expansion in dev‑server, makemigrations, install, and remove commands.
- Correct requirements generation script to handle missing pyproject.toml gracefully.
- Resolve incorrect variable substitution in gunicorn bind commands and worker count references.
2026-04-20 14:24:27 +05:45
sankalp 09fa597215 fix(ci): correct Python version and Django settings variable interpolation
- Bug Fixes:
  - Fixed Jinja syntax in GitHub Actions workflow (removed extraneous {{ }} around matrix.python-version).
  - Updated DJANGO_SETTINGS_MODULE placeholder from [[ project_name ]] to [[ module_name ]] in GitLab CI template.
2026-04-20 14:24:20 +05:45
sankalp 123141bd32 feat(src/djinit/creators): add use_database_url flag for pyproject.toml
Why: expose ability to toggle usage of DATABASE_URL in generated configuration.

New Features
- Add configurable `use_database_url` parameter to control inclusion of DATABASE_URL in generated pyproject.toml.

Enhancements
- Increase flexibility of database configuration for generated Django projects.

Bug Fixes
- (none)
2026-04-20 14:12:12 +05:45
sankalp 72fc023fd3 feat(src/djinit/templates/config/settings): add DATABASE_URL support via dj_database_url
Add conditional import of `dj_database_url` and a directive comment for `use_database_url` to enable automatic database configuration when the `use_database_url` flag is set, improving flexibility of the production settings template.

- New Features: Introduce support for reading `DATABASE_URL` to configure Django databases automatically.
- Enhancements: Conditional import improves template modularity and reduces unnecessary dependencies.
- Bug Fixes: None.
2026-04-20 14:12:07 +05:45
sankalp c4f66d607b feat(src/djinit/templates/project): update env template placeholder and add optional database URL dependency
New Features
- Add optional `dj-database-url` dependency for database URL support.

Enhancements
- Replace `{{ project_name }}` with `[[ project_name ]]` in the env template for clearer interpolation.

Bug Fixes
- None
2026-04-20 14:12:05 +05:45
sankalp 6c56689d8c chore: Remove space after equals sign in SECRET_KEY assignment. 2026-03-01 00:51:19 +05:45
sankalp 48177d969b Merge remote-tracking branch 'origin/main' into dev 2026-03-01 00:51:08 +05:45
sankalp 992688641e update templates 2026-03-01 00:48:50 +05:45
sankalp c42e0635b8 update templates 2026-03-01 00:45:29 +05:45
sankalp 68f1b44eab fix: fixed secret key not generated 2026-03-01 00:27:47 +05:45
sankalp 7d76fb902c feat(src/djinit): add CLI and core utility modules
Introduce command-line interface and supporting modules for project initialization.

- New Features:
  - Add `cli.py` with Typer commands `secret` and `app`
  - Implement custom exception hierarchy in `utils/exceptions.py`
  - Provide secret key generation utilities in `utils/secretkey.py`
  - Add name validation logic in `utils/validators.py`
  - Initialize package with empty `__init__.py`

- Enhancements:
  - Update `pyproject.toml` to include new modules and console script entry points

- Bug Fixes:
  - (none)
2026-01-31 22:23:51 +05:45
sankalp 937caf600b feat: add djinit package with CLI tool to generate Django projects 2025-10-29 13:28:16 +05:45
sankalp 072e42eddd refactor: restructure project and implement CLI framework 2025-10-29 13:18:19 +05:45
sankalp 33bb6c299e refactor: improve code structure and UI messages for better clarity 2025-10-29 12:21:35 +05:45
sankalp 5b2ed44a64 chore: apply ruff and formatting changes for better code quality 2025-10-29 12:17:46 +05:45
sankalp 6bf155b595 chore: update README and pyproject.toml with project description and dependencies 2025-10-29 11:59:50 +05:45
sankalp 46a5fee20f feat(app): allow creating multiple Django apps with comma or space separated names and improve project structure detection 2025-10-29 11:41:31 +05:45
sankalp 53376e13d6 refactor: remove try-except blocks from command handlers and generators for cleaner code 2025-10-29 11:27:42 +05:45
sankalp 0df1bf1224 feat(app_generator): support nested Django app structures and custom app module paths 2025-10-29 11:14:09 +05:45
sankalp b78ba6d308 feat: scaffold a basic Django project structure 2025-10-29 10:59:58 +05:45
sankalp 1a2e50900d feat: add option to configure database connection via DATABASE_URL 2025-10-29 10:48:52 +05:45
sankalp e028094193 feat: add email configuration settings to env_sample 2025-10-29 10:03:05 +05:45
sankalp c07309127b feat(config): add dj-database-url for simplified database configuration 2025-10-29 10:02:24 +05:45
sankalp 793f8827fd feat: implement project initialization with templates and configuration 2025-10-29 00:17:20 +05:45
sankalp 15929d9ca5 feat: add CLI and generator scripts to orchestrate project setup 2025-10-28 22:58:37 +05:45
sankalp 172cfd2a22 feat: add file and project templates for djinit 2025-10-28 22:55:23 +05:45
sankalp d3729de3a0 feat: add app creation command and app management module 2025-10-28 22:12:41 +05:45
sankalp 2705bbff61 feat: implement interactive user input collection for project setup 2025-10-28 21:29:26 +05:45
sankalp e39d88c5b1 fix(name_validors):the undefined variable error 2025-10-28 21:21:51 +05:45
sankalp 9263f97ee1 refactor(name_validator): improve name validation logic for clarity and maintainability 2025-10-28 21:16:48 +05:45
sankalp 32a9b6a47f feat: add project and app name validation script with comprehensive checks 2025-10-28 21:13:29 +05:45
sankalp b0e51cc7ed refactor(deployment): rename class and update docstrings for clarity 2025-10-28 21:02:58 +05:45
sankalp cee7ce26a6 feat: add Procfile, gunicorn config, runtime.txt, and nixpacks.toml generation for PaaS deployments 2025-10-28 21:01:17 +05:45
sankalp ec8e20abc2 feat(deployment): generate Justfile for common Django tasks 2025-10-28 20:59:02 +05:45
sankalp d9f13b3f86 feat(cicd): add GitLab CI configuration generation 2025-10-28 20:53:48 +05:45
sankalp 4f010688cf feat(cicd): add CI/CD configuration generator for GitHub Actions 2025-10-28 20:46:45 +05:45
sankalp 646dcef518 feat(scripts): add secret key generator script 2025-10-28 20:33:04 +05:45
sankalp 19938f51a9 refactor(utils): improve utility functions for broader use 2025-10-28 20:31:35 +05:45
sankalp f89d815921 feat(ui): add console UI utilities for enhanced project setup experience 2025-10-28 20:30:31 +05:45
sankalp 9506acaaf2 feat: add initial project structure with cli and generator modules 2025-10-28 19:59:46 +05:45