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.
[!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
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
.
Front End | API |
---|---|
localhost | api.localhost |
dmeo frontend | demo api |
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:
git clone git@github.com:npm-packages-collection/generic-nodejs-express-api.git
cd generic-nodejs-express-api
npm install
sudo npm run certs
To start the API server, use one of the following commands depending on your environment:
npm run dev
npm run start
You can also run the server with HTTPS enabled:
npm run dev:https
npm run prod:https
npm run reset
This command removes node_modules
and package-lock.json
and reinstalls dependencies.
sudo npm run certs
This command will:
selfsigned.crt
) and private key (selfsigned.key
) in the certs directory for HTTPS development.APP_CRT
and APP_KEY
) in the .env
file..env
file.Create a .env
file in the root directory and add your environment-specific variables, such as API keys and database URLs.
The project uses Mocha and Chai for testing. To run tests, use:
npm test
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.
This project is licensed under the ISC License.
Create a .env
file in the root directory and add your environment-specific variables, such as API keys and database URLs.
The project uses Mocha and Chai for testing. To run tests, use:
npm test
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.
This project is licensed under the ISC License.