https://github.com/nsharma1396/kvell
Kvell creates Node.js applications with pre-defined configurations, app flow and abstractions.
https://github.com/nsharma1396/kvell
expressjs javascript kvell kvelljs mongodb mongoose nodejs pm2 sequelize server
Last synced: 6 months ago
JSON representation
Kvell creates Node.js applications with pre-defined configurations, app flow and abstractions.
- Host: GitHub
- URL: https://github.com/nsharma1396/kvell
- Owner: nsharma1396
- License: mit
- Created: 2019-12-17T20:50:49.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2023-01-05T04:58:42.000Z (over 2 years ago)
- Last Synced: 2025-03-17T13:07:31.187Z (7 months ago)
- Topics: expressjs, javascript, kvell, kvelljs, mongodb, mongoose, nodejs, pm2, sequelize, server
- Language: JavaScript
- Homepage: https://kvelljs.vercel.app/
- Size: 16.2 MB
- Stars: 15
- Watchers: 3
- Forks: 4
- Open Issues: 86
-
Metadata Files:
- Readme: Readme.md
- License: LICENSE
Awesome Lists containing this project
README
# Kvell.js
## What is Kvell ?
[Kvell.js](https://www.github.com/nsharma1396/kvell) is a family of packages using which you can create Node.js applications with pre-defined
configurations, a fixed application flow and a set of abstractions. It bootstraps the node application with a set of popularly used npm packages and provides a minimal setup environment so that the developer can focus directly on writing the essential parts of the application.## What does it do ?
- Maintains a proper code standard.
- Abstracts out server configurations.
- Abstracts out database related configurations.
- Maintains a consistent top-level folder structure.
- Provides support for writing and viewing API documentations without any setups.
- Provides auto-template creation for routes and models.
- Does automatic git initialization (if possible) on project setup.
- Provides a very simple and basic logging mechanism.`Kvell` takes inspiration from [create-react-app](https://www.create-react-app.dev) in it's implementation and shares some similarity with `create-react-app's` methodology and internal flow when it comes to how it works under the hood.
# Creating an application
To setup a kvell application, you just need to run the following command
```sh
npx create-kvell-app example-app
```
**Note**: [npx](https://medium.com/@maybekatz/introducing-npx-an-npm-package-runner-55f7d4bd282b) comes with npm 5.2+ and higher. If you use npm 5.1 or earlier, you need to install `create-kvell-app` globally instead:
```sh
npm i -g create-kvell-app
```Once installed, you can create a kvell application by running:
```sh
create-kvell-app example-app
```## Running the server
Now, you can change your directory to `example-app` and run the application in `development` mode by running:
```sh
cd example-app
npm start
```That's it! This will start your server on [http://localhost:5001](http://localhost:5001).

### Disable `watch mode`
The server will by default start with `watch mode` enabled, i.e, it will restart the server everytime you make a change in a file. To run the server without `watch mode`, run the server like so,
```sh
npm start -- --no-watch
```## Optional Installation Method
You can also create an application using the `npm init` script.
```sh
npm init kvell-app example-app
```For complete docs of Kvell, visit [Kvell Docs](https://kvelljs.now.sh/)