---
description: Code-Wizard features
---

# Code-Wizard Features

## Design Library

Thoroughly verified and validated Industry specific designs with tailored requirement designs will be released incremental versions in each release which are ready to use and build software applications.&#x20;

<figure><img src="https://2133491438-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSDKNr1jp5RbNsbYPXuKP%2Fuploads%2FVsFsbrr55IGWAYqt9XSE%2Fimage.png?alt=media&#x26;token=6299303d-915e-4072-bf08-4faf22780aab" alt=""><figcaption><p>Code-Wizard Design Library</p></figcaption></figure>

## Your Design Library

Code-Wizard Supports developing applications for your own designs by uploading them to "Your Design Library" in your account. Design files in Star UML are supported as of Launch. Please go to Design Library page for more details.

<figure><img src="https://2133491438-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSDKNr1jp5RbNsbYPXuKP%2Fuploads%2F6ps0kjTn7b2bHmjFXbPr%2Fimage.png?alt=media&#x26;token=d39f4d87-97c0-4392-a2b4-0fe019f0a567" alt=""><figcaption><p>Code-Wizard Your Design Library</p></figcaption></figure>

## User Requirements driven Code Generation

You speak your code, Code-Wizard will write code for your Applications, deployment and infrastructure.

You can give your requirements in an audio file, text file, a word document, a ppt, email to support email or even can ping to our chat bot as explained below..

## Excel Editor to Code Generation

Are you a business person? not sure how to put your requirements into design file? Don't worry you can explore our Design Library and choose your industry specific design file and refine to your exact requirements! Or go purchase our Pre-built Apps which are readily available for use.

Still if you want to specify requirements and generate code on your own? then this excel requirement library allows you to give your requirements in excel, upload them to code-wizard and generate code in few single clicks. Go to excel editor to code generation page for more details.bb n&#x20;

## Text file to Code Generation

Input your requirements text .txt file to Code-Wizard and generate your application code.

## Audio file to Code Generation

Input your requirements .mp3 file to Code-Wizard and generate your application code.

## Ping Chat bot to Generate Code

Ping our AI Chat bot your requirements and generate code for your application

## Screen Template Library&#x20;

A collection of the best themed react templates developed in accordance with industry best practices with bunch of  generic screens.

<figure><img src="https://2133491438-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSDKNr1jp5RbNsbYPXuKP%2Fuploads%2FYtJDZYZBUALpK4UNWuMX%2Fimage.png?alt=media&#x26;token=31a339e3-2626-492e-b48f-6390620a78ce" alt=""><figcaption><p>Code-Wizard Template-Screens</p></figcaption></figure>

## Code-Wizard suggests technology for your requirements

Code-Wizard collects and analyzes the collected requirements and suggests the technology

## Our Technology Stack

A brand array of technologies allows you to choose technology as per your project needs and modernize whenever required without any manual intervention

## Streamlined Deployments

Streamlining deployments in a pro-code platform involves creating a seamless, automated, and efficient process to move code from development to production. This can be achieved by integrating various Dev-Ops practices and tools. Go to Streamlined deployments page for in detail explanation

## Manage your Code-base

Experience our robust version controlling using git. It helps you iterate quickly while retaining older versions

## Full Stack Frameworks

Offers a unique combination of technologies tailored to specific types of applications and developer preferences visit this page for in detailed explanation

## Capabilities&#x20;

## Docker

Allows you to develop,ship, and run your applications in containers.

Containers are lightweight, portable, and efficient, allowing developers to package an application with all of its dependencies and run it consistently across different environments. Here’s a brief overview of Docker and its core components:\


