Skip to content

Latest commit

 

History

History
155 lines (102 loc) · 6.64 KB

README.md

File metadata and controls

155 lines (102 loc) · 6.64 KB

A message from the creator
Thank you for visiting the @kaustubhdevstack/customgpt repository! If you find this repository helpful or useful, we encourage you to start it on GitHub. Starring a repository is a way to show your support for the project. It also helps to increase the visibility of the project and to let the community know that it is valuable. Thanks again for your support and we hope you find the repository useful!

Custom GPT - AI Assistant toolkit

Watch Video https://www.youtube.com/watch?v=AozAlTwaQdY&t=3s

What is Custom GPT?

Custom GPT is an AI-powered Customizable SaaS assistant Created using Open AI PHP API Library, CodeIgniter Admin LTE 3

This repository has all the necessary AI Toolkits that are required by Digital Marketers and Coders

List of tools that are included in the Custom GPT

  1. Creative Title Maker
  2. E-commerce Title Maker
  3. Topic Suggestions
  4. Youtube Suggestions
  5. Short Video Suggest
  6. Create Content Outline
  7. Description Maker
  8. Meta Description Maker
  9. Improve/Fix Content
  10. Email Writer
  11. Keyword Extractor
  12. Linkedin Profile Bio Maker
  13. Social Media Page Bio Maker
  14. Tweet Maker
  15. Instagram Captions Maker
  16. Create Viral Hashtags
  17. Review Generator
  18. Strategy Maker
  19. Meme Maker
  20. Google Ads
  21. Meta Ads
  22. Linkedin Ads
  23. Code Writer
  24. Regular Expressions Generator
  25. Code Reviewer
  26. Bug Fixer
  27. Improve Code
  28. Secure Code
  29. Convert Code
  30. Generate SQL/MySQL

How to set up this application on your Localhost environment?

Since this is a PHP-based SaaS Application you will need Xampp or WampServer on your machine to run it. The database file will be stored inside the Custom GPT Database Folder

Note: Make sure you first set up an updated version of CodeIgniter 4 Framework and then all the custom files which are explained below.

The Application structure

If you want to contribute to this library or create your own GPT-based application for your personal work let me guide you through the Application structure of the application so it will be much easier for you to edit the files.

1. Controllers

There are 4 main controllers which are responsible for controlling the entire functionality of this Custom GPT Applications, which are mentioned below:-

  • The Home Controller

All the functionality of Login, Forgot Password, and Registration is in this controller. The Registration is coded in such a way that only one person (Admin/Owner) can register. So basically the very first admin registration will be granted the role of Super admin, after that no registrations will be allowed. This is done for Security reasons.

So what if you want your team members to want to register their accounts?

Unfortunately for now this code has no functionality for that, If the super admin wants to add the team members to this application he/she must add team members using the functionality given in the Super admin dashboard.

The super admin dashboard has the functionality to add team members and assign individual user roles. By default the team members won't have access to Users in other words they won't be able to see registered users, or add or delete them.

  • The Dashboard Controller

All the functionality related to the user profile is inside this controller

For super admin:

  • Upload/Change Avatar
  • Change Email
  • Change Password
  • Update Name
  • Add new team members with roles
  • Block team member (Blocks user from accessing the account)
  • Archive team member (Deletes user account temporarily admin can later restore the account it also blocks the user from accessing the account)
  • Deactivate Team Member (Makes account status inactive which blocks the user from login)
  • Delete Team member permanently

For Regular users:

  • Upload/Change Avatar

  • Change Email

  • Change Password

  • Update Name

  • The Tools Controller

All the AI tool's functionalities and Prompts come under this controller.

  • The History Controller

The functionality to manage your AI Chat History like Chat GPT comes under this controller.

2. Models

There are only 2 Models that are responsible for managing the database queries controlling the functionalities given inside the above-mentioned 4 controllers:-

  • The Prompt Model

This model has all the queries to manage the AI Chat History. The queries are written using CodeIgniter 4's Query Builder System.

  • The Team Model

This Model has all the queries to manage the user dashboard-related queries. The queries are written using CodeIgniter 4's Query Builder System.

3. Helper Functions

In the helper folder of the application, you will find form_helper.php that file has a function to display validation errors clearly for each input field.

4. The views or the pages

The views folder in the applications has all the pages that make up the entire application. However, there are two custom folders that you need to take a look at:-

  • Templates Folder

This folder has header and footer files, so all the CSS and Javascript declarations are done inside these files.

  • Tools folder

This folder has all the files for the 30 AI Tools, If you want to edit the tool's structure or want to add new tools you will be working mostly with the "Tools folder". All the tools inside this folder are controlled by the Tools controller and the history of these tools is managed by the queries inside the Prompt Model.

The view files outside these two custom folders are all dashboard and user activity-related pages and their functionality is controlled by the Home Controller Dashboard Controller and the queries inside the Team Model manages all user activity.

Hence while working with the codebase you will spend most of the time inside the structure explained above. The rest all depends on your knowledge of the CodeIgniter 4 Framework.

The .ENV File

We have used Open AI for this to make sure the AI tools function properly, hence, these tools won't work without an Open AI API Key, so make sure you add the API Key before working with the application itself.

OPEN_AI_API_KEY = ''

Open AI PHP Library

This application uses Open AI PHP API Library Created by Orhanerday The files can be found at - vendor/orhanerday/open-ai

Support my work

If you think that this repository is useful then make sure to support me!

Click here to Support me on Buy Me a Coffee