Easy to use, blazing fast and secure.
Originally open source by IntegrityNet Solutions and Services
For Documentation:
Social Media:
- AB Testing System
- API Configuration
- Approval System
- Authentication and Permissions
- Clean and sharp UI
- Dashboard customization
- Data Access API (dAPI)
- Database schema migration
- Error Handling
- Export to Excel
- Form and List customization
- Image Cropping
- IP address and port configuration
- Log feature that keeps track of many things in your app
- Metric System
- Multilingual translation
- MySQL Database Support
- Offers FREE hosting for your app while you are developing by using a single command: uadmin publish
- Pretty good security features (SSL, 2-Factor Authentication, Password Reset, Hash Salt, Database Encryption)
- Public access to media
- Self relation of foreign key/many2many
- Sending an email from your app by establishing an email configuration
- System settings which can be used system wide to keep application settings
- Tag support for fields
- Translation files preloading
- Validation for user input
- Webcam support on image and file fields
| Operating System | Architectures | Notes |
|---|---|---|
| FreeBSD 10.3 or later | amd64, 386 | Debian GNU/kFreeBSD not supported |
| Linux 2.6.23 or later with glibc | amd64, 386, arm, arm64, s390x, ppc64le | CentOS/RHEL 5.x not supported. Install from source for other libc. |
| macOS 10.10 or later | amd64 | Use the clang or gcc† that comes with Xcode‡ for cgo support. |
| Windows 7, Server 2008 R2 or later | amd64, 386 | Use MinGW gcc†. No need for cygwin or msys. |
- † A C compiler is required only if you plan to use cgo.
- ‡ You only need to install the command line tools for Xcode. If you have already installed Xcode 4.3+, you can install it from the Components tab of the Downloads preferences panel.
- RAM - minimum 256MB
- CPU - minimum 2GHz
- Go Version 1.15 or later
$ go get -u github.com/uadmin/uadmin/...To test if your installation is fine, run the uadmin command line:
$ uadmin
Usage: uadmin COMMAND [--src]
This tools helps you prepare a folder for a new project or update static files and templates
Commands:
prepare Generates folders and prepares static and templates
version Shows the version of uAdmin
Arguments:
--src If you want to copy static files and templates from src folder
Get full documentation online:
https://uadmin-docs.readthedocs.io/en/latest/Let's build your first app which is a Todo list. First, we will create a folder for your project and prepare it.
$ mkdir -p ~/go/src/github.com/your_name/todo
$ cd ~/go/src/github.com/your_name/todo
$ uadmin prepare
[ OK ] Created: /Users/abdullah/go/src/github.com/twistedhardware/test/models
[ OK ] Created: /Users/abdullah/go/src/github.com/twistedhardware/test/api
[ OK ] Created: /Users/abdullah/go/src/github.com/twistedhardware/test/views
[ OK ] Created: /Users/abdullah/go/src/github.com/twistedhardware/test/media
[ INFO ] Copying static/templates from: /Users/abdullah/go/pkg/mod/github.com/uadmin/[email protected]
[ OK ] Created: /Users/abdullah/go/src/github.com/twistedhardware/test/static
[ OK ] Created: /Users/abdullah/go/src/github.com/twistedhardware/test/templatesNow use your code editor to create main.go and put this code inside it.
package main
import (
"github.com/uadmin/uadmin"
"time"
)
type Todo struct {
uadmin.Model
Name string
Description string `uadmin:"html"`
TargetDate time.Time
Progress int `uadmin:"progress_bar"`
}
func main() {
uadmin.Register(Todo{})
uadmin.StartServer()
}Prepare modules
$ go mod init
go: creating new go.mod: module github.com/twistedhardware/test
go: to add module requirements and sums:
go mod tidy
$ go mod tidy
go: finding module for package github.com/uadmin/uadmin
go: found github.com/uadmin/uadmin in github.com/uadmin/uadmin v0.6.0Run your app (Linux, Apple macOS or Windows):
$ go build; ./todo
[ OK ] Initializing DB: [14/14]
[ OK ] Initializing Languages: [185/185]
[ INFO ] Auto generated admin user. Username:admin, Password:admin.
[ OK ] Synching System Settings: [49/49]
[ OK ] Server Started: http://0.0.0.0:8080
___ __ _
__ __/ | ____/ /___ ___ (_)___
/ / / / /| |/ __ / __ '__ \/ / __ \
/ /_/ / ___ / /_/ / / / / / / / / / /
\__,_/_/ |_\__,_/_/ /_/ /_/_/_/ /_/In Windows:
> go build && todo.exe
[ OK ] Initializing DB: [14/14]
[ OK ] Initializing Languages: [185/185]
[ INFO ] Auto generated admin user. Username:admin, Password:admin.
[ OK ] Synching System Settings: [49/49]
[ OK ] Server Started: http://0.0.0.0:8080
___ __ _
__ __/ | ____/ /___ ___ (_)___
/ / / / /| |/ __ / __ __ \/ / __ \
/ /_/ / ___ / /_/ / / / / / / / / / /
\__,_/_/ |_\__,_/_/ /_/ /_/_/_/ /_/func (m *Model) Save() {
// business logic
uadmin.Save(m)
}func (m Model) Validate() (ret map[string]string) {
ret = map[string]string{}
if m.Name != "test" {
ret["Name"] = "Error name not found"
}
return
}

