Giter VIP home page Giter VIP logo

jemma's Introduction

jemma

hey, I am Jemma. I convert your thoughts to code

๐Ÿงฌ what I do

I take an idea in a form of:

  • a few words, such as "Bill Pay Service", "2048" or "Kanban Board"
  • OR a text file with requirements

and I create a web based prototype ๐Ÿš€

in fact I just created all three ๐Ÿ‘† (so you can quickly see what I mean):

image

after the prototype is built, I take feedback and refactor it.

๐ŸŽจ am sketchin'

I also dabble in converting sketches to web app mockups:

$ jemma --prompt "Learning Portal" --sketch ~/tmp/sketch.png --build-prototype --claude
image

this does require one or two hints of feedback, but I'm getting better

๐Ÿ•น๏ธ can I play?

of course!

install me

$ pip install jemma

add a ".env" file from where I am going to be called from with API keys of your choice:

export ANTHROPIC_API_KEY=sk-ant-api03...
export OPENAI_API_KEY=sk-puk...
export REPLICATE_API_TOKEN=r8_ai...

ready to rock! ๐Ÿค˜

convert ideas to code

$ jemma --prompt "Bill Pay Service" --build-prototype --claude

I will assemble a team who will build a prototype, open a browser with it, and wait for your feedback:

Claude ๐Ÿง  claude-3-haiku-20240307 โœ…

> Project Manager:
Dear Business Owner, in this meeting we'll work on creating requirements based on the ๐Ÿ’ก idea

> Business Owner: ๐Ÿ“š creating detailed requirements ...๐Ÿ–‹๏ธ

> Project Manager:
Dear Engineer, in this meeting let's put our heads together to build a prototype based on the requirements.

> Engineer: ๐Ÿ’ซ creating a prototype based on the requirements...
> Engineer: crafting css ๐ŸŽจ (a.k.a. "visual beauty")
> Engineer: cooking javascript ๐ŸŽฎ (a.k.a. "master of interactions")
> Engineer: creating html ๐Ÿ•ธ๏ธ (a.k.a. "the skeleton of the web")

prototype files created successfully:
- prototype/index.html
- prototype/app.js
- prototype/app.css
opened prototype in the web browser

tell me how to make it better >

๐Ÿ› ๏ธ how I do it

I rely on my team of project managers, business owners and engineers
yes... "AI Agents"

When I get an idea a Project Manager meets with a Business Owner to take it in and create a comprehensive set of requirements
then the Project Manager meets with an Engineer to build the idea based on these new requirements.

models

I best work with Claude models, that is why my examples all end in "--claude":

$ jemma --prompt "Trivia Game" --build-prototype --claude

by default though I will call Ollama (llama3 model):

$ jemma --prompt "Trivia Game" --build-prototype
Ollama ๐Ÿง  llama3:8b-instruct-fp16 โœ…

here are the default models I would use:

model param default model
--claude claude-3-haiku-20240307
--openai gpt-3.5-turbo
--ollama llama3:8b-instruct-fp16
--replicate meta/meta-llama-3-70b-instruct
--copilot gpt-3.5-turbo

but you can override all of these with your (local, or not) models:

$ jemma --prompt "Trivia Game" --build-prototype --claude claude-3-opus-20240229
$ jemma --prompt "Trivia Game" --build-prototype --ollama dolphin-mistral:7b-v2.6-dpo-laser-fp16
$ jemma --prompt "Trivia Game" --build-prototype --openai gpt-4-turbo-preview
$ jemma --prompt "Trivia Game" --build-prototype --replicate meta/llama-2-70b-chat
$ jemma --prompt "Trivia Game" --build-prototype --copilot gpt-4
$ ...

but, at least for now, the best results are produced with Claude based models

problems

I am still learning, so some prototypes that I build might result in errors
this would especially be likely with non Claude based models

but, we are all learning, and I love feedback:

tell me how to make it better > I see an error "app.js:138: uncaught TypeError: chordProgressionData.find(...) is undefined"

> Project Manager:
Dear Engineer, we have met with the user and received a valuable feedback. sudo make it better! ๐Ÿ› ๏ธ

> Engineer: ๐Ÿ’ซ refactoring prototype based on the feedback...

> Engineer: โ™ป๏ธ  crafting css ๐ŸŽจ (a.k.a. "visual beauty")

> Engineer: โ™ป๏ธ  cooking javascript ๐ŸŽฎ (a.k.a. "master of interactions")

> Engineer: โ™ป๏ธ  creating html ๐Ÿ•ธ๏ธ (a.k.a. "the skeleton of the web")
prototype files created successfully:
- prototype/index.html
- prototype/app.js
- prototype/app.css
opened prototype in the web browser

tell me how to make it better >

you can check for / find errors in your browser console

iff you know "how to HTML", you can help fix the code as well
it is often something simple: adding a CSS class, updating the "width", etc.

development

in order to run from source
clone jemma:

$ git clone [email protected]:tolitius/jemma.git

and

$ cd jemma
$ python huddle.py --prompt "Code Editor" --build-prototype --claude
Claude ๐Ÿง  claude-3-haiku-20240307 โœ…
...

license

Copyright ยฉ 2024 tolitius

Distributed under the Eclipse Public License either version 1.0 or (at your option) any later version.

jemma's People

Contributors

tolitius avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.