/framework

An out-of-the-box artisan API web-framework written in go.

Primary LanguageGoMIT LicenseMIT

GitHub release GitHub last commit Go Report Card GitHub top language Inspired by Laravel GitHub

About Totoval

Note: This repository contains the core code of the Totoval framework. If you want to build an application using Totoval, visit the main Totoval repository.

Totoval is an API web framework that helps Golang engineers build a performance-boiled project quickly, easily, and securely. It is more like a scaffolding, respecting Golang's programming philosophy, supported by a number of highly acclaimed, high-performance core components, as well as many easy-to-use components to quickly adapt to more business scenarios. We also believe that development must be an enjoyable and creative experience. Totoval frees developers from the painful coding process. Do less, think more.

Docs

Refer to https://totoval.com

Structure

v1.x.x-structure

Roadmap

  • Env Configuration
  • Groupable Router
  • Request Middleware
  • Request Validator
  • Database Migration
  • Model Validator
  • Model Helper - such as Pagination
  • BigInt,BigFloat Support
  • Orm: Mysql
  • User Token JWT Support
  • Random Code Generate and Verification
  • Random String Helper
  • Locale Middleware
  • Gin Validator Upgrade to v9
  • Password Encryption
  • Validation Error Multi-Language Support
  • Request Logger Middleware
  • Infinity User Affiliation System
  • User Email Validation via Notification
  • Views Support
  • Language Package
  • Cache: Memory
  • Cache: Redis
  • Queue, Worker nsq
  • Event, Listener
  • Custom Artisan Command Line
  • Task Scheduling
  • Logo
  • Http Request Package biu
  • Error Notifier sentry
  • User Authorization
  • Multi Ports Serving
  • Model Mutator Getter/Setter
  • Websocket Support
  • Monitor WIP
  • GRPC Serving PLANNED
  • Database Seeder PLANNED
  • More Unit Test PLANNED
  • Website && Document WIP
  • File Storage PLANNED
  • CI

Thanks

  • gin
  • gorm
  • validator.v9
  • viper
  • big
  • jwt
  • i18n
  • urfave/cli
  • fatih/color
  • golang/protobuf
  • nsqio/go-nsq
  • robfig/cron
  • ztrue/tracerr
  • go-redis/redis
  • getsentry/raven-go
  • iancoleman/strcase
  • gorilla/websocket

License

This project is licensed under the MIT license.

Contact

If you have any issues or feature requests, please contact us. PR is welcomed.