Generic Node.js Express API
Welcome to the Generic Node.js Express API repository! This repository contains the code and documentation for a generic Express API built using Node.js, as well as a frontend server.
Quick Start
[!TIP]
Create a project from scratch
npx generic-nodejs-express-api my-awesome-api-project
[!TIP]
Add it to an existing project
npm i generic-nodejs-express-api
Table of Contents
Introduction
The Generic Node.js Express API is a template project that provides a basic setup for building RESTful APIs using Node.js and Express. It includes several utilities and configurations to help you get started quickly. Additionally, this project runs both a frontend and an API server. The frontend is accessible at localhost
, and the API is available at api.localhost
.
Installation
NPX
RUn it as an NPX
npx generic-nodejs-express-api my-awesome-api-project
To set up the Generic Node.js Express API, follow these steps:
- Clone this repository to your local machine:
git clone git@github.com:32teeth/generic-nodejs-express-api.git
- Navigate into the project directory:
cd generic-nodejs-express-api
- Install the required dependencies:
npm install
- (Optional) Set up HTTPS certificates:
sudo npm run certs
Usage
To start the API server, use one of the following commands depending on your environment:
-
Development:
npm run dev
-
Production:
npm run start
You can also run the server with HTTPS enabled:
-
Development with HTTPS:
npm run dev:https
-
Production with HTTPS:
npm run prod:https
Development
Scripts
Environment Variables
Create a .env
file in the root directory and add your environment-specific variables, such as API keys and database URLs.
Testing
The project uses Mocha and Chai for testing. To run tests, use:
npm test
Contributing
Contributions are welcome! If you have any ideas, suggestions, or bug reports, please open an issue or submit a pull request. Ensure that you follow the project's contribution guidelines.
License
This project is licensed under the ISC License.
Environment Variables
Create a .env
file in the root directory and add your environment-specific variables, such as API keys and database URLs.
Testing
The project uses Mocha and Chai for testing. To run tests, use:
npm test
Contributing
Contributions are welcome! If you have any ideas, suggestions, or bug reports, please open an issue or submit a pull request. Ensure that you follow the project's contribution guidelines.
License
This project is licensed under the ISC License.