mirror of
https://github.com/doolijb/serene-pub.git
synced 2026-04-26 10:31:13 +00:00
0.4.1
This commit is contained in:
parent
6882a96e57
commit
c2fde7b4a1
2 changed files with 27 additions and 25 deletions
17
README.md
17
README.md
|
|
@ -44,7 +44,10 @@ Serene Pub is a brand new, open source chat application for immersive AI rolepla
|
|||
- **Real-Time Sync:** All chats, settings, and characters update live across devices via WebSockets.
|
||||
- **Portable & Private:** Runs locally, no accounts, no cloud lock-in. Your data stays with you.
|
||||
- **AI Freedom:** Connect to OpenAI, Ollama, LM Studio, Llama.cpp, and more. Mix and match models, run local or cloud.
|
||||
- **Low fuss local AI**: Use Ollama manager to search, download and activate models all within the comfort of Serene Pub.
|
||||
- **Roleplay-First:** Built for character-driven, story-rich experiences. Import Silly Tavern cards, manage personas, and more.
|
||||
- **Coherence:** Some user's report characters adhere better to their profiles than other apps.
|
||||
- **Group Chats:** Chat with as many characters at once as you wish.
|
||||
- **Mobile Ready:** Responsive design for desktop and mobile. Pick up your story anywhere.
|
||||
- **Open Source:** AGPL-3.0. Hack it, extend it, make it yours!
|
||||
|
||||
|
|
@ -159,27 +162,27 @@ Linux, MacOS and Windows are supported!
|
|||
- **[Installation & Setup](https://github.com/doolijb/serene-pub/wiki/Installation-&-Setup)** - Detailed setup instructions for all platforms
|
||||
- **[Connections](https://github.com/doolijb/serene-pub/wiki/Connections)** - How to connect to AI models (OpenAI, Ollama, LM Studio, etc.)
|
||||
- **[Characters & Personas](https://github.com/doolijb/serene-pub/wiki/Characters-&-Personas)** - Creating and managing your roleplay characters
|
||||
- **[Lorebooks](https://github.com/doolijb/serene-pub/wiki/Lorebooks)** - Advanced worldbuilding and context management
|
||||
- **[Lorebooks](https://github.com/doolijb/serene-pub/wiki/Lorebooks)** - Advanced world-building and context management
|
||||
- **[Context Templates](https://github.com/doolijb/serene-pub/wiki/Context-Templates)** - Customizing AI prompts with Handlebars
|
||||
- **[Troubleshooting](https://github.com/doolijb/serene-pub/wiki/Troubleshooting)** - Common issues and solutions
|
||||
|
||||
### 🗺️ Planned Features
|
||||
|
||||
- 🧠 Vectorization
|
||||
- 🔌 More API connection types
|
||||
- 🧠 Vectorization / embeddings
|
||||
- 🤖 Assistant Chat: Ask AI questions about Serene Pub and get suggestions to improve your characters, personas, and lore
|
||||
- 🤖 Assistant Chat: In-chat OOC discussions
|
||||
- 🖼️ Image generation
|
||||
- 📝 Chat summarizing
|
||||
- 👥 Multi-user logins & multi-user group chats
|
||||
- 👥 Admin user account management
|
||||
|
||||
### 💡 Considered Features
|
||||
|
||||
- 👥 Multi-user logins & multi-user group chats
|
||||
- 📝 Chat summarizing
|
||||
- 🖼️ User/chat backgrounds
|
||||
- 📖 Story narration/system instructions
|
||||
- 📅 Lorebooks+ features: custom calendars, "eras" historical categories, and more
|
||||
- 🕹️ Text adventure & narrator modes
|
||||
|
||||
|
||||
---
|
||||
|
||||
## ❤️ Contributing
|
||||
|
|
@ -198,7 +201,7 @@ AGPL-3.0. See [LICENSE](LICENSE) and [NOTICE.md](NOTICE.md) for details.
|
|||
|
||||
## 🙏 Special Thanks
|
||||
|
||||
Special thanks to **crazyaphro** for Q/A, **M3d4r** for editing the Wiki, and **Nivelle** for early feedback.
|
||||
Special thanks to **crazyaphro** and **Nivelle** for Q/A, **M3d4r** for editing the Wiki, and .
|
||||
|
||||
---
|
||||
|
||||
|
|
|
|||
|
|
@ -190,9 +190,17 @@
|
|||
|
||||
socket.on("characterList", (msg: Sockets.CharacterList.Response) => {
|
||||
characters = msg.characterList || []
|
||||
// If we're in the wizard and just got characters, advance if needed
|
||||
if (showWizard && wizardStep === 2 && characters.length > 0) {
|
||||
nextWizardStep()
|
||||
}
|
||||
})
|
||||
socket.on("personaList", (msg: Sockets.PersonaList.Response) => {
|
||||
personas = msg.personaList || []
|
||||
// If we're in the wizard and just got personas, advance if needed
|
||||
if (showWizard && wizardStep === 3 && personas.length > 0) {
|
||||
nextWizardStep()
|
||||
}
|
||||
})
|
||||
socket.on("chatsList", (msg: Sockets.ChatsList.Response) => {
|
||||
chats = msg.chatsList || []
|
||||
|
|
@ -218,10 +226,6 @@
|
|||
|
||||
socket.on("ollamaConnectModel", (message: any) => {
|
||||
if (message.success) {
|
||||
toaster.success({
|
||||
title: "Model Connected",
|
||||
description: "Successfully connected to the Ollama model"
|
||||
})
|
||||
nextWizardStep()
|
||||
} else {
|
||||
toaster.error({
|
||||
|
|
@ -234,14 +238,6 @@
|
|||
// Handle successful connection creation (fallback for manual setup)
|
||||
socket.on("createConnection", (res: any) => {
|
||||
if (res.connection) {
|
||||
// Auto-set as active connection
|
||||
socket.emit("setUserActiveConnection", {
|
||||
id: res.connection.id
|
||||
})
|
||||
toaster.success({
|
||||
title: "Connection Created",
|
||||
description: `Successfully connected to ${res.connection.name}`
|
||||
})
|
||||
nextWizardStep()
|
||||
}
|
||||
})
|
||||
|
|
@ -251,9 +247,6 @@
|
|||
if (res.character) {
|
||||
// Refresh character list to update hasCharacter
|
||||
socket.emit("characterList", {})
|
||||
if (showWizard) {
|
||||
nextWizardStep()
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
|
|
@ -262,9 +255,6 @@
|
|||
if (res.persona) {
|
||||
// Refresh persona list to update hasPersona
|
||||
socket.emit("personaList", {})
|
||||
if (showWizard) {
|
||||
nextWizardStep()
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
|
|
@ -419,6 +409,15 @@
|
|||
>
|
||||
<Icons.User size={16} /> Manage Personas
|
||||
</button>
|
||||
<button
|
||||
class="btn preset-tonal-surface btn-sm"
|
||||
onclick={() => {
|
||||
panelsCtx.digest.tutorial = true
|
||||
openPanel("chats")
|
||||
}}
|
||||
>
|
||||
<Icons.MessageSquare size={16} /> Manage Chats
|
||||
</button>
|
||||
</div>
|
||||
</details>
|
||||
{:else}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue