A Cli that handles the creation of a basic express App that supports Husky configuration & static analysis tools

Overview

@phazero/create-express-app · GitHub license

Create express app is a CLI that can generate boiler plate code for setting up an express app.

CLI screenshot

Installation & Usage

npx @phazero/create-express-app
# or
npm install -g @phazero/create-express-app

Features

Here's a list of options that this CLI supports now

  • --git or -g for initializing the repo with git.
  • --install or -i for installing the default dependecies.
  • --name or -n for the project's folder.
  • --husky or -h for setting up husky to run npm scripts when git hooks are fired.
  • --linters for installing ESlint & Prettier dependecies and setting up ther default configuration.
  • --yes or -y for using the default configuration (note that the default project name is new-project).

Feature requests

Please follow this issue template when creating feature requests.

Issues

Please report any issues throgh this link. and follow the bug report template.

Licenses

MIT

Collaborators

Comments
  • bugfix/22 added EOF to .gitignore

    bugfix/22 added EOF to .gitignore

    Which issues does this PR resolve?

    #22

    How were things before and how does this PR change that? (If UI change add images)

    There were no EOF in gitinore file

    How should I review this PR? (Add implementation details, files to start with, etc.)

    gitignore should have an EOF .

    Reviewer Checklist

    • [ ] Understood the purpose of the PR.
    • [ ] Tested it locally. Check for mobile compatibility if applicable.
    • [ ] Checked that we don't have any merge conflicts.
    • [ ] Went through the code line by line.
    opened by MaymoonaAlBoloshi 2
  • fixed package version issue

    fixed package version issue

    Which issues does this PR resolve?

    -There's an issue when generating a typescript app using the cli because of a recent upgrade in typescript.

    How were things before and how does this PR change that? (If UI change add images)

    Before: Screenshot 2022-11-30 at 9 38 57 PM

    After: Screenshot 2022-11-30 at 9 39 08 PM

    How should I review this PR? (Add implementation details, files to start with, etc.)

    Generate a typescript app using the CLI to recreate the issue. Upgrade type-node package to fix the issue.

    Reviewer Checklist

    • [ ] Understood the purpose of the PR.
    • [ ] Tested it locally. Check for mobile compatibility if applicable.
    • [ ] Checked that we don't have any merge conflicts.
    • [ ] Went through the code line by line.
    opened by DevAseel 1
  • feature 21 update package json project name

    feature 21 update package json project name

    Which issues does this PR resolve?

    resolves #21

    How were things before and how does this PR change that? (If UI change add images)

    update project name in the generated pakcage json

    How should I review this PR? (Add implementation details, files to start with, etc.)

    check the newly wrote code and the removed lines

    Reviewer Checklist

    • [ ] Understood the purpose of the PR.
    • [ ] Tested it locally. Check for mobile compatibility if applicable.
    • [ ] Checked that we don't have any merge conflicts.
    • [ ] Went through the code line by line.
    opened by yacinebenkaidali 0
  • feature/add-jest-support

    feature/add-jest-support

    Which issues does this PR resolve?

    /resolves #4

    How were things before and how does this PR change that? (If UI change add images)

    Added an option to setup jest as a testing library

    How should I review this PR? (Add implementation details, files to start with, etc.)

    • Check the files that changed

    Reviewer Checklist

    • [ ] Understood the purpose of the PR.
    • [ ] Tested it locally. Check for mobile compatibility if applicable.
    • [ ] Checked that we don't have any merge conflicts.
    • [ ] Went through the code line by line.
    opened by yacinebenkaidali 0
  • add cors, cookie-parser, morgan and .env.example

    add cors, cookie-parser, morgan and .env.example

    Thanks for the good work !

    Which issues does this PR resolve?

    Add cookies-parser, cors, morgan, .env.example

    How were things before and how does this PR change that? (If UI change add images)

    N/A

    How should I review this PR? (Add implementation details, files to start with, etc.)

    templates/{ts|js}/{.env.example, src/index, package.json, src/config/contstants}

    Reviewer Checklist

    • [ ] Understood the purpose of the PR.
    • [ ] Tested it locally. Check for mobile compatibility if applicable.
    • [ ] Checked that we don't have any merge conflicts.
    • [ ] Went through the code line by line.
    opened by benrandja-akram 0
  • EOF missing in .gitignore of generated template

    EOF missing in .gitignore of generated template

    Describe the bug (add an image if UI bug)

    There is no end of file in gitignore file of the generated template and github apone creating PRs will later point it out

    Which browser or device was used?

    --

    Steps to reproduce

    1 - Use the templete generator and create a project. 2 - Check the generated .gitignore file

    Additional context (any extra information)

    opened by MaymoonaAlBoloshi 0
  • Generate `package.json` instead of copying it.

    Generate `package.json` instead of copying it.

    Is your proposal related to a problem?

    Right now we're copying package.json into the new generate template, the problem is that the project name won't be reflected into the new template.

    Describe the solution you'd like

    It would be best if we could generate the package.json with the initial package options.

    Describe alternatives you've considered

    N/A

    Additional context

    N/A

    enhancement 
    opened by yacinebenkaidali 0
  • Feature 16: Improve the initial template

    Feature 16: Improve the initial template

    Which issues does this PR resolve?

    resolves #16

    How were things before and how does this PR change that? (If UI change add images)

    Improved initial template

    How should I review this PR? (Add implementation details, files to start with, etc.)

    Check the new template files

    Reviewer Checklist

    • [ ] Understood the purpose of the PR.
    • [ ] Tested it locally. Check for mobile compatibility if applicable.
    • [ ] Checked that we don't have any merge conflicts.
    • [ ] Went through the code line by line.
    enhancement 
    opened by yacinebenkaidali 0
  • Fix/14 git ignore not being copied

    Fix/14 git ignore not being copied

    Which issues does this PR resolve?

    resolves #14

    How were things before and how does this PR change that? (If UI change add images)

    Now: .gitignore is being copied to the newly generated repository.

    How should I review this PR? (Add implementation details, files to start with, etc.)

    Reviewer Checklist

    • [ ] Understood the purpose of the PR.
    • [ ] Tested it locally. Check for mobile compatibility if applicable.
    • [ ] Checked that we don't have any merge conflicts.
    • [ ] Went through the code line by line.
    opened by yacinebenkaidali 0
  • Fix/6 remove generated file when husky is chosen

    Fix/6 remove generated file when husky is chosen

    Which issues does this PR resolve?

    resolves #6

    How were things before and how does this PR change that? (If UI change add images)

    Before on Windows: When husky options is chosen a new file with 6 as it's name is generated. Now: I've added a check if that file is generated and remove it if it's there.

    How should I review this PR? (Add implementation details, files to start with, etc.)

    Check the new generated code.

    Reviewer Checklist

    • [ ] Understood the purpose of the PR.
    • [ ] Tested it locally. Check for mobile compatibility if applicable.
    • [ ] Checked that we don't have any merge conflicts.
    • [ ] Went through the code line by line.
    bug 
    opened by yacinebenkaidali 0
  • A file with `6` as it's name appears when choosing husky as an option on windows.

    A file with `6` as it's name appears when choosing husky as an option on windows.

    Describe the bug (add an image if UI bug)

    image Running npx mrm@2 lint-staged on windows results in a file that has some logs called 6 to be generated.

    Which browser or device was used?

    Windows

    Steps to reproduce

    • Start using the CLI.
    • Choose different options to match your needs.
    • Choose Setup husky for git hooks.
    • Here if you're on Linux or MacOS everything works fine, but when you're on windows the file 6 appears with npm install logs.

    Additional context (any extra information)

    n/a

    bug 
    opened by yacinebenkaidali 0
  • Switch to native modules

    Switch to native modules

    Is your proposal related to a problem?

    No

    Describe the solution you'd like

    Switch to Nodejs native modules instead of using modules from npm

    Describe alternatives you've considered

    N/A

    Additional context

    Some modules can be replaced with native modules which will result in smaller package size and faster initial download.

    enhancement 
    opened by yacinebenkaidali 0
  • format script and .editorConfig

    format script and .editorConfig

    Is your proposal related to a problem?

    nope :)

    Describe the solution you'd like

    I'd like to request having a format script in package.json something like "format": "prettier --write ."

    and can we also have .editorconfig so the all parties developing wont have overlapping configs

    Describe alternatives you've considered

    (Write your answer here.)

    Additional context

    (Write your answer here.)

    enhancement 
    opened by MaymoonaAlBoloshi 0
