Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
57 commits
Select commit Hold shift + click to select a range
71e7fbd
basic gorm setup and automigrate
JoYBoY1210 Jan 10, 2026
452a78b
completed apiToken.go
JoYBoY1210 Jan 11, 2026
e12ae05
refactored app.go
JoYBoY1210 Jan 11, 2026
37694b0
auditlogs.go refactored
JoYBoY1210 Jan 11, 2026
f2efa49
CHANGELOG
07CalC Jan 12, 2026
268ee72
chore: update discord link
07CalC Jan 13, 2026
225aace
fix: bad sql query in
07CalC Jan 13, 2026
246c616
Merge pull request #107 from corecollectives/fix/bad-sql-query
07CalC Jan 13, 2026
c7203d8
rewritten backup cron and deployment files
JoYBoY1210 Jan 13, 2026
bd396dd
rewrote domain file
JoYBoY1210 Jan 13, 2026
7e3da06
gormified envVariable table
JoYBoY1210 Jan 13, 2026
ccaee7b
gormified githubApps
JoYBoY1210 Jan 13, 2026
cc1dfa5
feat: discord release message
07CalC Jan 13, 2026
0cf39fa
chore: remove docker gh action, fix: \n after git clone log
07CalC Jan 13, 2026
4e5562b
gormified gitProvider logs and notification files
JoYBoY1210 Jan 14, 2026
b275bf7
gormified project projectMembers registries serviceTemplate files
JoYBoY1210 Jan 14, 2026
07f26a4
gormified session systemSettings updateLog user volume
JoYBoY1210 Jan 14, 2026
4a6ae98
fixed errors and removed old sql dependencies
JoYBoY1210 Jan 15, 2026
75f5b50
gormified everythnig,old code successfully archived
JoYBoY1210 Jan 15, 2026
6a25e3f
fixed system setting table
JoYBoY1210 Jan 15, 2026
abba0d9
fix: gorm existing table issues
07CalC Jan 15, 2026
179fbd1
merge main
07CalC Jan 15, 2026
5ae7bcb
fix: gorm logging
07CalC Jan 15, 2026
7389e27
Add dashboard build step to install-local script
HGRgamer Jan 17, 2026
7d8323e
Fix documentation link in readme
HGRgamer Jan 17, 2026
41d7f31
Merge pull request #111 from corecollectives/fix-readme
07CalC Jan 17, 2026
2048e63
Fixed the broken docs link in Readme.md
bitflipper19 Jan 17, 2026
5130f1d
Merge pull request #113 from bitflipper19/main
JoYBoY1210 Jan 17, 2026
b8fa029
Fix: Handle empty wildcard domain correctly
HGRgamer Jan 17, 2026
5862293
Switched to yaml parser for traefik config
HGRgamer Jan 17, 2026
7439cb1
Merge pull request #114 from corecollectives/fix/empty-wildcard-domain
07CalC Jan 18, 2026
1537712
Merge pull request #110 from corecollectives/gorm
07CalC Jan 18, 2026
4f25498
test: db tests
07CalC Jan 18, 2026
136f7d4
Merge pull request #116 from corecollectives/test
07CalC Jan 18, 2026
c6c0382
chore: tests CI
07CalC Jan 18, 2026
440e8e1
chore: test path
07CalC Jan 18, 2026
fe7f02d
chore: frontend build check
07CalC Jan 18, 2026
8a02843
chore: test badge in readme
07CalC Jan 18, 2026
e4f716c
Merge pull request #115 from corecollectives/traefik-yaml-parser
07CalC Jan 18, 2026
5f3ab79
www: added sitemap
07CalC Jan 18, 2026
b032c2b
added stopDeployment handler
JoYBoY1210 Jan 19, 2026
c26de86
added getDeploymentStatus function
JoYBoY1210 Jan 19, 2026
17834a1
added a way to stop ongoing deployments
JoYBoY1210 Jan 19, 2026
c54a908
chore: remove www (moving to submodule)
07CalC Jan 19, 2026
09a543a
chore: add www as submodule
07CalC Jan 19, 2026
743ccc5
chore: remove bin/
07CalC Jan 19, 2026
73fc743
chore: remove www directory
07CalC Jan 19, 2026
cde1708
chore: add www as submodule
07CalC Jan 19, 2026
a755549
feat: stop deployment
07CalC Jan 20, 2026
8568a09
fix: remove root bun.lock
07CalC Jan 20, 2026
9785aa3
fix: showing dep failed when stopped
07CalC Jan 20, 2026
ed6c263
Merge pull request #117 from trymist/stopDep
07CalC Jan 20, 2026
5c059bd
fix: whitespace wildcard domain
07CalC Jan 20, 2026
652a24e
fix: new org name in install.sh
07CalC Jan 20, 2026
f27c9cd
fix: update env issue
07CalC Jan 20, 2026
6d9887e
fix: add audit logs for deployment stop
07CalC Jan 20, 2026
8949391
v1.0.4
JoYBoY1210 Jan 20, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 6 additions & 10 deletions .github/workflows/pr-build-check.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,15 @@
name: PR Build Check
name: Frontend build check

