Giter VIP home page Giter VIP logo

create-node-app / create-node-app Goto Github PK

View Code? Open in Web Editor NEW
64.0 2.0 1.0 2.69 MB

Powerful tool to scaffold your application choosing between different templates and extensions for Web apps, Web Extensions, Monorepos, and more!

Home Page: https://www.npmjs.com/package/create-awesome-node-app

JavaScript 1.42% Dockerfile 2.97% Shell 0.12% TypeScript 95.49%
hacktoberfest ci cli devcontainer docker docker-compose github-actions nestjs npx reactjs

create-node-app's Introduction

๐ŸŒŸ Create Awesome Node App ๐Ÿš€

Changelog | Contributing

Awesome Continious Integration npm npm License: MIT

This repository contains the source code for the create-awesome-node-app package. โœจ

cna

๐Ÿš€ Available Scripts

In the project directory, you can run:

npm run <script> Description
test Runs unit tests with Jest.
lint ๐Ÿšฆ Lints the project for potential errors
lint:fix Lints the project and fixes all correctable errors
format Formats the project using Prettier
type-check Runs TypeScript type checking

Running Locally

When contributing you might want to test your changes locally before opening a PR. To do so, you can use the create-awesome-node-app CLI to create a new project and test your changes.

# Clone the repository
git clone https://github.com/Create-Node-App/create-node-app.git

# Move into the directory
cd create-node-app

# Setup your local environment
fnm use
npm install

# Build the CLI
npm run build -- --filter create-awesome-node-app

# Create a new project
./packages/create-awesome-node-app/index.js my-app

๐Ÿค Contributing

  • Contributions make the open source community such an amazing place to learn, inspire, and create.
  • Any contributions you make are truly appreciated.
  • Check out our contribution guidelines for more information.

create-node-app's People

Contributors

dependabot[bot] avatar github-actions[bot] avatar lucasdc6 avatar ulises-jeremias avatar vanzaa avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

selemondev

create-node-app's Issues

Keep permissions from original files when doing the scaffolding

Describe the bug

When doing the scaffolding of the project the command is not keeping the original permissions from the files in the templates.

For example, when using the extensions to add husky, the generated .husky/pre-commit file won't be have execution permissions causing the pre-commit hook to be skipped

Expected Behavior

Keep the permissions from the original file from the templates and extensions

Current Behavior

The files are not keeping the expected permissions

Reproduction Steps

Create a new project with the tool using the following configuration:

  • Package manager: any
  • App type: Frontend Application
  • Template: React Vite Boilerplate
  • Extensions: Husky + Lint Staged

Then moved to the generated project and check the permissions for the files inside .husky/

image

Possible Solution

Seems to be a problem in the places where we are using this function here without passing the correct permissions.

We need to fix this behavior when writing files from templates or append files

Additional Information/Context

No response

Version used

0.4.20

Environment details (OS name and version, etc.)

Environment Info:

  System:
    OS: Linux 6.1 Arch Linux
    CPU: (8) x64 Intel(R) Core(TM) i5-1035G1 CPU @ 1.00GHz
    Memory: 24.52 GB / 31.12 GB
    Shell: 5.9 - /usr/bin/zsh
  Binaries:
    Node: 18.17.0 - /run/user/1000/fnm_multishells/403345_1696141910500/bin/node
    Yarn: 1.22.19 - /usr/bin/yarn
    npm: 9.6.7 - /run/user/1000/fnm_multishells/403345_1696141910500/bin/npm
    pnpm: 8.7.6 - /run/user/1000/fnm_multishells/403345_1696141910500/bin/pnpm
    Watchman: Not Found
  Browsers:
    Chrome: Not Found

Add bun as a package manager in the installation steps

Describe the feature

We want to add bun as a possible package manager when creating a new project

Use Case

We want to offer the possibility of using bun instead of the other package managers for now

Proposed Solution

Check how npm or yarn is being used in the CLI code base and implement a similar solution to include bun

Other Information

No response

Acknowledgements

  • I may be able to implement this feature request
  • This feature might incur a breaking change

Version used

latest

Environment details (OS name and version, etc.)

any

Failed to fetch template data

Describe the bug

Failed to run pnpm create awesome-node-app

Expected Behavior

It works.

Current Behavior

Works with npm ,but pnpm dosen't.

Reproduction Steps

  • node v18.16.0
  • pnpm 8.10.4

image

Possible Solution

No response

Additional Information/Context

No response

Version used

0.4.20

Environment details (OS name and version, etc.)

  • window 10
  • node v18.16.0
  • pnpm 8.10.4

Project scaffolding not working on Windows

Describe the bug

The command is failing to bootstrap projects when running on Windows using Powershell

Expected Behavior

The project scaffolding works correctly

Current Behavior

image

Reproduction Steps

Possible Solution

No response

Additional Information/Context

No response

Version used

0.4.20

Environment details (OS name and version, etc.)

Windows 10 and Power Shell without WSL

This wording is problematic

Describe the feature

Thanks for posting this in the Hacktoberfest community project-sharing channel.