Owner
PhazeRo
We are a specialist digital consultancy. We are building the region's largest engineering team out of local talent.
PhazeRo
Express.js framework boilerplate with TypeScript, Prisma, ESLint, Husky and Jest

Setup a Node.js project with Typescript, Prisma ESLint, Prettier, Husky Node.js boilerplate with Express.js, TypeScript, Prisma, ESLint, Prettier, Hus

Smart Geek 6 Dec 12, 2022
A "Basic-to-Lisp" compiler. But Basic is not real Basic, and Lisp is not real Lisp.

Basic2Lisp A "Basic-to-Lisp" compiler. But Basic is not real Basic, and Lisp is not real Lisp. Syntax Print-Sth Put some-value to standard output. PRI

Hana Yabuki 5 Jul 10, 2022
ec0lint - a static code analysis tool

ec0lint is a static code analysis tool that provides the users with useful hints on how to reduce the digital footprint of their webpages during the development process. Applying code changes suggested by ec0lint will make result with webpages that emit less carbon per visit, load quicker and are more space- efficient. The tool is open-source and community-driven.

ec0lint 127 Dec 5, 2022
Code examples for my TypeScript Static Analysis Hidden Gems talk. 💎

TypeScript Static Analysis Hidden Gems Code Code samples for the talk, formed from my template-typescript-node-package. ✨ ?? Slides available here! ??