on:
pull_request:
paths:
- "dash/**"

push:
branches:
- main
paths:
- "dash/**"

jobs:
build:
Expand All @@ -23,12 +28,3 @@ jobs:
- name: Build frontend
working-directory: dash
run: bun run build

- name: Setup Go
uses: actions/setup-go@v5
with:
go-version: '1.22'

- name: Build server
working-directory: server
run: go build ./...
30 changes: 30 additions & 0 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: Tests

on:
pull_request:
paths:
- "test/**"
- "server/**"

push:
branches:
- main
paths:
- "test/**"
- "server/**"

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- name: Setup Go
uses: actions/setup-go@v5
with:
go-version: '1.22'

- name: Run all tests
working-directory: test
run: go test -v ./...
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "www"]
path = www
url = https://github.com/trymist/www
47 changes: 47 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# Changelog
All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

## [1.0.3] - 2026-01-12

### Added
- deployment cleanup on startup

### Fixed
- infinite logging when file not found

### Changed
- logs UI
- replace raw git commands with go-git
- replace raw docker commands with moby

---

## [1.0.2] - 2025-12-31

### Added
- individual docker container statistics
- owner's email as let's encrypt email on signup

---

## [1.0.1] - 2025-12-27

### Added
- Versioning in dashboard
- `git_clone_url` field for apps

### Fixed
- update script

---

## [1.0.0] - 2025-12-24

### Added
- Initial release
- Core paas functionalities
- web dashboard
- service deployment via docker
7 changes: 4 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
A lightweight, self-hostable Platform-as-a-Service built for developers. Deploy Docker applications from Git with automatic builds, custom domains, SSL certificates, and real-time monitoring.

