Skip to content

Commit

Permalink
yay, another readme update
Browse files Browse the repository at this point in the history
  • Loading branch information
roderick-bishop11 committed Mar 17, 2024
1 parent d71aeaf commit 68b82f5
Show file tree
Hide file tree
Showing 5 changed files with 59 additions and 25 deletions.
34 changes: 30 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,21 +6,47 @@ To create an environment control plane entity powered by AI.

## Overview

This project has 3 parts
Inspired by virtual assistants and Super-Inteligences from movies and pop culture like J.A.R.V.I.S., Zarbon, Hal 9000 and Samantha, ELO (Enhanced Logic Operative), is a personal project meant to make an E.L.O. a reality for me. With the intent to build something that is deployable, personalizable, and provides intuitive & useful interfacing with LLM's.

For a cool definition, ELO is an environment control plane entity powered by AI.

This project has 3 parts:

*Please look into each individual folder for more in-depth documentation & overview.*

- [assistant](https://github.com/roderick-bishop11/ELO/tree/main/assistant): the AI powered assistant
- [ui](https://github.com/roderick-bishop11/ELO/tree/main/ui): the desktop UI for this application
- [v1 enclosure](https://github.com/roderick-bishop11/ELO/tree/main/enclosure): the project detailing the physical enclosure of the ELO protoype

As a younger SWE I want to work on a few projects at home using open source tooling & frameworks but with enterprise-level components so that I can work on skills like:

- Systems Arch & Design; designing systems that work, scale, and accomplish the requirements.
- TDD; Writing tests that verify function, safety, and integration
- DevOps; managing infrastructure & data across versions, applications, & environments.
- Python Programming; Giving this a try. Who knows, it might make me a pythonista!

## Scope

Say it with me... "THIS IS A 'GARAGE TIME' PROJECT"! No Billion-Dollar Unicorn startups here. Completion is not imperative, perfection is discouraged, and knowledge as well as experience are the only ends sought.

## to do

- [ ] CI/CD pipeline
- [ ] Readme's
- [ ] Feature set
- [ ] wireframes
- [ ] Add Dockerfile/docker-compose.yml for pipeline to build this bad boy
- [x] Readme's
- [ ] Design Docs for Project components
- [ ] Feature sets for all project components
- [x] module separation
- [ ] startup/config function for assistant
- [ ] What does the SDLC look like for this project
- [ ] delivery spec -> when it's delivered v1, how will it be delieverd?
- `python main.py`
- executable?

## contributors

### A few quotes if you made it this far

1. "Always Do Your Best" - (not solely attributed to) Don Miguel Ruiz
2. "Success is not guaranteed, but Excitement is!" - Elon Musk
3. "If you are not willing to learn, no one can help you. If you are determined to learn, no one can stop you. - Anon
24 changes: 5 additions & 19 deletions assistant/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,10 @@ No R.A.G. for this project, however MoE may be explored.

Tony Stark, J.A.R.V.I.S. and Robert Elo Bishop(my grandfather). ELO is meant to be more than an assistant. If you think of Operating Systems working on computers, think of ELO as an *operative*. Another way to define the concept is a Semi-Autonomous AI powered operative working on your behalf. Outfit with integrations, standard library of defined functions, local access, and intuitive interfacing.

## Desired state
## Desired state/Feature Set

"Assistant (this folder) is meant to be the POC for ELO. In this I'd like to accomplish or deliver on this basic feature set:

- A support window for ELO to show/render result sets from queries
- A control window where ELO will display chat, diagnostics, etc.
- Chat GPT integration or Local LLM generation; The option to choose/switch models.
- Internet Search (whitelisted sources)
- Wake and shut down word/phrases/intents
Expand All @@ -30,27 +28,15 @@ Tony Stark, J.A.R.V.I.S. and Robert Elo Bishop(my grandfather). ELO is meant to

- [Python](https://www.python.org/)- language
- [Poetry](https://python-poetry.org/)- build system
- Poetry w/Python makes me appreciate Gradle/Maven for JVM projects. The full suite of tasks/Lifecycle phase commands are cool accessible directly through the same CLI is wonderful.
- [pyttsx4](https://pypi.org/project/pyttsx4/) or [Eleven labs](https://elevenlabs.io/)- Text to speech
- [OpenAI API](https://platform.openai.com/docs/overview)- interact with models
- [Exa](https://github.com/exa-labs/exa-py)- Search for AI
- [Pre-Commmit](https://pre-commit.com/)- for pre-commit tasks

## to do

- [ ] CI/CD pipeline
- [ ] Readme's
- Feature set
- wireframes
- module separation
- startup/config function
- What does the SDLC look like
- delivery spec -> when it's delivered v1, how will it be delieverd?
- `python main.py`
- executable?

# To do

- [ ] -
## Changelog

- 3.8.24: Got instruction on project organization/implementation. Separate part into epics/bodies of work. Could use JIRA or some other tool to organize and stay on track. Simplify README & develop a more clear project.

## contributors

5 changes: 5 additions & 0 deletions embedded/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Enclosure

This folder houses any code & docs relating to embedding ELO into a physical enclosure.

smart mirror maybe? A robot? Who knows... As a SWE by training, I'm taking all thoughts on the form this part of the project can take.
1 change: 0 additions & 1 deletion enclosure
Submodule enclosure deleted from 188e01
20 changes: 19 additions & 1 deletion ui/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,28 @@

This is the readme for the ui folder of this project.

## Desire State- Feature set

In this project I'd like to build:

- A support window for ELO to show/render result sets from queries
- A control window where ELO will display chat, diagnostics, etc.

## Possible tech stack/modules/tools to use

- [Slint](https://slint.dev/) or tKinter or [PyQt5](https://pypi.org/project/PyQt5/) -Desktop UI for python
- [Slint](https://slint.dev/) or [tKinter]() or [PyQt5](https://pypi.org/project/PyQt5/) -Desktop UI for python if running as python file deployed on desktop.

- JavaScript using [React](https://react.dev/), [Express](https://expressjs.com/) or [Vue](https://nextjs.org/)- UI if running as a web application. <- might be most versatile to accommodate more backend([assistant](https://github.com/roderick-bishop11/ELO/tree/main/assistant)) feature sets.

- [Husky](https://typicode.github.io/husky/) basic jobs to run pre-commit for automated checks & verification.

## To do

- [ ] wireframes
- Jobs for CI
- lint
- run tests
- Dockerfile/compose for UI deployment.
- Ephemeral? <- Would be pretty cool.

## Changelog

0 comments on commit 68b82f5

Please sign in to comment.