open-index/open-npm huggingface dataset:
npm package: @swyger/cli
Description: Swyger CLI is used to create projects(Server/Client) with boilerplate!
Author: Agglomy
Latest version: 0.1.6

#  <span style="color: red;">Swyger</span> <span style="color: blue;">CLI</span>

![alt text](./preview/logo_name.png "Swyger Logo")

**Swyger CLI(Command Line Interface)** is created to help you to generate the boilerplate project (server/client...)

So it is a free and open source!!!



## Prerequisite:
- NodeJS 16+: https://nodejs.org/
- Browser: Google Chrome, Firefox, Microsoft Edge...etc (latest version)
- Terminal(command line to run the app for test)
- IDE( to modify the code source): Visual Studio, PhpStorm(recommended),sublimetext 4...etc


## Note:
This Framework, assume you already know how to use NodeJS.

## Installing Swyger CLI

``npm i @swyger/cli`` from a project


or globally ``npm i -g @swyger/client``


## Common Commands:

- ``swyger -h``: To get the commands and option
- ``swyger init``: To init the project
  - ``init`` command can be directly chained with:
    - ``-n your-project-name``: To create the project name

Note: In case you don't know the options, just type ``swyger-cli init`` and follow the scripts.


## References

- @clack/prompts: https://github.com/natemoo-re/clack
- yargs: https://www.npmjs.com/package/yargs


# Join US
If you have any suggestion, feature to add ...etc
- Discord(Support Team, FAQ, Chat): https://discord.gg/PPTZY5qFdC

# Contributors
- Agglomy Team :
  - Ivan Joel Sobgui
# Licence

MIT: You can use it for educational/personal/business purpose!
npm package: @swyger/client-auth
Description: Swyger Auth Client JS library is used for Swyger Server as consumer Rest API focused on authentication (register, login, forgot password...). Visit the master branch: https://github.com/coorise/swyger-js-client-auth.git
Author: Agglomy
Latest version: 0.1.8

# <span style="color:red">Swyger</span>  <span style="color:blue">Auth Client JS</span>

## Get Started
Swyger Auth Client JS library is used for Swyger Server as consumer Rest API for authentication(login,register,refresh token,...) .
Visit the master branch: https://github.com/coorise/swyger-js-client-auth.git

You can download the swyger auth client js library on: https://www.unpkg.com/@swyger/client-auth

then save it somewhere in your directory like "/dist/swyger-client-auth.min.js"

```
<script type="module">
        import SwygerAuthClient from './dist/swyger-client-auth.min.js'
        //import SwygerAuthClient from '@swyger/client-auth' //with npm for node module
        let config={
            //Configure the offline DB
            OFFLINE_DB_NAME:{
                AUTH:'swyger_auth'
            },

            //Configure the server
            HOST_SERVER:{
                AUTH:'http://localhost:4100',
                
            },
            API_VERSION:{
                AUTH:'/api/v1',
            },
            AUTO_REFRESH_TOKEN_TIMEOUT:1500000, //in millisecond= 25 minutes
            // A Unique Api key for all your servers
            API_KEY:your_api_key
        }
        let client =SwygerAuthClient.init(config)
        //now you can do authentication
        let auth= client.auth
        auth.register({email,password},callback)
        auth.login({email,password},callback)
        ...

 </script>
```
# Build Your Own JS Client Library
Note 0: Clone the repository:

``git clone https://github.com/coorise/swyger-js-client-auth.git``


Note 1: For more details about how to use our API Consumer, visit the ``DOC`` : https://github.com/coorise/swyger-js-client-auth/tree/master/doc/swyger/api.

Note 2: If you want to modify the entire api (eg:children route,...), you have to work with the main project (installing Node JS with the project dependencies ``npm i``) <br> then locate the ``./src/api/api-route.js``,<br>
once you are done just build it with ``npm run build``,<br> to get your new library in ``dist`` folder.

# Todo
- Removing/Reduce some unusual dependencies,functions, refactoring paths/files...
- Making good and easy documentation with tutorials (videos, webpage...)
- Code Cleaning/ Making a suitable project structure with modulable pattern

# Join US
If you have any suggestion, feature to add ...etc
- Discord(Support Team, FAQ, Chat): https://discord.gg/PPTZY5qFdC

# Contributors
- Agglomy Team :
    - Ivan Joel Sobgui
# Licence

MIT: You can use it for educational/personal/business purpose!
npm package: @swyger/client-database
Description: Swyger Database Client JS library is used for Swyger Server as consumer Rest API for CRUD operation in realtime! Visit the master branch: https://github.com/coorise/swyger-js-client-database.git
Author: Agglomy
Latest version: 0.1.7

# <span style="color:red">Swyger</span>  <span style="color:blue">Database Client JS</span>

## Get Started
Swyger Database Client JS library is used for Swyger Server as consumer Rest API for CRUD operation in realtime!.
Visit the master branch: https://github.com/coorise/swyger-js-client-database.git

You can download the swyger database client js library on: https://www.unpkg.com/@swyger/client-database

