ASSISTENTE 0.1.0
See the version list below for details.
dotnet add package ASSISTENTE --version 0.1.0
NuGet\Install-Package ASSISTENTE -Version 0.1.0
<PackageReference Include="ASSISTENTE" Version="0.1.0" />
paket add ASSISTENTE --version 0.1.0
#r "nuget: ASSISTENTE, 0.1.0"
// Install ASSISTENTE as a Cake Addin #addin nuget:?package=ASSISTENTE&version=0.1.0 // Install ASSISTENTE as a Cake Tool #tool nuget:?package=ASSISTENTE&version=0.1.0
π€ ASSISTENTE.DEV - Your Coding Companion
Struggling to keep track of all your dev notes, bookmarks, and useful code snippets scattered across different platforms? Frustrated by the time wasted searching for that crucial information or starting from scratch? π€
Introducing assistente.dev
β your ultimate assistant for developers. It's your personal memory bank, effortlessly storing and retrieving everything you need, precisely when you need it. Whether it's code snippets, course notes, or example solutions, Assistende has you covered. π¦Ύ
Simply paste your query and watch as assistente.dev
draws from your notes, bookmarks, and code bases to provide the perfect solution. With assistente.dev
, say goodbye to wasted time and hello to seamless development. Get started and unlock your productivity potential! π
Roadmap
Phases:
- β
I phase (POC) - console app for test purpose
Playground
: QUICK LINK - π³ II phase - UI in Blazor + publish application on VPS
- π³ III phase - Improving prompts and logic to generate the most accurate answers
Loading user data
TODO:
- β
Loading and parsing
*.md
files - knowledge base - β
Loading and parsing
*.cs
files - code base - β
Find open source solution for creating embeddins
- β Done partially (currently in use OpenAI embedding service)
- π³
NICE TO HAVE
Integrate LLamaSharp for embeding creation
- β Integration with Qdrant - saving embeddings
Generating results
- β
Generating prompt based on the 'knowledge base' & 'code base'
- β Generate prompt based on 'knowledge base'
- β Generate prompt based on 'code base'
- β Integration with the OpenAI API
- β Add usage of MediatR and prepare Command & Queries libraries
- β Generating answers or ready code (in console app) - depending on what the user needs
- β
Add UI in Blazor
- β
Upload sample notes and code from
DEV_ASSISTENTE
repository for demo purpose - β Generating answers asynchronously (RabbitMQ + SignalR)
- β Display resources list
- β Display asked questions with answers list
- β
Upload sample notes and code from
- π³ Configure VPS to host all environment
Nice to have
- π³ Add library for translation (prompts and knowledge base)
Common tasks
- β
Prepare
configuration
section inReadme
- β
Prepare
quick start
section inReadme
- π³ Prepare video explainer with simply demo
Quick start
Prerequisites: .NET 8
+ Docker
Run services on your local machine:
REQUIRED
Messages broker:RabbitMq
- EXAMPLE CONFIGURATIONREQUIRED
Vector database:Qdrant
- EXAMPLE CONFIGURATIONOPTIONAL
Logs and traces:Seq
- EXAMPLE CONFIGURATION
Setup MSSQL database - can be hosted in docker - EXAMPLE CONFIGURATION
Fill out the settings file (
appsettings.json
) from CONFIGURATION sectionRun
upgrade-database.ps1
script to create/migrate database - QUICK LINKRun
learn.ps1
script to initialize and learn notes & codes from locations provided inappsettings.json
(node:KnowledgePaths
).Voila! Currently you can start application:
- From Rider/Visual Studio, required applications to run:
ASSISTENTE.Worker.Sync
ASSISTENTE.API
ASSISTENTE.UI
- In docker - run
start-local-enviroment.ps1
script
Configuration
- Fill out the settings file
appsettings.json
- QUICK LINK
{
"ConnectionStrings": {
"AssistenteDatabase": "<DATABASE_CONNECTION_STRING>"
},
"OpenAI": {
"ApiKey": "<API_KEY>"
},
"Qdrant": {
"Host": "localhost"
},
"Rabbit": {
"Name": "ASSISTENTE.Worker.Sync",
"Url": "amqp://guest:guest@localhost:5672"
},
"InternalApi": {
"Url": "http://localhost:5249"
},
"KnowledgePaths": {
"MarkdownNotes": "<ROOT_PATH_TO_MARKDOWN_NOTES>",
"Repositories": "<ROOT_PATH_TO_REPOSITORY>"
},
"Serilog": {
"MinimumLevel": {
"Default": "Information",
"Override": {
"Microsoft": "Warning",
"System": "Warning"
}
},
"Enrich": [ "FromLogContext", "WithMachineName", "WithProcessId", "WithThreadId" ],
"WriteTo": [
{ "Name": "Console" },
{
"Name": "Seq",
"Args": {
"serverUrl": "http://localhost:5341"
}
}
]
}
}
- Fill out the
.env
file - QUICK LINK
COMPOSE_PROJECT_NAME=assistente
ConnectionStrings_AssistenteDatabase=<DATABASE_CONNECTION_STRING>
OpenAI_ApiKey=<API_KEY>
Qdrant_Host='localhost'
Rabbit_Name='ASSISTENTE.Worker.Sync'
Rabbit_Url='amqp://guest:guest@rabbitmq:5672'
InternalApi_Url='http://assistente-api:8080'
KnowledgePaths_MarkdownNotes=<ROOT_PATH_TO_MARKDOWN_NOTES>
KnowledgePaths_Repositories=<ROOT_PATH_TO_REPOSITORY>
---
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net8.0
- ASSISTENTE.Application (>= 0.1.0)
- ASSISTENTE.Client.Internal (>= 0.1.0)
- ASSISTENTE.EventHandlers (>= 0.1.0)
- ASSISTENTE.Infrastructure (>= 0.1.0)
- ASSISTENTE.Persistence (>= 0.1.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
0.6.0 | 106 | 6/8/2024 |
0.5.5 | 93 | 6/1/2024 |
0.5.4 | 93 | 5/25/2024 |
0.5.3 | 95 | 5/25/2024 |
0.5.2 | 97 | 5/23/2024 |
0.5.1 | 97 | 5/23/2024 |
0.5.0 | 92 | 5/21/2024 |
0.4.4 | 90 | 5/16/2024 |
0.4.3 | 96 | 5/15/2024 |
0.4.2 | 90 | 5/15/2024 |
0.4.1 | 87 | 5/15/2024 |
0.4.0 | 133 | 5/15/2024 |
0.3.4 | 99 | 5/14/2024 |
0.3.3 | 96 | 5/14/2024 |
0.3.2 | 83 | 5/14/2024 |
0.3.1 | 92 | 5/14/2024 |
0.3.0 | 80 | 5/13/2024 |
0.2.0 | 86 | 5/9/2024 |
0.1.2 | 111 | 5/6/2024 |
0.1.1 | 108 | 5/6/2024 |
0.1.0 | 104 | 5/6/2024 |
0.0.2 | 137 | 3/1/2024 |
0.0.1 | 115 | 3/1/2024 |
See https://github.com/jarmatys/DEV_ASSISTENTE/blob/master/CHANGELOG.md for release notes.