[![PR Build Check](https://github.com/corecollectives/Mist/actions/workflows/pr-build-check.yml/badge.svg)](https://github.com/corecollectives/Mist/actions/workflows/pr-build-check.yml)
[![Tests](https://github.com/corecollectives/Mist/actions/workflows/tests.yml/badge.svg)](https://github.com/corecollectives/Mist/actions/workflows/tests.yml)

## Quick Start

Expand Down Expand Up @@ -31,7 +32,7 @@ After installation, access the dashboard at `http://your-server-ip:8080`

## Documentation

Full documentation is available at [trymist.cloud](https://trymist.cloud/guide)
Full documentation is available at [trymist.cloud](https://trymist.cloud/guide/getting-started.html)

## Development

Expand All @@ -54,8 +55,8 @@ fyrer
## Community

- [GitHub](https://github.com/corecollectives/mist)
- [Discord](https://discord.gg/kxK8XHR6)
- [Documentation](https://trymist.cloud/guide)
- [Discord](https://discord.gg/hr6TCQDDkj)
- [Documentation](https://trymist.cloud/guide/getting-started.html)

## License

Expand Down
Binary file removed bin/mist-cli
Binary file not shown.
Binary file removed bin/server
Binary file not shown.
15 changes: 3 additions & 12 deletions cli/cmd/db.go
Original file line number Diff line number Diff line change
@@ -1,36 +1,27 @@
package cmd

import (
"database/sql"
"fmt"
"os"

"github.com/corecollectives/mist/models"
_ "github.com/mattn/go-sqlite3"
"gorm.io/driver/sqlite"
"gorm.io/gorm"
)

const dbPath = "/var/lib/mist/mist.db"

// initDB initializes the database connection for CLI
// It expects the database file to already exist
func initDB() error {
// Check if database file exists
if _, err := os.Stat(dbPath); os.IsNotExist(err) {
return fmt.Errorf("database file not found at %s. Please ensure Mist is installed and running", dbPath)
}

// Open database connection
db, err := sql.Open("sqlite3", dbPath)
db, err := gorm.Open(sqlite.Open(dbPath), &gorm.Config{})
if err != nil {
return fmt.Errorf("failed to open database: %v", err)
}

// Test connection
if err := db.Ping(); err != nil {
return fmt.Errorf("failed to connect to database: %v", err)
}

// Set the database instance for models
models.SetDB(db)
return nil
}
1 change: 0 additions & 1 deletion cli/cmd/user.go
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,6 @@ func changePassword(args []string) {
}

func listUsers(args []string) {
// Initialize database
if err := initDB(); err != nil {
fmt.Printf("Error: %v\n", err)
os.Exit(1)
Expand Down
9 changes: 8 additions & 1 deletion cli/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,23 @@ go 1.25.1

require (
github.com/corecollectives/mist v0.0.0
github.com/mattn/go-sqlite3 v1.14.33
golang.org/x/crypto v0.43.0
golang.org/x/term v0.36.0
gorm.io/driver/sqlite v1.6.0
gorm.io/gorm v1.31.1
)

require (
github.com/golang-jwt/jwt v3.2.2+incompatible // indirect
github.com/jinzhu/inflection v1.0.0 // indirect
github.com/jinzhu/now v1.1.5 // indirect
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.19 // indirect
github.com/mattn/go-sqlite3 v1.14.32 // indirect
github.com/rs/zerolog v1.34.0 // indirect
golang.org/x/sys v0.37.0 // indirect
golang.org/x/text v0.33.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
)

replace github.com/corecollectives/mist => ../server
20 changes: 18 additions & 2 deletions cli/go.sum
Original file line number Diff line number Diff line change
@@ -1,12 +1,18 @@
github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc=
github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA=
github.com/golang-jwt/jwt v3.2.2+incompatible h1:IfV12K8xAKAnZqdXVzCZ+TOjboZ2keLg81eXfW3O+oY=
github.com/golang-jwt/jwt v3.2.2+incompatible/go.mod h1:8pz2t5EyA70fFQQSrl6XZXzqecmYZeUEB8OUGHkxJ+I=
github.com/jinzhu/inflection v1.0.0 h1:K317FqzuhWc8YvSVlFMCCUb36O/S9MCKRDI7QkRKD/E=
github.com/jinzhu/inflection v1.0.0/go.mod h1:h+uFLlag+Qp1Va5pdKtLDYj+kHp5pxUVkryuEj+Srlc=
github.com/jinzhu/now v1.1.5 h1:/o9tlHleP7gOFmsnYNz3RGnqzefHA47wQpKrrdTIwXQ=
github.com/jinzhu/now v1.1.5/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8=
github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA=
github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg=
github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM=
github.com/mattn/go-isatty v0.0.19 h1:JITubQf0MOLdlGRuRq+jtsDlekdYPia9ZFsB8h/APPA=
github.com/mattn/go-isatty v0.0.19/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
github.com/mattn/go-sqlite3 v1.14.32 h1:JD12Ag3oLy1zQA+BNn74xRgaBbdhbNIDYvQUEuuErjs=
github.com/mattn/go-sqlite3 v1.14.32/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y=
github.com/mattn/go-sqlite3 v1.14.33 h1:A5blZ5ulQo2AtayQ9/limgHEkFreKj1Dv226a1K73s0=
github.com/mattn/go-sqlite3 v1.14.33/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxUwlHK0RXw+Y=
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/rs/xid v1.6.0/go.mod h1:7XoLgs4eV+QndskICGsho+ADou8ySMSjJKDIan90Nz0=
github.com/rs/zerolog v1.34.0 h1:k43nTLIwcTVQAncfCw4KZ2VY6ukYoZaBPNOE8txlOeY=
Expand All @@ -20,3 +26,13 @@ golang.org/x/sys v0.37.0 h1:fdNQudmxPjkdUTPnLn5mdQv7Zwvbvpaxqs831goi9kQ=
golang.org/x/sys v0.37.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
golang.org/x/term v0.36.0 h1:zMPR+aF8gfksFprF/Nc/rd1wRS1EI6nDBGyWAvDzx2Q=
golang.org/x/term v0.36.0/go.mod h1:Qu394IJq6V6dCBRgwqshf3mPF85AqzYEzofzRdZkWss=
golang.org/x/text v0.33.0 h1:B3njUFyqtHDUI5jMn1YIr5B0IE2U0qck04r6d4KPAxE=
golang.org/x/text v0.33.0/go.mod h1:LuMebE6+rBincTi9+xWTY8TztLzKHc/9C1uBCG27+q8=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gorm.io/driver/sqlite v1.6.0 h1:WHRRrIiulaPiPFmDcod6prc4l2VGVWHz80KspNsxSfQ=
gorm.io/driver/sqlite v1.6.0/go.mod h1:AO9V1qIQddBESngQUKWL9yoH93HIeA1X6V633rBwyT8=
gorm.io/gorm v1.31.1 h1:7CA8FTFz/gRfgqgpeKIBcervUn3xSyPUmr6B2WXJ7kg=
gorm.io/gorm v1.31.1/go.mod h1:XyQVbO2k6YkOis7C2437jSit3SsDK72s7n7rsSHd+Gs=
4 changes: 2 additions & 2 deletions dash/src/components/applications/environment-variables.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -334,7 +334,7 @@ export const EnvironmentVariables = ({ appId }: EnvironmentVariablesProps) => {
</p>
) : (
<div className="space-y-2">
{envVars.map((env) => (
{envVars.map((env) => env ? (
<div key={env.id} className="p-4 border rounded-lg bg-card">
{editingId === env.id ? (
<div className="space-y-4">
Expand Down Expand Up @@ -394,7 +394,7 @@ export const EnvironmentVariables = ({ appId }: EnvironmentVariablesProps) => {
</div>
)}
</div>
))}
) : null)}
</div>
)}
</CardContent>
Expand Down
Loading
Loading