Thank you for your interest in contributing to Initialized! This document provides guidelines and instructions for contributing.
By participating in this project, you agree to maintain a respectful and inclusive environment for everyone.
- Check existing issues to avoid duplicates
- Create a new issue with:
- Clear, descriptive title
- Steps to reproduce
- Expected vs actual behavior
- Environment details (OS, Node version, browser)
- Open an issue with the
enhancementlabel - Describe the feature and its use case
- Explain why it would benefit users
-
Fork & Clone
git clone https://github.com/YOUR_USERNAME/initialized.git cd initialized -
Create a Branch
git checkout -b feature/your-feature-name
-
Make Changes
- Follow the existing code style
- Add tests for new functionality
- Update documentation if needed
-
Test Your Changes
npm run test npm run lint npm run build -
Commit
git commit -m "feat: add your feature description"Follow Conventional Commits:
feat:new featurefix:bug fixdocs:documentationstyle:formattingrefactor:code restructuringtest:adding testschore:maintenance
-
Push & Create PR
git push origin feature/your-feature-name
Then open a Pull Request on GitHub.
- Node.js 18+
- PostgreSQL
- GitHub OAuth App
DATABASE_URL="postgresql://user:password@localhost:5432/initialized"
AUTH_SECRET="your-secret-key-min-32-chars"
AUTH_GITHUB_ID="your-github-oauth-app-id"
AUTH_GITHUB_SECRET="your-github-oauth-app-secret"
NEXTAUTH_URL="http://localhost:3000"npm install
npx prisma generate
npx prisma db push
npm run devnpm run test # Run all tests
npm run test:watch # Watch modesrc/
├── app/ # Next.js pages and API routes
├── components/ # React components
│ ├── three/ # 3D visualization
│ └── ui/ # UI components
├── lib/ # Utilities and services
└── types/ # TypeScript definitions
- TypeScript: Use strict typing, avoid
any - Components: Functional components with hooks
- Naming: PascalCase for components, camelCase for functions
- Formatting: Prettier handles this automatically
Open an issue or reach out to the maintainers.
Thank you for contributing!