**Docker Engine:** The core of the Docker platform, Docker Engine is a client-server application with three major components:\
**Server (Docker Daemon):** Responsible for creating, managing, and monitoring containers.\
REST API: Provides a way to interact with the daemon and instruct it what to do.\
**Command Line Interface (CLI):** A command-line tool that uses the Docker REST API to interact with the Docker daemon.\
**Docker Images:** Immutable files that contain the source code, libraries, dependencies, tools, and other files needed to run applications. Images are the basis for creating containers.\
**Docker Containers:** Lightweight and portable encapsulations of an environment in which applications run. Containers are created from Docker images and run on the Docker Engine.\
**Docker Hub:** A cloud-based repository where Docker users can create, test, store, and distribute Docker containers and images.

## Docker Compose

You can define and run multi-container Docker applications. With Docker Compose, you can use a YAML file to configure your application's services, networks, and volumes. Then, with a single command, you can create and start all the services from your configuration.

## Auth0

Simplifies the process of adding authentication to your applications and APIs, enabling you to integrate social logins, multi-factor authentication, single sign-on.

Auth0 is an authentication and authorization platform designed to simplify the process of adding secure authentication to your applications. Here's a step-by-step guide on how to integrate Auth0 into your application:

#### 1. Create an Auth0 Account

* **Sign Up**: Go to the [Auth0 website](https://auth0.com/) and sign up for a free account.
* **Log In**: Log in to your Auth0 dashboard.

#### 2. Create an Application in Auth0

* **Applications**: In the Auth0 dashboard, navigate to the "Applications" section.
* **Create Application**: Click on "Create Application."
* **Name and Type**: Enter a name for your application and choose its type (e.g., Single Page Application, Regular Web Application, Native, etc.).
* **Settings**: After creating the application, you'll be provided with a Domain, Client ID, and Client Secret. These credentials are essential for configuring your application.

#### 3. Configure Your Application

**Single Page Application (e.g., React, Angular, Vue.js)**

* **Install SDK**: Depending on your framework, install the Auth0 SDK.&#x20;
* For example, for React: npm install @auth0/auth0-react
* **Initialize Auth0**: Set up Auth0 in your application. Here’s an example for a React application:

```javascript
// src/index.js
import React from 'react';
import ReactDOM from 'react-dom';
import { Auth0Provider } from '@auth0/auth0-react';
import App from './App';

const domain = process.env.REACT_APP_AUTH0_DOMAIN;
const clientId = process.env.REACT_APP_AUTH0_CLIENT_ID;

ReactDOM.render(
  <Auth0Provider
    domain={domain}
    clientId={clientId}
    redirectUri={window.location.origin}
  >
    <App />
  </Auth0Provider>,
  document.getElementById('root')
);
```

**Protect Routes**: Use Auth0 hooks to protect routes and manage authentication state.

**Regular Web Application (e.g., Node.js, Express)**

* **Install SDK**: Install the Auth0 Node.js SDK.
* **Configure Middleware**: Set up the middleware in your application.

4. **Configure Authentication Rules (Optional)**

**Rules**: In the Auth0 dashboard, you can set up rules to customize and extend Auth0's capabilities. Rules are JavaScript functions that execute when a user authenticates.

#### 5. Add Callback and Logout URLs

* **Settings**: In your Auth0 application settings, add the callback URL (`http://localhost:3000/callback`) and the logout URL (`http://localhost:3000/logout`).

#### 6. Testing Your Application

* **Run Your Application**: Start your application and navigate to the login route.
* **Authenticate**: Log in using the Auth0 login page.
* **Verify**: Ensure that your application correctly handles authentication state and user data.



## Hazlecast

You can add Hazle cast to your application from capabilities section and Hazel cast provides a powerful and scalable caching solution for modern applications. By leveraging its distributed caching capabilities, you can improve performance, scalability, and reliability of your applications.

## Redis

You can add Reddis to your application from capabilities section and  can be used for caching, session management, real-time analytics, messaging, and more. Its speed, scalability, and rich feature set make it a popular choice for a wide range of use cases.

## Spring security&#x20;



Spring Security is a powerful and customizable authentication and access control mechanism that Code-Wizard provides as a Capability for applications created by Spring OData as Spring Security is used to secure Spring-based applications through robust authentication and authorization.

<figure><img src="https://2133491438-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSDKNr1jp5RbNsbYPXuKP%2Fuploads%2FGTShpJQX1oJanDe8XGpp%2Fimage.png?alt=media&#x26;token=b6b7be86-0df9-435a-b3ac-2c3f75537abe" alt=""><figcaption><p>Spring Security</p></figcaption></figure>

**Admin API setup**

**Add Host Info**&#x20;

To add host you need to call POST Add Host Info API with ip, port, scheme, serviceName prefix of generated app, and name for generated application.

**GET List All Host**&#x20;

To review all list of hosts

**Del Host Info By Id**&#x20;

To delete host you can call this API

**POST Signup**

Register API interacts with Spring Security

**POST Login**

To verify login you call this API by passing userName and password, once you post the response your response contains a bearer token, copy it and navigate to Authorization tab select type as "Bearer Token" and pass the copied token.

**POST Add Role**&#x20;

To add roles you need to call this

**PUT Add User Roles**&#x20;

To add user role you need to call this API and specify user id and role id

## REACT

React V16 with below features

UI Components

Layouts

Themes

Styling

## UI Configurator

The UI Configurator allows to edit the attributes of the entities in your design as per your screen requirement

## Spring OData&#x20;

Spring OData supported Features and Operations

* Keys – single, composite primary key with basic CRUD
* Inheritance of Entity type and Complex type
* Search – basic
* Sort by property, group by, validation, pagination.
* Entity type with basic CRUD
* Collection type with basic CRUD
* Enum type with basic CRUD
* Complex type with basic Create & embed CRUD, read partial object, expand dependents
* Associations – one-to-one, one-to-many, many-to-one, many-to-many, aggregate/composite(one-to-many), self-associations(self-navigation)
* Navigation property – single, collection, complex with basic, deep & embed CRUD, file type (basic CRUD)

## Back end Project - Spring OData

|                                |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Backend Project - Spring OData | Features                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| <p>Spring-OData</p><p><br></p> | <p>REST APIs with Built-in support for:</p><p><br></p><p>API Operations</p><ol><li>CRUD, </li><li>sorting, </li><li>Pagination </li><li>Searching</li><li>Create nested objects</li><li>Read Nested objects.</li><li>Filter nested objects.</li><li>Support to select required fields in response</li><li>Postman Collection</li><li>Sample Data</li><li>Integration Test Cases</li></ol><p>Data Types:</p><ol><li>Basic Data types</li><li>File type</li><li>Enum</li><li>Complex Data Type</li></ol><p><br></p><p>Database support:</p><ol><li>Postgres</li></ol><p><br></p><p>Automatic DB schema creation</p><p><br></p><p>Liquibase file</p><p><br></p><p>Push to your GitHub account</p><p><br></p><p>Deploy &#x26; Run on Code-Wizard Sandbox - Usage based</p><p>(1 hour at first time deployment, half an hour per day, in subsequent deployments)</p> |
| Frontend Project               |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| React                          | <p>UI Templates:</p><ol><li>Basic Form Page</li><li>Page with Table linked to Form Page</li><li>Page with Cards/Tiles</li><li>Page with List</li><li>Advanced Form page</li><li>with support for table</li><li>Page with independent Table</li></ol><p><br><br></p><p>Total Number of screens: 10</p><p><br></p><p>UI Configurator support:</p><ol><li>Configure Template screens</li><li>Duplicate Template Screens</li><li>Configure Menu Routing</li><li>Header configuration with project name</li><li>Upload company logo for the project</li></ol><p>Push to your GitHub account</p><p><br></p><p>Deploy &#x26; Run on Code-Wizard Sandbox - Usage based</p><p>(1 hour at first time deployment, half an hour per day, in subsequent deployments)</p>                                                                                                     |
| <p><br></p>                    | <p><br></p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| Capabilities                   |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| Capabilities                   | <p>Dockerfile</p><p><br></p><p>Docker-compose </p><p><br></p><p>Token based authentication and authorisation</p>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |



##