Josh Goldberg 4 Nov 2, 2022
Gofiber with NextJS Static HTML is a small Go program to showcase for bundling a static HTML export of a Next.js app

Gofiber and NextJS Static HTML Gofiber with NextJS Static HTML is a small Go program to showcase for bundling a static HTML export of a Next.js app. R

Mai 1 Jan 22, 2022
Webpack dev tools to make performance analysis, error investigation and loader development more convenient

build-tool-inspector Introduction Webpack dev tools to make performance analysis, error investigation and loader development more convenient. Provide

Modern JS 25 Nov 17, 2022
A Node.js REST API example built with Express and Typescript that can be used as template for creation of new servers.

api-example-firebase-nodejs A Node.js REST API example built with Express and Typescript that can be used as template for creation of new servers. The

Rodrigo João Bertotti 5 Nov 25, 2022
JavaScript Express.js app serving static vanilla JS. This sample app is used in Microsoft Docs to demonstrate how to integrate Azure Storage, Azure Cosmos DB, and Azure Active Directory.

JavaScript on Azure Learn Path - Module 2 - Deploying a basic app to Azure This Learn module requires the following Azure resources to deploy correctl

Azure Samples 13 Dec 31, 2022
Theme Redone is a custom WordPress theme starter/framework with its own Gutenberg blocks solution and a CLI that speeds up the block creation process.

Theme Redone The Framework for Developing Custom WordPress Themes with its own Gutenberg Blocks creation solution. Theme Redone is a custom WordPress

null 103 Dec 30, 2022
Node-cli-starter - Basic starter kit for building Node CLI applications with TypeScript.

node-cli-starter Minimal starter kit for building Node CLI applications with TypeScript. Getting Started To get started clone repo locally and run npm

Cory Rylan 7 May 17, 2022
Installing husky made easy as woof!

auto-husky Installing husky made easy as woof! ?? ?? Table of contents ?? Installation ?? Usage ?? Versioning ?? Installation You can install the pack

G.Script 24 Jun 28, 2022
A Nextjs-Typescript boilerplate , configured with Tailwindcss, Eslint, Prettier, Lint-staged ,Husky and commitizen

Minimal Nextjs Typescript boilerplate A Minimal Next-Typescript boilerplate to quickly and easily bootstrap your next project. Comes pre-configured wi

TEYIM ASOBO 3 Nov 4, 2022
AdsPower supports Local API, which has functions like reading and writing account configuration information, opening and closing browsers, searching for accounts.

AdsPower supports Local API, which has functions like reading and writing account configuration information, opening and closing browsers, searching for accounts. Besides, it can cooperate with Selenium and Puppeteer to execute browser operations automatically.

AdsPower Official 20 Dec 1, 2022
Compile Master CSS ahead of time with zero-configuration integration with build tools

CSS Compiler Compile Master CSS ahead of time with zero-configuration integration with build tools On this page Usage webpack.config.js vite.config.js

Master 5 Oct 31, 2022
A lightweight (~2kB) library to create range sliders that can capture a value or a range of values with one or two drag handles

range-slider-input A lightweight (~2kB) library to create range sliders that can capture a value or a range of values with one or two drag handles. Ex

Utkarsh Verma 42 Dec 24, 2022
PAKURI-THON is a tool that supports pentesters with various pentesting tools and C4 server

PAKURI-THON Pentest Achieve Knowledge Unite Rapid Interface - Python PAKURI-THON is a tool that supports pentesters with various pentesting tools and

Mr.Rabbit 21 Nov 9, 2022
dynamic-component-app is an angular application for dynamic component template creation

MyApp This project was generated with Angular CLI version 14.1.0. Development server Run ng serve for a dev server. Navigate to http://localhost:4200/

Aniket Muruskar 7 Aug 26, 2022
CLI utility that parses argv, loads your specified file, and passes the parsed argv into your file's exported function. Supports ESM/TypeScript/etc out of the box.

cleffa CLI tool that: Parses argv into an object (of command-line flags) and an array of positional arguments Loads a function from the specified file

Lily Scott 9 Mar 6, 2022
BASIC is a web application contains basic applications related to studies, love, health, weather, productivity. This project aim to simply the user's life in anyway.

BASIC is a web application contains basic applications related to studies, love, health, weather, productivity. This project aim to simply the user's life in anyway. Supported by all operating system, need an internet connection for working properly.

IRUTHAYA SANTHOSE I 1 Dec 19, 2021