[Description]
|--- src
| |--- database
| |--- modules
| |--- shared
| |--- app.module.ts
| |--- main.ts
|--- .env.local
|--- .gitignore
|--- package.json
|--- tsconfig.json
- Node.js
- TypeScript
- Express
- ts-node-dev
- [Other dependencies including nestjs' dependencies]
Before you begin, ensure you have the following installed on your machine:
- Node.js (v14 or later)
- npm (Node Package Manager, included with Node.js)
- NestJs (NestJS' Documentation)
- Git
If you don't have git on your machine, install it.
Fork this repository by clicking on the fork button on the top of this page. This will create a copy of this repository in your account.
Now clone the forked repository to your machine. Go to your GitHub account, open the forked repository, click on the code button and then click the copy to clipboard icon.
Open a terminal and run the following git command:
git clone "url you just copied"
where "url you just copied" (without the quotation marks) is the url to this repository (your fork of this project). See the previous steps to obtain the url.
For example:
git clone [email protected]:this-is-you/hng_project.git
where this-is-you
is your GitHub username. Here you're copying the contents of the first-contributions repository on GitHub to your computer.
Change to the repository directory on your computer (if you are not already there):
cd hng_project
Now create a branch using the git switch
command:
git switch -c your-new-branch-name
For example:
git switch -c add-alonzo-church
Make your changes to the codebase. Ensure your code follows the project's coding standards and guidelines.
Run the existing tests to ensure your changes do not break anything. If you added new functionality, write corresponding tests.
npm run test
Now open Contributors.md
file in a text editor, add your name to it. Don't add it at the beginning or end of the file. Put it anywhere in between. Now, save the file.
If you go to the project directory and execute the command git status
, you'll see there are changes.
Add those changes to the branch you just created using the git add
command:
Push your changes using the command git push
:
git push -u origin your-branch-name
replacing your-branch-name
with the name of the branch you created earlier.
If you get any errors while pushing, click here:
-
remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead. remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information. fatal: Authentication failed for 'https://github.com//first-contributions.git/'
Go to GitHub's tutorial on generating and configuring an SSH key to your account.
If you go to your repository on GitHub, you'll see a Compare & pull request
button. Click on that button.
Now submit the pull request.
Soon your changes will be merged into the staging branch of this project. You will get a notification email once the changes have been merged.
First, clone the repository to your local machine using Git.
git clone https://github.com/your-username/[app-name].git
cd [app-name]
Navigate to the project directory and install the required dependencies.
npm install
Create a .env
file in the root directory of the project and add your environment-specific variables. You can use the provided .env.example
file as a reference.
cp .env.example .env
Edit the .env
file to match your environment configuration.
Compile the TypeScript code to JavaScript.
npm run build
Start the development server with the following command. This will also watch for any changes in your code and automatically restart the server.
npm run dev
To run the application in a production environment, use the following command:
npm run start
Open your browser and navigate to http://localhost:3000/api/v1/
to verify that the application is running correctly.
Here's an overview of the project's folder structure:
|--- src
| |--- controllers
|--- v1
| |--- database
| |--- interfaces
| |--- middlewares
| |--- routes
| |--- v1
| |--- services
| |--- utils
| |--- server.ts
|--- .env
|--- app.ts
|--- .gitignore
|--- package.json
|--- tsconfig.json
Here are some useful npm scripts that you can use during development and production:
npm run build
: Compiles the TypeScript code to JavaScript.npm run start:dev
: Starts the development server with live reloading.npm run start
: Starts the production server.npm run test
: Runs the test suite (if available).npm run lint
: Runs the linter to check for code style issues.
By following these steps, you should have your Node.js and TypeScript application up and running. If you encounter any issues, please refer to the documentation of the respective tools or seek help from the community.
All API endpoints can be referenced in the API Reference document.
This project is versioned to ensure backward compatibility and easy maintenance. The current version is [version].