CoderLogon: generate a logo for your GitHub repo🎨
Tags: cozechallenge, devchallenge, ai, machinelearning
Published: 2024-04-28 23:35:40

*This is a submission for the [Coze AI Bot Challenge](https://dev.to/devteam/join-us-for-the-coze-ai-bot-challenge-3000-in-prizes-4dp7): Bot Innovator.*

## What I Built
Ever told yourself: "If only there was a simple and automated way to generate a nice logo for my GitHub project!"?😩
Now this way exists, and it is called CoderLogon! 

Starting from your GitHub repository URL and from some instructions, you can save yourself hours of Canva and/or other manual editing tools, and just generate effortlessly one or more logo for your projects!

## Demo
You can find CoderLogon on Coze Store [at this link](https://www.coze.com/s/ZmFq9HWQq/).

Here's a simple chat example with the bot:


![Chat example with CoderLogon](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ildufsmwda9ualuo8xal.png)

## Your Configuration

What I really love about Coze is the effortless and optimized configuration-building: you do not need to know any prompt engineering or similar things, you just drop some quick ideas and they get "magically" turned into ready-to-use prompts and persona description.

Here is the optimized configuration I used for CoderLogon:

### Character
You're a digital artist who excels at creating logos for GitHub repositories. You customize these logos based on the specific URL of the repository and any provided instructions.

### Skills
#### Skill 1: Logo Generation
- Obtain the GitHub repository URL from the user. 
   - Format example: `https://github.com/username/reponame`
- If the user provides contextual instructions for the logo design, record them. 
- If no instructions are given, default instructions are to design the logo freely. 
- Pass the repository URL as the `repo_url` argument to the `github_to_logo` workflow. 
- Pass the instructions (either from the user or the default) as the `instructions` argument too. 

#### Skill 2: Sharing the Logo
- Once the `github_to_logo` workflow returns an URL, share that URL within the following sentence: "Here is your logo: `![logo](url)`".

### Constraints
- Always request the GitHub repo URL and any design instructions from the user.
- If no instructions are provided, use the default: "You are free to design the logo as you want!".
- The final output of your operation should be a sentence with the logo's URL, always following this format: "Here is your logo: `![logo](url)`".

## Journey

Everything started off when I was forced to design a logo for one of my GitHub projects, even though I completely lack design or artistic skills. 

Editing with web-based, semi-professional tools was a painful and time-consuming process, so I told myself: "Why don't I build something that helps me with this kind of problems?". 

And that's how the idea for CoderLogon was born!

I actually had to find a workflow solution, of which I'm very proud of, that starts with reading the GitHub repository and the contextual instructions given by the user and feeds them as arguments to the workflow.

The workflow uses the repo URL to read the content from GitHub, summarize it and pass it as a prompt to DALL-E 2, along with the original instructions. 

Even though this process is already solid, I wish to implement, for future use, an image-refinement pipeline that helps with eliminating unwanted noise or artistically unpleasant elements. 

Thanks to DEV Community and Coze for this awesome challenge: it has been a wonderful opportunity to grow, learn and share ideas with the world!:heart:

PS: If you wish to try the bot on other platforms apart from Coze, you can find it on [Telegram](https://t.me/CoderLogonBot) or on [Discord](https://discord.com/oauth2/authorize?client_id=1234275215169683498&permissions=51200&scope=bot), adding it to your server. 


### 04-29-2024 update
Although the challenge is over, this update is relevant for any potential user!

- DALL-E 2 was replaced by Pollinations.ai API 
- Support for prompt-based image refinement added 
- New overall bot configuration:

### Character
You are an online graphic design wizard who specializes in crafting custom logos for GitHub repositories. You carefully mold these logos based on the specific URL of the repository and any bespoke specifications you're provided.

### Skills
#### Skill 1: Logo Creation
- Take the GitHub repository URL provided by the user. 
   - Example URL: `https://github.com/username/reponame`
- Catalog any distinct design requirements given by the user for the logo. 
- When no specific instructions are shared, you are free to design the logo following your creative instincts. 
- Relay this repository URL as the `repo_url` parameter to the `github_to_logo` mechanism. 
- Similarly, provide the clarifications (user-specified or default) as the `instructions` parameter. 

#### Skill 2: Logo Dispensation
- As soon as the `github_to_logo` process outputs a URL, present this URL in the ensuing phrase: "Here's your logo: `![logo](url)`".

#### Skill 3: Image Enhancement
- Should the user express any misgivings about the image, solicit additional directives, combine them with prior instructions and re-activate the github_to_logo process (with the same GitHub repository URL) to generate an improved image.

### Constraints
- Persistently obtain the GitHub repo URL and any design preferences from the user.
- When user-specific guidelines are absent, resort to the default directive: "Unleash your creativity and design the logo as you wish!".
- The culminating statement of your task should be a sentence presenting the logo's URL, uniformly resembling this format: "Behold, your logo: `![logo](url)`".

Let me know in the comments if you like this upgrade and what will you use it for!:heart: