Transform your stories into captivating comic art with dialogue effortlessly! Our project harnesses the power of GemeiAI and stable diffusion for processing and generating stunning images and dialogues. Utilizing feature flags, you can seamlessly toggle environment variables on and off as needed. The final masterpiece is delivered straight to your inbox as a beautifully crafted comic PDF. Enjoy the magic of storytelling in a whole new visual dimension! 📧💬🖼️
Visit https://palettegram.vercel.app to see the live demo!
Comic Art generation | I wanted to make something that is of fun and also gives me a lot of learning I used apis of openAi even utilized the langchain for some instances but wanted to take my level above, I wanted to play around with images that directed me of using any stable diffusion model (which I had no Idea how to use) I tried running model locally also used google collab however all these things made me more perplexed at the end I was in the need of some Stable diffusion API and key which dream-studio and Stability AI provided |
Workflow/pipeline of making | Probably I worked for this part mostly such a pipeline was the backbone of this project, I was too confused and wanted to leave project for once however, I slowly worked of making a streamlined flow of generating dialogues (gemini helped) and then getting images(Stability API helped) based on that dialogue, adding dialogues onto images(Canvas helped), all these steps I wanted to be reliable and smooth which could provide happy user experience |
Using promises | I have only heard and learned about promises and never utilized them in my any of the project until now, oh man they were life saver, they helped me in making and flow better and workable, I literally now want to use promises everywhere, I really got the understand of promises, async await, .then and catch |
failure of express func and integration of nodemailer | I am using express for my backend to serve front of various routes I never thought that res.sendfile, res.download would be so pathetic to use, they are made to sendfile from backend to frontend and guess what they were giving errors for the same, almost at this point also I am thinking to use them but they were so un-useful but then nodemailer came, I had this thought in back of my mind that if express functions does not work I will try sending pdf to user mail and using nodemailer this was so useful that I never imagined basically in few minutes I did this |
- Next.js - Next.js is an open-source web development framework.
- TypeScript - TypeScript is a free and open-source high-level programming language.
- Tailwind CSS - Tailwind CSS is a utility-first CSS framework for rapidly building modern websites without ever leaving your HTML.
- Daisy UI - It has inbuilt tailwind component which can be used
- Express - It is use to make server endpoint and serve front end as needed
- flagsmith - Manage feature flags across web, mobile, and server side applications
- Gemini AI - It has api which could be use ful to make prompt and get output
- Nodemailer - Used to send mail or attachment programmatically
To run this project, you will need to add the following environment variables to your .env file (use .env.example for reference)
Gemini AI: API_KEY
Dream Studio: API_KEY
Setup Flagsmit instance and get flagsmith API : API_Key
Nodemailer user : your mail
nodemailer pass : somepass
Clone the project
git clone https://github.com/Girishbari/comic-cult
Go to the project directory
cd comic-cult
Install dependencies
npm install
Start the Front-end
npm run dev
Start the back-end
npm run server