Feature: Init wizard should store credentials in .env file #23
Labels
No labels
bug
documentation
duplicate
enhancement
feature-request
field-updates
good first issue
help wanted
integration
invalid
performance
phase-2
phase-3
question
research-needed
sync
testing
ui
ux
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Phil/tsdav#23
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Feature: Init wizard should store credentials in .env file
Problem
Currently, the
initcommand creates a configuration file with credentials stored in plaintext:Issues with this approach:
Proposed Solution
The
initwizard should automatically create two files:1.
.envfile (contains actual credentials)2. Config JSON (contains references)
Implementation Details
Changes to
init.ts:Collect credentials during wizard
inquirerwithtype: 'password'for hidden inputWrite to
.envfileGenerate config with env references
Update
.gitignore.envif not already presentCreate
.env.templateUser Feedback:
Benefits
✅ Security: Credentials never stored in JSON config
✅ Git-safe:
.envautomatically ignored✅ Industry standard: Follows practices used by Next.js, Prisma, Supabase
✅ Team-friendly: Each developer has their own
.env✅ DX improvement: One-time credential entry
Examples from Other Tools
Next.js:
Prisma:
Supabase:
Alternative Considered
Keep current behavior but add a
--use-envflag:However, this makes the secure approach opt-in rather than default, which is less ideal.
Suggested Labels
enhancementsecuritycligood first issue