Skip to content

Commit

Permalink
Refactor 'changes' documentation into a separate file
Browse files Browse the repository at this point in the history
  • Loading branch information
NeonDaniel committed Dec 21, 2022
1 parent a5614e2 commit 38ab993
Show file tree
Hide file tree
Showing 2 changed files with 45 additions and 45 deletions.
46 changes: 1 addition & 45 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,7 @@
* [b. Running Neon](#b-running-neon)
* [c. Interacting with Neon](#c-interacting-with-neon)
* [d. Skill Development](#d-skill-development)
* [e. Persistent Data](#e-persistent-data)
5. [Making Changes](#making-code-changes)
* [a. System Overview](#a-system-overview)
* [b. Creating a Skill](#b-creating-a-skill)
* [e. Persistent Data](#e-persistent-data)

# Welcome to Neon AI
Neon AI is an open source voice assistant. Follow these instructions to start using Neon on your computer. If you are
Expand Down Expand Up @@ -117,47 +114,6 @@ STT/TTS model files, TTS audio files, and other downloaded files.
> In order to modify anything in the `xdg` directory, you may need to take ownership with:
> `sudo chown -R $USER:$USER xdg`

# Making Code Changes
After completing setup and testing, you are ready to begin making changes and creating skills. An example workflow for
making a change would be:

1. Create or modify a skill
1. Test changes in the Developer Environment (Look for errors in logs, unexpected behaviour, etc.)
1. Run `Test Neon` to check that all skills and TTS/STT behave as expected
1. Commit and Push changes to git (for collaborative development, it is often best to create a new branch for any changes)
1. Install your updated skill in a User Environment (check for any missing dependencies, invalid file paths, etc.)
1. Run complete tests using `Test Neon`
1. Check logs for any errors

## a. System Overview
There are two aspects of the Neon AI system: `core` and `skills`.

The `core` is composed of several modules, but generally includes:
- `speech` for handling user inputs and performing speech-to-text (STT)
- `skills` for processing user input to find intent and provide a response
- `audio` for speaking the response generated in skills
- `bus` for handling all communications between modules
- `enclosure` for handling any hardware interactions like speakers, microphone, lights, and buttons

Other modules may also be running for gui functionality, etc and may be added to provide new functionality.

`skills` provide the functionality of handling user inputs and generating responses or performing actions.


## b. Creating a Skill
Check out our three part youtube series on how to create a skill:
https://youtu.be/fxg25MaxIcE
https://youtu.be/DVSroqv6E6k
https://youtu.be/R_3Q-P3pk8o

## Additional Steps for Developers Using PyCharm
11. Next you should update your IDE in your Developer Environment
> *Note*: This is PyCharm if you followed our setup guide.
10. In PyCharm, select `VCS` from the menu bar, and then `Update Project`
> ![NewRelease](https://0000.us/klatchat/app/files/neon_images/neon_release_screens/NewRelease4.png)
11. You will be prompted to `Update Project`, you may leave the default settings and click `OK`
> ![NewRelease](https://0000.us/klatchat/app/files/neon_images/neon_release_screens/NewRelease5.png)

# Running Docker Modules

Skills Service
Expand Down
44 changes: 44 additions & 0 deletions documentation/legacy_changes.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
[Making Changes](#making-code-changes)
* [a. System Overview](#a-system-overview)
* [b. Creating a Skill](#b-creating-a-skill)

# Making Code Changes
After completing setup and testing, you are ready to begin making changes and creating skills. An example workflow for
making a change would be:

1. Create or modify a skill
1. Test changes in the Developer Environment (Look for errors in logs, unexpected behaviour, etc.)
1. Run `Test Neon` to check that all skills and TTS/STT behave as expected
1. Commit and Push changes to git (for collaborative development, it is often best to create a new branch for any changes)
1. Install your updated skill in a User Environment (check for any missing dependencies, invalid file paths, etc.)
1. Run complete tests using `Test Neon`
1. Check logs for any errors

## a. System Overview
There are two aspects of the Neon AI system: `core` and `skills`.

The `core` is composed of several modules, but generally includes:
- `speech` for handling user inputs and performing speech-to-text (STT)
- `skills` for processing user input to find intent and provide a response
- `audio` for speaking the response generated in skills
- `bus` for handling all communications between modules
- `enclosure` for handling any hardware interactions like speakers, microphone, lights, and buttons

Other modules may also be running for gui functionality, etc and may be added to provide new functionality.

`skills` provide the functionality of handling user inputs and generating responses or performing actions.


## b. Creating a Skill
Check out our three part youtube series on how to create a skill:
https://youtu.be/fxg25MaxIcE
https://youtu.be/DVSroqv6E6k
https://youtu.be/R_3Q-P3pk8o

## Additional Steps for Developers Using PyCharm
11. Next you should update your IDE in your Developer Environment
> *Note*: This is PyCharm if you followed our setup guide.
10. In PyCharm, select `VCS` from the menu bar, and then `Update Project`
> ![NewRelease](https://0000.us/klatchat/app/files/neon_images/neon_release_screens/NewRelease4.png)
11. You will be prompted to `Update Project`, you may leave the default settings and click `OK`
> ![NewRelease](https://0000.us/klatchat/app/files/neon_images/neon_release_screens/NewRelease5.png)

0 comments on commit 38ab993

Please sign in to comment.