then save it somewhere in your directory like "/dist/swyger-client-database.min.js"
```
<script type="module">
        import SwygerDatabaseClient from './dist/swyger-client-database.min.js'
        //import SwygerDatabaseClient from '@swyger/client-database' //with npm for node module

        let config={
            //Configure the offline DB
            OFFLINE_DB_NAME:{
                DATABASE:'swyger_database'
            },

            //Configure the server
            HOST_SERVER:{
                AUTH:ClientConfig?.HOST_SERVER?.AUTH||'http://localhost:4100', //Required for protected route
                DATABASE:'http://localhost:4400',
            },
            API_VERSION:{
                AUTH:'/api/v1',
                DATABASE:'/api/v1',
            },
            // A Unique Api key for all your servers
            API_KEY:your_api_key
        }
        let client =SwygerDatabaseClient.init(config)
        
        
        //crud for database
        let database=client.database.ref('/my/path/reference') //like firebase database realtime
        database.create({object},callback)
        //OR listener
        //ref.onValue(callback)
        ...
        

 </script>
```
# Build Your Own JS Client Library 
Note 0: Clone the repository: 

``git clone https://github.com/coorise/swyger-js-client-database.git``


Note 1: For more details about how to use our API Consumer, visit the ``DOC`` : https://github.com/coorise/swyger-js-client-database/tree/master/doc/swyger/api.

Note 2: If you want to modify the entire api (eg:children route,...), you have to work with the main project (installing Node JS with the project dependencies ``npm i``) <br> then locate the ``./src/api/api-route.js``,<br>
once you are done just build it with ``npm run build``,<br> to get your new library in ``dist`` folder.

# Todo
- Removing/Reduce some unusual dependencies,functions, refactoring paths/files...
- Making good and easy documentation with tutorials (videos, webpage...)
- Code Cleaning/ Making a suitable project structure with modulable pattern

# Join US
If you have any suggestion, feature to add ...etc
- Discord(Support Team, FAQ, Chat): https://discord.gg/PPTZY5qFdC

# Contributors
- Agglomy Team :
    - Ivan Joel Sobgui
# Licence

MIT: You can use it for educational/personal/business purpose!
npm package: @swyger/client-storage
Description: Swyger Storage Client JS library is used for Swyger Server as consumer Rest API for CRUD operation on a file! Visit the master branch: https://github.com/coorise/swyger-js-client-storage.git
Author: Agglomy
Latest version: 0.1.12

# <span style="color:red">Swyger</span>  <span style="color:blue">Storage Client JS</span>

## Get Started
Swyger Client is used for Swyger Server as consumer Rest API.
Visit the master branch: https://github.com/coorise/swyger-js-client-storage.git


You can download the swyger database client js library on: https://www.unpkg.com/@swyger/client-storage

then save it somewhere in your directory like "/dist/swyger-client-storage.min.js"
```
<script type="module">
        import SwygerStorageClient from './dist/swyger-client-storage.min.js'
        //import SwygerStorageClient from '@swyger/client-storage' //with npm for node module

        
        let config={
          //Configure the offline DB
          OFFLINE_DB_NAME:{
              DATABASE:'swyger_database'
          },
  
          //Configure the server
          HOST_SERVER:{
              AUTH:'http://localhost:4100', //Required for protected route
              STORAGE:'http://localhost:4400',
          },
          API_VERSION:{
              AUTH:'/api/v1',
              STORAGE:'/api/v1',
          },
          // A Unique Api key for all your servers
          API_KEY:'your_api_key'
        }
        let client= SwygerStorageClient.init(config)
    
        //CRUD with File in realtime
        let storageConfig={ //Discord(unlimited storage available with discord bot)/(soon AWS, Google)....
            token:'discord-bot-token',
            channelId:'discord-channel-id'
        }
        let location='local' //discord/aws/google
        let storageRef=client?.storage(location,storageConfig).ref('/your/parent/ref') //like firebase storage
        //storageRef.upload({object},callback)
        //...

 </script>
```
# Build Your Own JS Client Library
Note 0: Clone the repository:

``git clone https://github.com/coorise/swyger-js-client-storage.git``


Note 1: For more details about how to use our API Consumer, visit the ``DOC`` : https://github.com/coorise/swyger-js-client-storage/tree/master/doc/swyger/api.

Note 2: If you want to modify the entire api (eg:children route,...), you have to work with the main project (installing Node JS with the project dependencies ``npm i``) <br> then locate the ``./src/api/api-route.js``,<br>
once you are done just build it with ``npm run build``,<br> to get your new library in ``dist`` folder.

# Todo
- Removing/Reduce some unusual dependencies,functions, refactoring paths/files...
- Making good and easy documentation with tutorials (videos, webpage...)
- Code Cleaning/ Making a suitable project structure with modulable pattern

# Join US
If you have any suggestion, feature to add ...etc
- Discord(Support Team, FAQ, Chat): https://discord.gg/PPTZY5qFdC

# Contributors
- Agglomy Team :
    - Ivan Joel Sobgui
# Licence

MIT: You can use it for educational/personal/business purpose!