TypeScript is not native to Node.js, and as such you're prompting people on their tool-chain usage. This sort of opinion is fine, but should usually be limited to a blog post or personal projects/tooling.

This isn't a critiscm, but advice. You've built a tool which I think is really great. But, you've intended it to be generic enough that I think you should respect that there are other ways to build things. Remove the silly messaging about choosing JavaScript instead of TypeScript.

https://github.com/Create-Node-App/create-node-app/blob/main/packages/create-awesome-node-app/src/options.ts#L38-L46

P.s. I use TypeScript too.

Use Case

Using JavaScript

Proposed Solution

Remove the silly messaging.

Other Information

No response

Acknowledgements

  • I may be able to implement this feature request
  • This feature might incur a breaking change

Version used

latest

Environment details (OS name and version, etc.)

MacOS

Error: Unexpected Token Eslint Front end

Describe the bug

The first loading gives an error
Some bug when creating the eslint file in Frontend

image

image

Expected Behavior

I hope you don't have the bug

Current Behavior

image

image

Reproduction Steps

What's your project name? โ€ฆ poc-node-app
โœ” What package manager do you want to use? โ€บ pnpm
โœ” What type of app do you want to create? โ€บ Frontend Application
โœ” Select a template โ€บ React Vite Boilerplate
โœ” Subdirectory to put all source content (e.g., src, app). Leave blank to use the root directory. โ€ฆ src
โœ” Import alias to use for the project, e.g., @/ โ€ฆ @/
โœ” Select extensions for Tooling โ€บ GitHub Setup, Husky + Lint Staged, Development Container, Jest + React Testing Library
โœ” Select extensions for State Management โ€บ TanStack React Query, React Hook Form, Zustand
โœ” Select extensions for Cross Platform โ€บ
โœ” Select extensions for UI โ€บ
โœ” Do you want to extend the app with more extensions? โ€ฆ yes
โœ” Enter extra extensions separater by comma. e.g: https://github.com/username/repository/tree/main/extension1,https://github.com/username/repository/tree/main/extension2 โ€ฆ

Possible Solution

No response

Additional Information/Context

No response

Version used

0.4.24

Environment details (OS name and version, etc.)

Environment Info:

System:
OS: macOS 14.1.2
CPU: (8) arm64 Apple M1 Pro
Memory: 43.84 MB / 16.00 GB
Shell: 5.9 - /bin/zsh
Binaries:
Node: 18.18.2 - ~/.nvm/versions/node/v18.18.2/bin/node
Yarn: 1.22.19 - ~/.nvm/versions/node/v18.18.2/bin/yarn
npm: 10.2.3 - ~/.nvm/versions/node/v18.18.2/bin/npm
pnpm: 8.15.4 - ~/Library/pnpm/pnpm
Watchman: Not Found
Browsers:
Chrome: 123.0.6312.59
Edge: Not Found
Safari: 17.1.2

Replace Linting and other static analysis tools with super-linter for CI

Describe the feature

I propose switching our CI linting setup, which includes shellcheck, markdownlint, eslint, and others, to use super-linter exclusively for GitHub Actions. super-linter is a comprehensive and centralized linter that supports multiple languages, providing a unified linting experience.

Use Case

There are some benefits of super-linter:

  • Unified Linting: super-linter supports a wide range of languages and linters, providing a unified linting solution for our GitHub Actions workflow.

  • Easy Configuration: Simplifies configuration by having a single .github/linters configuration file.

  • Consistent Output: Standardizes the output format for linting results across different languages and linters.

  • Extensibility: Supports adding or customizing linters easily, making it adaptable to our specific requirements.

Proposed Solution

  1. Configure super-linter:

    • Create or update the .github/workflows configuration file to specify the linters and configurations needed.
  2. GitHub Actions Workflows:

    • Update the GitHub Actions workflow files to use super-linter for linting instead of the actual implementation
  3. Testing:

    • Thoroughly test the linting process with super-linter in the GitHub Actions workflow to ensure it covers all relevant languages and provides accurate results. You can test this by submitting a PR

Other Information

No response

Acknowledgements

  • I may be able to implement this feature request
  • This feature might incur a breaking change

Version used

latest

Environment details (OS name and version, etc.)

any

Move from npm to bun on this repository

Describe the feature

Use Case

Proposed Solution

No response

Other Information

No response

Acknowledgements

  • I may be able to implement this feature request
  • This feature might incur a breaking change

Version used

latest

Environment details (OS name and version, etc.)

any

.packages/create-awesome-node-app/index.js my-app not working

Describe the bug

https://github.com/Create-Node-App/create-node-app#running-locally
I am having issue running the last command on Fedora 38 which is : .packages/create-awesome-node-app/index.js my-app

Expected Behavior

it should start creating node app

Current Behavior

getting error

Reproduction Steps

https://github.com/Create-Node-App/create-node-app#running-locally

Possible Solution

No response

Additional Information/Context

image

Version used

latest of everything except node since it used v18

Environment details (OS name and version, etc.)

Fedora 38

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.