Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Determine Generate default config #2

Closed
jtrrll opened this issue May 13, 2024 · 4 comments
Closed

Determine Generate default config #2

jtrrll opened this issue May 13, 2024 · 4 comments
Assignees
Labels
towards issue This change is a piece of work towards a larger issue

Comments

@jtrrll
Copy link
Member

jtrrll commented May 13, 2024

init is designed to be extensible, but should also supply a default configuration to immediately get new projects off the ground. We should determine a set of packages that all Generate dev shells should include by interviewing past tech leads, software chiefs, and developers to determine which tools are essential. We will likely need to identify a backend language, a frontend runtime, containerization, commit tools, etc. This is also an opportunity for us to prescribe specific solutions over alternatives (such as Bun vs. Node, or Bash vs. Zsh)

Comment on this issue with the results of your research. These packages will be installed in the proof-of-concept build of init.

@jtrrll jtrrll added the towards issue This change is a piece of work towards a larger issue label May 13, 2024
@jtrrll
Copy link
Member Author

jtrrll commented May 14, 2024

The backend language survey heavily favored Go for most use cases, so we will move forward with prescribing it as the default choice.

There was some support in the survey for Python and TypeScript as well. TS will be included regardless to support frontend development, and we should consider prescribing Python as our default scripting language, as our community is more familiar with Python than Bash/Ruby/alternatives.

@jtrrll
Copy link
Member Author

jtrrll commented May 14, 2024

Rather than survey for a preferred task runner, I am selecting just/justfile, primarily due to its support for writing tasks in any scripting language. It also features syntax similar to make/makefile, so it should be easy for new devs to pick up

@jtrrll
Copy link
Member Author

jtrrll commented May 16, 2024

A survey on local pre-commit hooks revealed that few Generate members are currently using them. While many respondents recognized the value of quickly running linters/formatters and keeping their commits clean, many believed that these checks act as roadblocks that slow down development. A potential solution may be to run these hooks on pre-push, so that the remote branch is always well-formatted, but developers are free to commit WIP or incomplete work locally.

@jtrrll
Copy link
Member Author

jtrrll commented May 21, 2024

Very few responses to the survey on preferred databases. Let's default to PostgreSQL for now, as it is by far the most commonly used in Generate projects.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
towards issue This change is a piece of work towards a larger issue
Projects
None yet
Development

No branches or pull requests

3 participants