Skip to content

[FEATURE]: Add automated template initialization script to replace placeholders and streamline project setup #102

@madhavansingh

Description

@madhavansingh

Feature and its Use Cases

Feature Overview

Currently, users must manually replace multiple TODO placeholders (e.g., project name, description, tech stack) when using this template repository.

This process is repetitive, error-prone, and slows down onboarding, especially for beginners.

Proposed Feature

Introduce an automated initialization script (e.g., setup.js or CLI tool) that:

  • Prompts users for project details (project name, description, tech stack, etc.)
  • Automatically replaces placeholders across key files:
    • README.md
    • CONTRIBUTING.md
    • Other template files if applicable
  • Ensures no unresolved TODO placeholders remain

Use Cases

  • A new contributor creates a project using this template and runs:

    node setup.js

    → The script configures the project automatically

  • Reduces manual editing effort and prevents missing placeholders

  • Helps standardize project setup across AOSSIE repositories

Expected Outcome

  • Faster onboarding for developers
  • Cleaner and fully initialized repositories
  • Improved usability and scalability of the template

Additional Context

Additional Context

  • This can be initially implemented as a simple Node.js script and later extended into a CLI tool (e.g., npx create-aossie-project)
  • The script can use basic file reading and string replacement to update placeholders
  • Future enhancements could include:
    • Multi-stack support (Node.js, Python, etc.)
    • Validation to ensure no TODO placeholders remain
    • Integration with CI checks

This enhancement aligns with improving developer experience and automation within the template repository.

Code of Conduct

  • I have joined the Discord server and will post updates there
  • I have searched existing issues to avoid duplicates

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions